Updates from: 10/05/2022 02:46:13
Service Microsoft Docs article Related commit history on GitHub Change details
platform Add Authentication https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/bots/how-to/authentication/add-authentication.md
This manifest contains information needed by Teams to connect with the bot:
"manifestVersion": "1.5", "version": "1.0.0", "id": "",
- "packageName": "com.teams.auth.bot",
"developer": { "name": "TeamsBotAuth", "websiteUrl": "https://www.microsoft.com",
platform Submission Checklist https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/concepts/deploy-and-publish/appsource/prepare/submission-checklist.md
You've designed, built, and tested your Microsoft Teams app. Now you're ready to
See the following video to learn more about publishing your app to the Microsoft Teams app store: <br>
-> [!VIDEO <https://www.microsoft.com/videoplayer/embed/RE4WG3l>]
+> [!VIDEO https://www.microsoft.com/videoplayer/embed/RE4WG3l]
<br> Before you submit your app to [Partner Center](/office/dev/store/use-partner-center-to-submit-to-appsource), ensure you've done the following.
platform Universal Actions For Search Based Message Extensions https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/messaging-extensions/how-to/search-commands/universal-actions-for-search-based-message-extensions.md
Example of a JSON schema with `team` and `groupchat` values:
"manifestVersion": "1.11", "version": "1.0.0", "id": "%MICROSOFT-APP-ID%",
- "packageName": "com.example.myapp",
"bots": [ { "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
platform Create Extensions https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/resources/messaging-extension-v3/create-extensions.md
Action-based message extensions allow your users to trigger actions in external
![Example of message extension card](~/assets/images/compose-extensions/ceexample.png)
-The following sections describe how to do this:
- [!include[Common content for creating extensions](~/includes/messaging-extensions/messaging-extensions-common.md)] ## Action type message extensions
-To initiate actions from a message extension, set the `type` parameter to `action`. Below is an example of a manifest with a search and a create command. A single message extension can have up to 10 different commands. This can include both multiple search and multiple action-based commands.
+To initiate actions from a message extension, set the `type` parameter to `action`. Below is an example of a manifest with a search and a create command. A single message extension can have up to 10 different commands and include multiple search and action-based commands.
> [!NOTE] >`justInTimeInstall` functions when you upload an app to the app catalog but fails when you sideload an app.
To initiate actions from a message extension, set the `type` parameter to `actio
"manifestVersion": "1.5", "version": "1.0", "id": "57a3c29f-1fc5-4d97-a142-35bb662b7b23",
- "packageName": "com.microsoft.teams.samples.Todo",
"developer": { "name": "John Developer", "websiteUrl": "http://todobotservice.azurewebsites.net/",
To initiate actions from a message extension, set the `type` parameter to `actio
### Initiate actions from messages
-In addition to initiating actions from the compose message area, you can also use your message extension to initiate an action from a message. This will allow you to send the message contents to your bot for processing and optionally reply to that message with a response using the method, which is described in [Responding to submit](#responding-to-submit). The response will be inserted as a reply to the message that your users can edit before submitting. Your users can access message extension from the overflow `...` menu and then selecting `Take action` as in the following image:
+You can initiate actions from the compose message area and also use your message extension to initiate an action from a message, which allows you to send the message contents to your bot for processing. Optionally, you can reply to that message with a response using the method described in [Responding to submit](#responding-to-submit). The response will be inserted as a reply to the message that your users can edit before submitting. Your users can access message extension from the overflow `...` menu and then selecting `Take action` as in the following image:
![Example of initiating an action from a message](~/assets/images/compose-extensions/messageextensions_messageaction.png)
Just like in the adaptive card flow your service sends a `fetchTask` event and r
### Request to install your conversational bot
-If your app contains a conversation bot, ensure it's installed in the conversation before loading your task module. This can be useful in situations where you need to get additional context for your task module. For example, you may need to fetch the roster to populate a people picker control, or the list of channels in a team.
+If your app contains a conversation bot, ensure it's installed in the conversation before loading your task module to get more context for your task module. For example, you may need to fetch the roster to populate a people picker control, or the list of channels in a team.
To facilitate this flow, when your message extension first receives the `composeExtension/fetchTask` invoke check to see if your bot is installed in the current context. You can get this, by attempting the get roster call. For example, if your bot isn't installed, you return an Adaptive Card with an action that requests the user to install your bot. The user needs to have permission to install apps in that location. If they canΓÇÖt install, the message prompts to contact the administrator.
These are the different expected responses to a `submitAction`.
### Task Module response
-This is used when your extension needs to chain dialogs together to get more information. The response is exactly the same as `fetchTask` mentioned earlier.
+Task Module response is used when your extension needs to chain dialogs together to get more information. The response is exactly the same as `fetchTask` mentioned earlier.
### Compose extension auth/config response
-This is used when your extension needs to either authenticate or configure to continue. For more information, see [authentication section](~/resources/messaging-extension-v3/search-extensions.md#authentication) in the search section.
+Compose extension auth/config response is used when your extension needs to either authenticate or configure to continue. For more information, see [authentication section](~/resources/messaging-extension-v3/search-extensions.md#authentication) in the search section.
### Compose extension result response
-This is used to insert a card into the compose box as a result of the command. It's the same response that's used in the search command, but it's limited to one card or one result in the array.
+Compose extension result response is used to insert a card into the compose box as a result of the command. It's the same response that's used in the search command, but it's limited to one card or one result in the array.
```json {
To enable this flow your task module should respond as in the example below, whi
> [!NOTE] > The `activityPreview` must contain a `message` activity with exactly 1 adaptive card attachment. - ```json { "composeExtension": {
platform Search Extensions https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/resources/messaging-extension-v3/search-extensions.md
For search based message extension set the `type` parameter to `query`. Below is
"manifestVersion": "1.5", "version": "1.0", "id": "57a3c29f-1fc5-4d97-a142-35bb662b7b23",
- "packageName": "com.microsoft.teams.samples.bing",
"developer": { "name": "John Developer", "websiteUrl": "http://bingbotservice.azurewebsites.net/",
platform Manifest Schema Dev Preview https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/resources/schema/manifest-schema-dev-preview.md
The Microsoft Teams manifest describes how the app integrates into the Microsoft
"manifestVersion": "devPreview", "version": "1.0.0", "id": "%MICROSOFT-APP-ID%",
- "packageName": "com.example.myapp",
"devicePermissions": [ "geolocation", "media"
This version string must follow the [semver](http://semver.org/) standard (MAJOR
The unique Microsoft-generated identifier for this app. If you've registered a bot via the Microsoft Bot Framework, or your tab's web app already signs in with Microsoft, then you should already have an ID and must enter it here. Otherwise, you must generate a new ID at the Microsoft Application Registration Portal ([My Applications](https://apps.dev.microsoft.com)), enter it here, and then reuse it when you [add a bot](~/bots/how-to/create-a-bot-for-teams.md).
-## packageName
-
-**Required** &ndash; String
-
-A unique identifier for this app in reverse domain notation; for example, com.example.myapp.
- ## developer Required:
platform Manifest Schema https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/resources/schema/manifest-schema.md
The following schema sample shows all extensibility options:
"manifestVersion": "1.14", "version": "1.0.0", "id": "%MICROSOFT-APP-ID%",
- "packageName": "com.example.myapp",
"localizationInfo": { "defaultLanguageTag": "en-us", "additionalLanguages": [
Ensure that your description describes your experience and helps potential custo
|`short`|80 characters|✔️|A short description of your app experience, used when space is limited.| |`full`|4000 characters|✔️|The full description of your app.|
-## packageName
-
-**Optional**ΓÇöstring
-
-A unique identifier for the app in reverse domain notation; for example, com.example.myapp. Maximum length: 64 characters.
- ## localizationInfo **Optional**ΓÇöobject
To create a Teams app manifest file:
<br> > [!NOTE]
-> The manifest example content shown here is only for a tab app. It uses example values for subdomain URI and package name. For more information, see [sample manifest schema](#sample-full-manifest).
+> The manifest example content shown here is only for a tab app. It uses example values for subdomain URI. For more information, see [sample manifest schema](#sample-full-manifest).
```json {
To create a Teams app manifest file:
"manifestVersion": "1.12", "version": "1.0.0", "id": "{new GUID for this Teams app - not the Azure AD App ID}",
- "packageName": "com.contoso.teamsauthsso",
"developer": { "name": "Microsoft", "websiteUrl": "https://www.microsoft.com",
platform App With Collaboration Controls https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/samples/app-with-collaboration-controls.md
Collaboration controls are designed for [model-driven applications](/power-apps/maker/model-driven-apps/model-driven-app-overview). The following section covers how to create a model-driven app. > [!NOTE]
-> Currently Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
+> Currently, Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
## Create a model-driven application
Collaboration controls are designed for [model-driven applications](/power-apps/
1. Select **New solution**, so that you can provide a home for all your future customizations.
- :::image type="content" source="../assets/images/collaboration-control/new-solution.png" alt-text="The screenshot is an example that shows the new solution.":::
+ :::image type="content" source="../assets/images/collaboration-control/new-solution.png" alt-text="Screenshot is an example that shows the new solution, which provides a home for all your future customization.":::
-1. Provide the name and publisher of your new solution, this solution is going to hold your custom Collaboration Manager.
+1. Provide the name and publisher of your new solution, this solution is going to hold your Custom Collaboration Manager.
- :::image type="content" source="../assets/images/collaboration-control/collaboration-manager.png" alt-text="The screenshot is an example that shows the Collaboration manager.":::
+ :::image type="content" source="../assets/images/collaboration-control/collaboration-manager.png" alt-text="Screenshot is an example that provides publisher details of your new solution.":::
1. Select **Create**
Collaboration controls are designed for [model-driven applications](/power-apps/
1. Before creating your app, create a home for your data. select **New** > **Table** to get started.
- :::image type="content" source="../assets/images/collaboration-control/create-table.png" alt-text="The screenshot describes how to create a new table.":::
+ :::image type="content" source="../assets/images/collaboration-control/create-table.png" alt-text="Screenshot describes how to create a new table.":::
1. Give your table a name. Under **Advanced options**, select **Creating a new activity**.
- :::image type="content" source="../assets/images/collaboration-control/new-activity.png" alt-text="The screenshot describes how to create new activity.":::
+ :::image type="content" source="../assets/images/collaboration-control/new-activity.png" alt-text="Screenshot describes how to create new activity.":::
1. Select **Save**.
-1. After you're done creating your table, you can customize it by adding extra
-columns, relationships, and more (Optional).
+1. After you've created your table, you can customize it by adding extra columns, relationships, and more (Optional).
1. Now you can create a new model-driven app by selecting **New** > **App** > **Model-driven app.**
- :::image type="content" source="../assets/images/collaboration-control/model-driven-app.png" alt-text="The screenshot is an example that shows the new model driven app.":::
+ :::image type="content" source="../assets/images/collaboration-control/model-driven-app.png" alt-text="Screenshot is an example that shows how to create a new model driven app.":::
-1. Choose new **Modern app designer (preview)** to open the new app.
+1. Select new **Modern app designer (preview)** to open the new app.
- :::image type="content" source="../assets/images/collaboration-control/model-driven-app-blank.png" alt-text="The screenshot is an example that shows the new model driven app blank.":::
+ :::image type="content" source="../assets/images/collaboration-control/model-driven-app-blank.png" alt-text="Screenshot is an example that shows the new model driven app blank and you can select a creating experience.":::
1. Select **Create.** 1. Give your app a name and select **Create.**
- :::image type="content" source="../assets/images/collaboration-control/collaboration-manager-for-inspection.png" alt-text="The screenshot is an example that shows the Collaboration manager for inspection.":::
+ :::image type="content" source="../assets/images/collaboration-control/collaboration-manager-for-inspection.png" alt-text="Screenshot is an example that shows add the Collaboration manager for inspection and create a new model-driven app.":::
1. Select **Add page.** 1. Select **Table based view and form.**
- :::image type="content" source="../assets/images/collaboration-control/table-based.png" alt-text="The screenshot is an example that shows the table based view and form.":::
+ :::image type="content" source="../assets/images/collaboration-control/table-based.png" alt-text="Screenshot is an example that shows the table based view and form and you can select a page type.":::
1. Select **Next.** 1. Search and select the table you've created earlier.
- :::image type="content" source="../assets/images/collaboration-control/table-view-form-pages.png" alt-text="The screenshot is an example that shows the table view form pages.":::
+ :::image type="content" source="../assets/images/collaboration-control/table-view-form-pages.png" alt-text="Screenshot is an example that shows the table view form pages and can select the table that you've created.":::
1. Select **Add.**
Following are the steps to add Collaboration control capabilities such as Tasks,
1. Go to the Forms tab for your table.
- :::image type="content" source="../assets/images/collaboration-control/forms-tab.png" alt-text="The screenshot is an example that shows the forms tab for your table.":::
+ :::image type="content" source="../assets/images/collaboration-control/forms-tab.png" alt-text="Screenshot is an example that shows the forms tab for your table.":::
1. Select the Information form of form type **Main** to open it in the form designer. 1. Once you are in the form designer, press and drag in a **1-column tab** from the **Components** section.
- :::image type="content" source="../assets/images/collaboration-control/components.png" alt-text="The screenshot is an example that shows the components of power apps.":::
+ :::image type="content" source="../assets/images/collaboration-control/components.png" alt-text="Screenshot is an example that shows the components of power apps.":::
1. After selecting the tab, rename the tab to ΓÇ£TasksΓÇ¥ in the property pane. 1. Select the tab name to select the full section and select **Expand first component to full tab** in the Properties pane. This is required as the Collaboration controls are best viewed in full tab views.
- :::image type="content" source="../assets/images/collaboration-control/tasks-pane.png" alt-text=" The screenshot describes how to select first component to full tab.":::
+ :::image type="content" source="../assets/images/collaboration-control/tasks-pane.png" alt-text=" Screenshot describes how to select first component to full tab.":::
- :::image type="content" source="../assets/images/collaboration-control/expand-first-component.png" alt-text=" The screenshot describes how to expand first component to full tab.":::
+ :::image type="content" source="../assets/images/collaboration-control/expand-first-component.png" alt-text=" Screenshot describes how to expand first component to full tab.":::
1. Expand the Collaboration (Preview) category on the controls drawer and drag the Tasks (Preview) control onto the section in Tasks form.
- :::image type="content" source="../assets/images/collaboration-control/collab-preview.png" alt-text="Preview control onto the section in tasks form":::
+ :::image type="content" source="../assets/images/collaboration-control/collab-preview.png" alt-text="Screenshot describes how to preview control onto the section in tasks form.":::
3. Set the table to Activities & select Done.
- :::image type="content" source="../assets/images/collaboration-control/select-table-activities.png" alt-text="Select the table to activities":::
+ :::image type="content" source="../assets/images/collaboration-control/select-table-activities.png" alt-text="Screenshot shows how to select the table to activities.":::
5. Select ΓÇÿHide LabelΓÇÖ on the Properties.
- :::image type="content" source="../assets/images/collaboration-control/hide-label-properties.png" alt-text="Select hide label":::
+ :::image type="content" source="../assets/images/collaboration-control/hide-label-properties.png" alt-text="Screenshot shows how to select hide label.":::
-1. The Tasks control will now display.
+1. The Tasks control appears now.
- :::image type="content" source="../assets/images/collaboration-control/new-collab-control.png" alt-text="Tasks control display":::
+ :::image type="content" source="../assets/images/collaboration-control/new-collab-control.png" alt-text="Screenshot shows is an example of tasks control display.":::
-1. Repeat the Tasks steps to add Approvals, Files, Meetings and Notes controls to your app.
-1. Once all controls are added, you'll see the controls rendered below in Form Designer. If a control doesn't render in Form Designer, for example shows a blank form, run your app in Power Apps and the presence of a 'configure' page or an 'empty state' means the control was successfully added.
+1. Repeat the Tasks steps to add Approvals, Files, Meetings, and Notes controls to your app.
+1. After you add all the controls, you'll see the controls rendered below in Form Designer. If a control doesn't render in Form Designer, for example shows a blank form, run your app in Power Apps and the presence of a 'configure' page or an 'empty state' means the control was successfully added.
- :::image type="content" source="../assets/images/collaboration-control/new-collab-approval.png" alt-text="Controls form designer":::
+ :::image type="content" source="../assets/images/collaboration-control/new-collab-approval.png" alt-text="Screenshot shows Controls form designer are successfully added.":::
1. You can now run your power app in Power Apps by selecting it.
- :::image type="content" source="../assets/images/collaboration-control/collaboration-manager-for-inspections-power-apps.png" alt-text="Collaboration manager for inspections":::
+ :::image type="content" source="../assets/images/collaboration-control/collaboration-manager-for-inspections-power-apps.png" alt-text="Screenshot shows to run your power app by selecting Collaboration manager for inspections.":::
1. Create a new record by selecting **+ New** and then open the record.
- :::image type="content" source="../assets/images/collaboration-control/power-apps-open-the-record.png" alt-text="The screenshot is an example that shows the power apps that open the record.":::
+ :::image type="content" source="../assets/images/collaboration-control/power-apps-open-the-record.png" alt-text="Screenshot shows to create a new record.":::
1. Now you can see views for each tab that appear similar to the following image:
- :::image type="content" source="../assets/images/collaboration-control/tabs.png" alt-text="The screenshot is an example that shows the tasks.":::
+ :::image type="content" source="../assets/images/collaboration-control/tabs.png" alt-text="Screenshot is an example that shows the view for each tab.":::
> [!TIP] > The controls are only visible after a record is saved in the application. If the control tabs don't appear in your record, try to refresh your browser or republish the app from Power Apps.
The settings that you can apply are as follows:
|Drive ID|SharePoint files| > [!NOTE]
-> Settings are crtical to launch your app, so ensure that you follow the steps as suggested. If you have issues launching and saving the controls recheck the values.
+> Settings are critical to launch your app, so ensure that you follow the steps as suggested. If you have issues launching and saving the controls recheck the values.
You can get the Group ID by creating a new team or use an existing team in Microsoft Teams to host your application and create settings variables.
Use the following instructions to retrieve the Group ID of your Teams team for A
1. Select the ellipse **...** and select **Get link to team**.
- :::image type="content" source="../assets/images/collaboration-control/get-link.png" alt-text="The screenshot describes how to get the linked to the team.":::
+ :::image type="content" source="../assets/images/collaboration-control/get-link.png" alt-text="Screenshot describes how to get the linked to the team.":::
1. Copy the link and record the value of `groupId` from the URL. You'll use this value at a later stage while defining the settings of your solution.
Use the following instructions to retrieve the Retrieve the SharePoint Site ID a
1. **Site ID**: Using [Graph Explorer](https://developer.microsoft.com/graph/graph-explorer), sign in and give permissions to Directory.ReadWrite.All and User.ReadWrite.All
- :::image type="content" source="../assets/images/collaboration-control/graph-permissions.png" alt-text="The screenshot is an example that shows the Graph Explorer.":::
+ :::image type="content" source="../assets/images/collaboration-control/graph-permissions.png" alt-text="Screenshot is an example that shows the Graph Explorer.":::
1. Ensure that you replace hostname with your hostname and relative path to the site path and make a graph call to `https://graph.microsoft.com/v1.0/sites/{hostname}:/{relative-path-to-site}`. Following is an example: 1. If your Site URL = `https://myhostname.sharepoint.com/sites/MySiteName` 1. Hostname = `myhostname.sharepoint.com` 1. Relative path to site = `sites/MySiteName`
- :::image type="content" source="../assets/images/collaboration-control/graph-call.png" alt-text="The screenshot is an example that shows the Graph call.":::
+ :::image type="content" source="../assets/images/collaboration-control/graph-call.png" alt-text="Screenshot is an example that shows the Graph call.":::
Graph call would be, `https://graph.microsoft.com/v1.0/sites/myhostname.sharepoint.com:/sites/MySiteName`.
To create meetings with users outside of your organization such as customers and
To apply settings and explore the collaborative features of your app in Power Apps, open the application that you've created earlier. You would see a view page, where you can select the existing records or create new one. To begin with open or create a record.
-You would need to add the Settings IDs that you've saved earlier for your application
+You would need to add the Settings IDs that you've saved earlier for your application.
|Settings|Used by| |||
You would need to add the Settings IDs that you've saved earlier for your applic
1. Launch a control and you can see a window as following:
- :::image type="content" source="../assets/images/collaboration-control/launch-window.png" alt-text="The screenshot is an example that shows the control window.":::
+ :::image type="content" source="../assets/images/collaboration-control/launch-window.png" alt-text="Screenshot is an example that shows the control window.":::
1. Select **Configure** and go to the General tab to add the Group ID.
- :::image type="content" source="../assets/images/collaboration-control/groupid-general.png" alt-text="The screenshot describes how to add the Group ID in General tab.":::
+ :::image type="content" source="../assets/images/collaboration-control/groupid-general.png" alt-text="Screenshot describes how to add the Group ID in General tab.":::
1. Open Files tab to add Site ID and Drive ID.
- :::image type="content" source="../assets/images/collaboration-control/files-tab.png" alt-text="The screenshot describes how to add the site ID and drive ID in files tab.":::
+ :::image type="content" source="../assets/images/collaboration-control/files-tab.png" alt-text="Screenshot describes how to add the site ID and drive ID in files tab.":::
The Notes control doesn't require a setting value. Now you can create entities such as Tasks and Meetings in your application. If you're facing issues launching and saving the controls recheck the settings values.
Explore collaboration in the Tasks tab by selecting the Tasks tab, which opens a
1. To create a new task for the team, select **Add a task**. It opens a dialog where you can provide specifics about the task and assign it to the relevant people on the team and select Save.
- :::image type="content" source="../assets/images/collaboration-control/add-task.png" alt-text="The screenshot describes on how to add a task.":::
+ :::image type="content" source="../assets/images/collaboration-control/add-task.png" alt-text="Screenshot describes on how to add a task.":::
1. The saved task will appear in the tasks list. 1. As all the tasks are backed by Microsoft Planner. Users can use the Tasks app within Microsoft Teams to see all the tasks that are assigned. To get started, select ellipses **…** in Teams left pane. Search and select Tasks by Planner and To Do.
- :::image type="content" source="../assets/images/collaboration-control/tasks-planner.png" alt-text="The screenshot is an example of the Tasks by Planner and To Do.":::
+ :::image type="content" source="../assets/images/collaboration-control/tasks-planner.png" alt-text="Screenshot is an example of the Tasks by Planner and To Do.":::
1. After opening the Tasks by Planner and To Do app, users can see all the tasks that were created in your app within the **Assigned to me** section of the app. Users can also view the details of a task, add attachments, and mark them as complete.
Select **Meetings** tab in a record to schedule both internal and external meeti
To schedule an internal meeting, select the dropdown next to the **New meeting** button and then select **Internal meeting**. > [!NOTE] >
To schedule an internal meeting, select the dropdown next to the **New meeting**
Within the **New meeting** dialog, users can provide relevant information about the meeting and select **Save**. The meeting appears in the meetings list. To schedule an external meeting with the customer, select the dropdown next to the **New meeting** button and select **Customer Booking**. If the **Customer Booking** option isn't available in the **New Meeting** dropdown, confirm if the app is configured to Microsoft Bookings in the Settings and the user has the Bookings Administrator role. For more information, see [add staff to Bookings](/microsoft-365/bookings/add-staff?view=o365-worldwide&preserve-view=true). You can add additional booking types by adding additional services within your Bookings business. Users can see both Internal meetings and Customer Bookings on their meeting list. After the meeting is started, users can join by selecting the **Join** button, which opens the meeting directly in Microsoft Teams.
Following are the steps to add a shared calendar to your Outlook (optional) :
In the left Pane, under Shared Calendars you should now see an additional calendar with the person's name. ### Add files
-Open the **Files** tab in your application and select **Upload** to upload files from OneDrive for Business or from your computer. When a file is successfully uploaded, the main list view automatically refreshs to show the files in the list.
+Open the **Files** tab in your application and select **Upload** to upload files from OneDrive for Business or from your computer. When a file is successfully uploaded, the main list view automatically refreshes to show the files in the list.
### Approvals
Approvals allow users to request sign out from others when working in a record.
1. When there are no approval requests, users see the following screen.
- :::image type="content" source="../assets/images/collaboration-control/no-approvals.png" alt-text="The screenshot is an example that shows no approval requests.":::
+ :::image type="content" source="../assets/images/collaboration-control/no-approvals.png" alt-text="Screenshot is an example that shows no approval requests.":::
1. Select the **New approval request** to open the approval request form.
- :::image type="content" source="../assets/images/collaboration-control/approval-request-form.png" alt-text="The screenshot is an example that shows the new approval request form.":::
+ :::image type="content" source="../assets/images/collaboration-control/approval-request-form.png" alt-text="Screenshot is an example that shows the new approval request form.":::
1. In the Approval request form, fill the required fields and select **Send**,which creates a request and added to the list.
- :::image type="content" source="../assets/images/collaboration-control/approvals-list.png" alt-text="The screenshot is an example that shows the list of approvals.":::
+ :::image type="content" source="../assets/images/collaboration-control/approvals-list.png" alt-text="Screenshot is an example that shows the list of approvals.":::
1. Select the approval to view the details.
platform Collaboration Control Power Automate https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/samples/collaboration-control-power-automate.md
Power Automate can be used to automate workflows around your Collaboration Manag
Collaboration control connector enables developers to access Collaboration control APIs by triggers or actions in automated workflows in Microsoft Power Automate, Microsoft Power Apps, and Azure Logic apps. > [!NOTE]
-> Currently Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
+> Currently, Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
In this version, the connector enables makers to set up triggers:
In the [Azure portal](https://ms.portal.azure.com/#home) for Azure Active Direct
1. In the home page of Azure portal, select **Azure Active Directory**. In Azure Active Directory, select dropdown list for **Add** and select **App registration**.
- :::image type="content" source="../assets/images/collaboration-control/azure-active-directory-home-portal.png" alt-text="The screenshot is an example that shows how to add a new App Registration":::
+ :::image type="content" source="../assets/images/collaboration-control/azure-active-directory-home-portal.png" alt-text="Screenshot is an example that shows how to add a new App Registration.":::
- :::image type="content" source="../assets/images/collaboration-control/new-app-registration.png" alt-text="The screenshot is an example that shows how to add new app registration":::
+ :::image type="content" source="../assets/images/collaboration-control/new-app-registration.png" alt-text="Screenshot is an example that shows how to add new app registration.":::
1. In the app registration, set your application name and add the Web redirect URI to `https://global.consent.azure-apim.net/redirect`.
- :::image type="content" source="../assets/images/collaboration-control/register-an-application.png" alt-text="The screenshot is an example that shows how to register an application":::
+ :::image type="content" source="../assets/images/collaboration-control/register-an-application.png" alt-text="Screenshot is an example that shows how to register an application.":::
1. In the Implicit Grant and hybrid flows section, select both Access Tokens and ID tokens.
- :::image type="content" source="../assets/images/collaboration-control/authorisation-endpoint-tokens.png" alt-text="The screenshot is an example that shows the tokens and ID tokens":::
+ :::image type="content" source="../assets/images/collaboration-control/authorisation-endpoint-tokens.png" alt-text="Screenshot is an example that shows the tokens and ID tokens.":::
1. Select API Permission in the left pane and select **Add a permission**, and then search for **Dynamic CRM** permission.
- :::image type="content" source="../assets/images/collaboration-control/dynamic-crm.png" alt-text="The screenshot is an example that shows how to add a permission":::
+ :::image type="content" source="../assets/images/collaboration-control/dynamic-crm.png" alt-text="Screenshot is an example that shows how to add a permission.":::
1. Ensure to select **user_impersonation** in Permissions after selecting the Dynamics CRM.
- :::image type="content" source="../assets/images/collaboration-control/admin-consent-required.png" alt-text="The screenshot is an example that shows how to enable the checkbox user_impersonation":::
+ :::image type="content" source="../assets/images/collaboration-control/admin-consent-required.png" alt-text="Screenshot is an example that shows how to enable the checkbox user_impersonation.":::
1. In the Certificates & Secrets page, add a **New client secret** and save the value for later use while setting up the connector security.
- :::image type="content" source="../assets/images/collaboration-control/copy-new-secret-value.png" alt-text="The screenshot is an example that shows how to copy new secret value":::
+ :::image type="content" source="../assets/images/collaboration-control/copy-new-secret-value.png" alt-text="Screenshot is an example that shows how to copy new secret value.":::
1. In the application Overview page, copy the **Application (client) ID** and save it for later use while setting up the connector security.
- :::image type="content" source="../assets/images/collaboration-control/application-client-ID.png" alt-text="The screenshot is an example that shows how to save client ID":::
+ :::image type="content" source="../assets/images/collaboration-control/application-client-ID.png" alt-text="Screenshot is an example that shows how to save client ID":::
Now your Azure app is all set and you need to add it as a user application in your environment.
Now your Azure app is all set and you need to add it as a user application in yo
1. Open Power Apps portal, in the upper right corner select **settings** and open **Admin center**.
- :::image type="content" source="../assets/images/collaboration-control/power-apps-interface.png" alt-text="The screenshot is an example that shows the Power apps interface":::
+ :::image type="content" source="../assets/images/collaboration-control/power-apps-interface.png" alt-text="Screenshot is an example that shows the Power apps interface.":::
1. In the admin center, select **Environment** from the left pane and select your environment in the list that you want to add the connector app.
- :::image type="content" source="../assets/images/collaboration-control/power-platform-admin-center.png" alt-text="The screenshot is an example that shows how to add connector app":::
+ :::image type="content" source="../assets/images/collaboration-control/power-platform-admin-center.png" alt-text="Screenshot is an example that shows how to add connector app.":::
1. In the environment details page, select **Settings**.
- :::image type="content" source="../assets/images/collaboration-control/settings-environment.png" alt-text="The screenshot is an example that shows how to select settings":::
+ :::image type="content" source="../assets/images/collaboration-control/settings-environment.png" alt-text="Screenshot is an example that shows how to select settings.":::
1. In the settings details page, select **Users + permissions** section and select **Application users**.
- :::image type="content" source="../assets/images/collaboration-control/users-link.png" alt-text="The screenshot is an example that shows the application user link":::
+ :::image type="content" source="../assets/images/collaboration-control/users-link.png" alt-text="Screenshot is an example that shows the application user link.":::
1. In the App users page, select the **+ New app user**. **Create a new app user** window appears.
- :::image type="content" source="../assets/images/collaboration-control/new-app-user.png" alt-text="The screenshot is an example that shows the new app user":::
+ :::image type="content" source="../assets/images/collaboration-control/new-app-user.png" alt-text="Screenshot is an example that shows the new app user.":::
1. Select **+ Add an app**.
- :::image type="content" source="../assets/images/collaboration-control/create-new-app-user.png" alt-text="The screenshot is an example that shows how to create new app user":::
+ :::image type="content" source="../assets/images/collaboration-control/create-new-app-user.png" alt-text="Screenshot is an example that shows how to create new app user.":::
1. Select your app from the search box and select add again.
- :::image type="content" source="../assets/images/collaboration-control/add-app-aad.png" alt-text="The screenshot is an example that shows how to add app from Azure Active Directory":::
+ :::image type="content" source="../assets/images/collaboration-control/add-app-aad.png" alt-text="Screenshot is an example that shows how to add app from Azure Active Directory.":::
-After the app is added, set the **Business unit** and **Security Roles** to your connector application. Select **Create** and your app will be in the list. With the app user set in the environment, we can proceed to custom connector configuration.
+After the app is added, set the **Business unit** and **Security Roles** to your connector application. Select **Create** and your app is in the list. With the app user set in the environment, we can proceed to custom connector configuration.
## Custom connector configuration 1. Open PowerApps or Power Automate and select the **Custom Connectors** menu. Select **edit** for the Collaboration connector.
- :::image type="content" source="../assets/images/collaboration-control/collaboration-connector.png" alt-text="custom connector menu":::
-
+ :::image type="content" source="../assets/images/collaboration-control/collaboration-connector.png" alt-text="Screenshot shows how to select edit for custom connector menu.":::
1. In the General Information tab, enter the host with the address of Dynamic 365 instance domain (without the https://).
- :::image type="content" source="../assets/images/collaboration-control/general-information.png" alt-text="The screenshot is an example that shows the General information":::
+ :::image type="content" source="../assets/images/collaboration-control/general-information.png" alt-text="Screenshot is an example that shows the General information.":::
1. In the Security tab, enter the following inputs:
After the app is added, set the **Business unit** and **Security Roles** to your
* Resource URL: The URL of your Dynamic 365 instance (`https://org.crm.dynamics.com/`). * Scope: Same as above with. Default suffix (`https://org.crm.dynamics.com/.default`).
- :::image type="content" source="../assets/images/collaboration-control/dynamic-365-instance.png" alt-text="The screenshot is an example that shows the Dynamic 365 instance.":::
+ :::image type="content" source="../assets/images/collaboration-control/dynamic-365-instance.png" alt-text="Screenshot is an example that shows the Dynamic 365 instance.":::
1. Select **Update connector** to save the changes and allow your flow to establish connections.
- :::image type="content" source="../assets/images/collaboration-control/custom-connector.png" alt-text="he screenshot is an example that shows the custom connector.":::
+ :::image type="content" source="../assets/images/collaboration-control/custom-connector.png" alt-text="Screenshot is an example that shows the custom connector.":::
## How to invoke the connectorΓÇ» Triggers and actions are pre-defined with configurable input and output as a workflow step. Adding the workflow step to the proper workflow position with correct input and output configuration to define when the trigger or action is to be invoked.
- :::image type="content" source="../assets/images/collaboration-control/invoke-the-connector.png" alt-text="The screenshot is an example that shows how to invoke the connector.":::
+ :::image type="content" source="../assets/images/collaboration-control/invoke-the-connector.png" alt-text="Screenshot is an example that shows how to invoke the connector.":::
### Triggers and actions supported with connector
The following triggers and actions are supported within a flow:
1. When a Collaboration Session is Created.
- :::image type="content" source="../assets/images/collaboration-control/colab-session-created-preview.png" alt-text="Collaboration session created":::
+ :::image type="content" source="../assets/images/collaboration-control/colab-session-created-preview.png" alt-text="Screenshot shows Collaboration session that is created.":::
**Scope:** A scope to limit, which rows can trigger the flow.
The following triggers and actions are supported within a flow:
1. When a Task is created or modified
- :::image type="content" source="../assets/images/collaboration-control/task-created.png" alt-text="The screenshot is an example that shows the task is created or modified":::
+ :::image type="content" source="../assets/images/collaboration-control/task-created.png" alt-text="Screenshot is an example that shows the task is created or modified.":::
- By default, the trigger Planner Task will be disabled and won't trigger. To enable it the following steps must be completed by the tenant admin:
+ By default, the trigger Planner Task is disabled and won't trigger. To enable it, the tenant admin must follow the steps:
- * Create a support ticket under the path Power Apps/Collaboration controls/Settings.
- * Request that your environment is enabled for the Collaboration connector and provides your Environment URL (preferred) or Organization ID.
- * You can add the following sample text to your support request: "Enable Environment URL: `url` for the Collaboration Connector".
- * To open a support ticket, see [Get Help + Support](/power-platform/admin/get-help-support)
+ 1. Create a support ticket under the path Power Apps/Collaboration controls/Settings.
+ 1. Request that your environment is enabled for the Collaboration connector and provides your Environment URL (preferred) or Organization ID.
+ 1. You can add the following sample text to your support request: "Enable Environment URL: `url` for the Collaboration Connector".
+ 1. To open a support ticket, see [Get Help + Support](/power-platform/admin/get-help-support)
* **Actions** 1. Begin Collaboration session
- :::image type="content" source="../assets/images/collaboration-control/begin-collab-session.png" alt-text="The screenshot is an example that shows how to begin collaboration session":::
+ :::image type="content" source="../assets/images/collaboration-control/begin-collab-session.png" alt-text="Screenshot is an example that shows how to begin collaboration session.":::
This step action creates a new collaboration session for your dataverse business entity:
The following triggers and actions are supported within a flow:
**Metadata (Advanced):** Adds metadata for a collaboration session.
- * **OData Type:** This field needs to be provided if the other key/value are set and need to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute. * **Value:** Value associated with the metadata attribute. 1. Retrieve Collaboration session
- ::image type="content" source="../assets/images/collaboration-control/retrieve-collab-session.png" alt-text="The screenshot is an example that shows how to Retrieve collaboration session.":::
+ ::image type="content" source="../assets/images/collaboration-control/retrieve-collab-session.png" alt-text="Screenshot is an example that shows how to Retrieve collaboration session.":::
This step action returns the collaboration session that matches the provided inputs:
The following triggers and actions are supported within a flow:
1. Update Collaboration session
- :::image type="content" source="../assets/images/collaboration-control/update-collab-session.png" alt-text="The screenshot is an example that shows how to update collaboration session.":::
+ :::image type="content" source="../assets/images/collaboration-control/update-collab-session.png" alt-text="Screenshot is an example that shows how to update collaboration session.":::
This step action updates an existing collaboration session:
The following triggers and actions are supported within a flow:
**Create Metadata (Advanced):** Adds more metadata to a collaboration session record.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute. * **Value:** Value associated with the metadata attribute. **Update Metadata (Advanced):** Updates existing metadata on a collaboration session record.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute to update. * **Value:** Value associated with the metadata attribute. **Delete Metadata (Advanced):** Removes any existing metadata on a collaboration session record.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute to remove. 1. Associate Collaboration Map (external)
- :::image type="content" source="../assets/images/collaboration-control/associate-collab-map.png" alt-text="The screenshot is an example that shows how to associate collaboration map.":::
+ :::image type="content" source="../assets/images/collaboration-control/associate-collab-map.png" alt-text="Screenshot is an example that shows how to associate collaboration map.":::
This step action creates a mapping of an external collaboration entity (outside dataverse) with your collaboration session:
The following triggers and actions are supported within a flow:
***Advanced options:*** **Metadata:** Add metadata for a collaboration map.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute. * **Value:** Value associated with the metadata attribute. 1. Associate Collaboration Map (internal)
- :::image type="content" source="../assets/images/collaboration-control/associate-collab-map-internal.png" alt-text="The screenshot is an example that shows how to associate collaboration map internal.":::
+ :::image type="content" source="../assets/images/collaboration-control/associate-collab-map-internal.png" alt-text="Screenshot is an example that shows how to associate collaboration map internal.":::
This step action creates a mapping of a collaboration entity (dataverse table) with your collaboration session. Internal are intended to create mappings between internal Dataverse entities/tables only.
The following triggers and actions are supported within a flow:
**Metadata (Advanced)** Add metadata for a collaboration map.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata
* **Key:** Key associated with the metadata attribute * **Value:** Value associated with the metadata attribute 1. Update Collaboration Map
- :::image type="content" source="../assets/images/collaboration-control/update-collab-map.png" alt-text="The screenshot is an example that shows how to update collaboration map.":::
+ :::image type="content" source="../assets/images/collaboration-control/update-collab-map.png" alt-text="Screenshot is an example that shows how to update collaboration map.":::
This step action updates an existing collaboration map:
The following triggers and actions are supported within a flow:
**Create Metadata:** Adds more metadata to a collaboration map record.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute. * **Value:** Value associated with the metadata attribute. **Update Metadata:** Updates existing metadata on a collaboration map record.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata
* **Key:** Key associated with the metadata attribute to update * **Value:** Value associated with the metadata attribute **Delete Metadata:** Removes any existing metadata on a collaboration map record.
- * **OData Type:** This field needs to be provided if the other key/value are set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
+ * **OData Type:** This field needs to be provided if the other key/value is set and needs to match exactly #Microsoft.Dynamics.CRM.m365_collaborationmetadata.
* **Key:** Key associated with the metadata attribute to remove. 1. Get Collaboration Metadata
- :::image type="content" source="../assets/images/collaboration-control/get-collab-metadata.png" alt-text="The screenshot is an example that shows how to get collaboration metadata.":::
+ :::image type="content" source="../assets/images/collaboration-control/get-collab-metadata.png" alt-text="Screenshot is an example that shows how to get collaboration metadata.":::
This step action lists all metadata matching the specified filter.
The following triggers and actions are supported within a flow:
1. Create Planner Task
- :::image type="content" source="../assets/images/collaboration-control/create-planner-task.png" alt-text="The screenshot is an example that shows how to create planner task.":::
+ :::image type="content" source="../assets/images/collaboration-control/create-planner-task.png" alt-text="Screenshot is an example that shows how to create planner task.":::
This step action creates a Graph Planner Task using Collaboration controls Planner task virtual table:
The following triggers and actions are supported within a flow:
* **Percent Complete:** Percentage of task completion (0-100) * **Preview Type:** This sets the type of preview that shows up on the task. The possible values are: automatic, noPreview, checklist, description, reference. * **Reference Count:** Number of external references that exist on the task.
- * **Start Date Time:** Date and time at which the task starts. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
+ * **Start Date Time:** Date and time at which the task starts. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 01, 2014 is 2014-01-01T00:00:00Z.
1. Get Planner Task
- :::image type="content" source="../assets/images/collaboration-control/get-planner-task.png" alt-text="The screenshot is an example that shows the get planner task.":::
+ :::image type="content" source="../assets/images/collaboration-control/get-planner-task.png" alt-text="Screenshot is an example that shows the get planner task.":::
This step action returns a Planner Task data using Collaboration controls Planner task virtual table:
The following triggers and actions are supported within a flow:
1. Update Planner Task
- :::image type="content" source="../assets/images/collaboration-control/update-planner-task-preview.png" alt-text="Update planner task":::
+ :::image type="content" source="../assets/images/collaboration-control/update-planner-task-preview.png" alt-text="Screenshot shows Update planner task.":::
- This step action updates a planner task record using Collaboration controls Planner task virtual table
+ This step action updates a planner task record using Collaboration controls Planner task virtual table.
* **Task ID (Required):** Task unique identifier.
- * **Assignments:** A json formatted object that represents all the assignments of a Task. See. plannerAssignments resource type - Microsoft Graph v1.0 | Microsoft Docs
+ * **Assignments:** A json formatted object that represents all the assignments of a Task. See plannerAssignments resource type - Microsoft Graph v1.0 | Microsoft Docs.
* **Bucket ID:** Bucket ID to where the task belongs. * **Planner Task Details:** Represents the additional information about a task.
- * **Due Date Time:** Date and time at which the task is due. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on January 1, 2014 is 2014-01-01T00:00:00Z.
+ * **Due Date Time:** Date and time at which the task is due. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on January 01, 2014 is 2014-01-01T00:00:00Z.
* **Priority:** Priority of the task. 0 and 10 (inclusive) increasing value being lower priority.
- * **Percent Complete:** Percentage of task completion (0-100)
- * **Title:** Title of the task
+ * **Percent Complete:** Percentage of task completion (0-100).
+ * **Title:** Title of the task.
***Advanced options:***
The following triggers and actions are supported within a flow:
**Example Flow Scenario**
-The following are some example of flows:
+The following are examples of flows:
1. Getting a response from Microsoft forms, creating a Collaboration session and a task associated.
- :::image type="content" source="../assets/images/collaboration-control/response-submitted.png" alt-text="The screenshot is an example that shows how to submit new response.":::
+ :::image type="content" source="../assets/images/collaboration-control/response-submitted.png" alt-text="Screenshot is an example that shows how to submit new response.":::
1. Every time a collaboration session is created, capture the details and send an e-mail notification.
- :::image type="content" source="../assets/images/collaboration-control/colab-session-created-preview.png" alt-text="The screenshot is an example that shows the Collaboration session created":::
+ :::image type="content" source="../assets/images/collaboration-control/colab-session-created-preview.png" alt-text="Screenshot is an example that shows the Collaboration session created.":::
> [!NOTE] > Multiple flows could be triggered in this way to perform different actions, using data from the response of the Collaboration session creation.
platform Collaboration Control https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/samples/collaboration-control.md
The Collaboration controls enable applying Microsoft 365 and Microsoft Teams for Approvals, Files, Meetings, Notes, and Tasks to enable contextual collaboration around business processes. These controls allow you to build custom collaborative experiences that can be surfaced right in Teams. The solutions that make up Collaboration controls allow makers to build applications that integrate with Microsoft 365 services like Planner, Bookings, Outlook, and SharePoint in a low code manner.
-These controls give you the power to simplify your users workflow collaboration by building line of business apps with Approvals, Files, Meetings, Notes, and Tasks without switching the context from app to app.
+These controls give you the power to simplify your users workflow collaboration by building line of business apps and work without switching the context from app to app with the following
+
+* Approvals
+* Files
+* Meetings
+* Notes
+* Tasks
> [!NOTE] > Currently Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
Following are some of the key capabilities of Collaboration controls:
* **Approvals:** Streamline requests within your team. > [!NOTE]
-> By configuring and using the various Microsoft 365 capabilities of Collaboration controls mentioned above, you are granting permission for user data to pass through the Graph API and agreeing to [Microsoft API terms of Use](/legal/microsoft-apis/terms-of-use?context=graph%2Fcontext). For more information, see [Microsoft Graph](/graph/overview).
+> By configuring and using the various Microsoft 365 capabilities of Collaboration controls mentioned earlier, you are granting permission for user data to pass through the Graph API and accepting [Microsoft API terms of Use](/legal/microsoft-apis/terms-of-use?context=graph%2Fcontext). For more information, see [Microsoft Graph](/graph/overview).
## How Collaboration controls works
-The controls run within a Power Apps Model Driven Application [MDA] that can be deployed to Microsoft Teams. MDA run on Microsoft Dataverse and can be integrated with a custom data model. The controls integrate with Microsoft Graph for Planner tasks, Outlook and Teams calendars, and SharePoint files. The Collaboration controls don't integrate directly with external sources, such as a system of record or a portal.
+The controls run within a Power Apps Model Driven Application (MDA) that can be deployed to Microsoft Teams. MDA run on Microsoft Dataverse and can be integrated with a custom data model. The controls integrate with Microsoft Graph for Planner tasks, Outlook and Teams calendars, and SharePoint files. The Collaboration controls don't integrate directly with external sources, such as a system of record or a portal.
* Data can be added to Dataverse from external sources via standard OData APIs.
platform Deploy Collaboration Control In Teams https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/samples/deploy-collaboration-control-in-teams.md
Collaboration controls currently work best within Microsoft Teams. You can create a new app that can be embedded inside Teams app as both, a personal app and a tab app. > [!NOTE]
-> Currently Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
+> Currently, Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
## Configure the app for Teams
To do so, we'll use Power Apps **new app** settings.
1. Search for and select **Setting definition**.
- :::image type="content" source="../assets/images/collaboration-control/settings-defnition.png" alt-text="Setting definition":::
+ :::image type="content" source="../assets/images/collaboration-control/settings-defnition.png" alt-text="Screenshot shows searching and setting definition in Power apps.":::
1. Search and select **Hide the navbar** from the list of settings definitions. This hides the left pane in your application.
- :::image type="content" source="../assets/images/collaboration-control/hide-the-nav-bar.png" alt-text="Hide the nav bar":::
+ :::image type="content" source="../assets/images/collaboration-control/hide-the-nav-bar.png" alt-text="Screenshot shows how to select hide the nav bar.":::
1. On the lower right of your application in the edit pane, there's a section titled **Setting app values**. If you created your app using the modern app designer, your app appears on the list. Select **New app value** under your app. 1. Change the value from **No** to **Yes.**
- :::image type="content" source="../assets/images/collaboration-control/value-to-yes.png" alt-text="Change value to yes":::
+ :::image type="content" source="../assets/images/collaboration-control/value-to-yes.png" alt-text="Screenshot displays dropdown to select change value to yes.":::
1. Select **Save.** 1. Search and select **App high density page header** from the list of settings definitions and repeat the process.
- :::image type="content" source="../assets/images/collaboration-control/density-page-header.png" alt-text="Density page header":::
+ :::image type="content" source="../assets/images/collaboration-control/density-page-header.png" alt-text="Screenshot shows how to select app high density page header.":::
1. Select **Back to solutions**.
- :::image type="content" source="../assets/images/collaboration-control/default-solution.png" alt-text="Default solution":::
+ :::image type="content" source="../assets/images/collaboration-control/default-solution.png" alt-text="The screenshot shows default solution.":::
1. Select **Publish all customizations** to publish all the work you've completed.
- :::image type="content" source="../assets/images/collaboration-control/publish-cusomization.png" alt-text="Publish all customizations":::
+ :::image type="content" source="../assets/images/collaboration-control/publish-cusomization.png" alt-text="Publish all customizations.":::
## Add the app to Microsoft Teams app catalog
As the settings are defined, you can now add the app to Microsoft Teams. To star
To add the app to Teams, select **Add to Teams**. Selecting **Add to Teams** opens a dialog where you can review the details and select **Download app**, which saves the Microsoft Teams app manifest to your device. To upload your app to Teams, see [upload your app in Team](~/concepts/deploy-and-publish/apps-upload.md).
Following are required to enable users to run the deployed Collaboration Manager
1. **Administrator:** Search for the user within your organization that you want to assign as the administrator by entering characters. 1. **Team type:** Select the team type. The following steps assume that you've selected Owner from the dropdown list. The other team types (Microsoft 365 team and Microsoft Azure Active Directory team) auto populates team members from Azure Active Directory.
- :::image type="content" source="../assets/images/collaboration-control/new-team.png" alt-text="New team":::
+ :::image type="content" source="../assets/images/collaboration-control/new-team.png" alt-text="Screenshot to select new team type.":::
1. Ensure that you note the team name. You'll need this later to assign this team as the owner of a record.
Following are required to enable users to run the deployed Collaboration Manager
1. To add new team members, select **+ Add team members** and choose users from your organization to add.
- :::image type="content" source="../assets/images/collaboration-control/add-team-members.png" alt-text="The screenshot describes how to add Team members":::
+ :::image type="content" source="../assets/images/collaboration-control/add-team-members.png" alt-text="The screenshot describes how to add team members.":::
1. To delete a team member, select the user and then choose **Remove**.
Following are required to enable users to run the deployed Collaboration Manager
1. Select **Security roles**.
- :::image type="content" source="../assets/images/collaboration-control/users-permission.png" alt-text="Users permission":::
+ :::image type="content" source="../assets/images/collaboration-control/users-permission.png" alt-text="Screenshot displays to add new team members for users permission.":::
1. Select on **New role** at the upper left of the page, which now opens a new page.
Following are required to enable users to run the deployed Collaboration Manager
1. Give organization permissions (full green circle) for each of the collaboration entities, **Collaboration Map**, **Collaboration Metadata**, and **Collaboration Root**.
- :::image type="content" source="../assets/images/collaboration-control/collab-map.png" alt-text="Collaboration map":::
+ :::image type="content" source="../assets/images/collaboration-control/collab-map.png" alt-text="Screenshot shows how to create a security role on collaboration map.":::
1. Select **Save** and **Close**.
Following are required to enable users to run the deployed Collaboration Manager
1. Choose **Manage security roles** from the header.
- :::image type="content" source="../assets/images/collaboration-control/edit-team.png" alt-text="Edit team":::
+ :::image type="content" source="../assets/images/collaboration-control/edit-team.png" alt-text="Screenshot displays collaboration map, collaboration metadata, and collaboration root. for edit team.":::
1. Select the roles [created in a security role](#create-a-security-role).
platform Install Collaboration Control https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/samples/install-collaboration-control.md
# Install Collaboration controls > [!NOTE]
-> Currently Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
+> Currently, Collaboration controls are available only in [public developer preview](~/resources/dev-preview/developer-preview-intro.md).
In this article, you'll learn how to install Collaboration Controls. The following are required to build and deploy Collaboration Manager applications using the Collaboration controls:
For more information on role privileges, see [Configure user security in an envi
You'll install the Collaboration controls into your dataverse environment via [Microsoft AppSource.](https://appsource.microsoft.com/en-us/product/dynamics-365/mscm.collaboration-toolkit-preview?flightCodes=collaborationcontrols&signInModalType=2&ctaType=1) - You'll be able to configure and use the components within your own model-driven app only after browsing to [Microsoft AppSource](https://appsource.microsoft.com/en-us/product/dynamics-365/mscm.collaboration-toolkit-preview?flightCodes=collaborationcontrols&signInModalType=2&ctaType=1) and installing Collaboration controls into your dataverse environment. Collaboration Controls include the following solutions:
-|**Settings solutions** | **Purpose** |
+|**Settings' solutions** | **Purpose** |
||| | Collaboration controls Settings | Hold the settings infrastructure that powers Collaboration controls | | Collaboration controls Settings Objects | Provides pre-defined settings values that are used by the Collaboration controls.|
To install the solutions, browse to [Microsoft AppSource](https://appsource.micr
1. Select **Get it now** button.
- :::image type="content" source="../assets/images/collaboration-control/preview-form.png" alt-text="Preview form "border="true":::
+ :::image type="content" source="../assets/images/collaboration-control/preview-form.png" alt-text="Screenshot of Get it now button to show Collaboration control."border="true":::
1. Sign in with your account, fill in the form and select **Continue**.
- :::image type="content" source="../assets/images/collaboration-control/overview.png" alt-text="overview collaboration control" border="true":::
+ :::image type="content" source="../assets/images/collaboration-control/overview.png" alt-text="Screenshot of overview Collaboration control." border="true":::
- :::image type="content" source="../assets/images/collaboration-control/collaboration-controls-preview.png" alt-text="Collaboration control preview" border="true":::
+ :::image type="content" source="../assets/images/collaboration-control/collaboration-controls-preview.png" alt-text="Screenshot of install Collaboration control preview." border="true":::
1. You'll be directed to Power Platform Admin Center. Select an environment from the dropdown menu and agree to the terms and policy statements. > [!TIP] > If you see a permissions error when you select the environment, try selecting outside the environment dropdown menu to see if that resolves the issue.
- :::image type="content" source="../assets/images/collaboration-control/install-environment.png" alt-text="Install collaboration control environment" border="true":::
+ :::image type="content" source="../assets/images/collaboration-control/install-environment.png" alt-text="Screenshot is an example of install collaboration control environment." border="true":::
1. Select **Install**, installation might take approximately 15 minutes to complete.
To install the solutions, browse to [Microsoft AppSource](https://appsource.micr
1. Select the **Solutions** tab to view all the solutions that you've installed in the right environment.
- :::image type="content" source="../assets/images/collaboration-control/solutions.png" alt-text="solutions collaboration control" border= "true":::
+ :::image type="content" source="../assets/images/collaboration-control/solutions.png" alt-text="Screenshot shows solutions tab to view all solutions collaboration control." border= "true":::
> [!NOTE] > The Collaboration controls are preview and elements may change over time with potential for breaking changes. The Collaboration controls aren't supported in production environments.
platform Tab Sso Manifest https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/tabs/how-to/authentication/tab-sso-manifest.md
For more information, see [webApplicationInfo](../../../resources/schema/manifes
"manifestVersion": "1.11", "version": "1.0.0", "id": "bccfbe67-e08b-4ec1-a7fd-e0aaf41a097c",
- "packageName": "com.contoso.teamsauthsso",
"developer": { "name": "Microsoft", "websiteUrl": "https://www.microsoft.com",
platform Build Adaptive Card Tabs https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/tabs/how-to/build-adaptive-card-tabs.md
Following is a sample Adaptive Card tab manifest:
"manifestVersion": "1.9", "id": "00000000-0000-0000-0000-000000000000", "version": "0.0.1",
- "packageName": "acprototype",
"developer": { "name": "Contoso", "websiteUrl": "https://contoso.yourwebsite.com",
platform Connectors Creating https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/webhooks-and-connectors/how-to/connectors-creating.md
The following *manifest.json* file contains the elements needed to test and subm
"manifestVersion": "1.5", "id": "e9343a03-0a5e-4c1f-95a8-263a565505a5", "version": "1.0",
- "packageName": "com.sampleapp",
"developer": { "name": "Publisher", "websiteUrl": "https://www.microsoft.com",