Updates from: 04/09/2022 02:00:28
Service Microsoft Docs article Related commit history on GitHub Change details
platform Teams Together Mode https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/apps-in-teams-meetings/teams-together-mode.md
Optionally, you can select **Share** from the **Save** drop-down menu. You can c
After preview, the scene is shipped as an app to Teams by following the steps for app submission. This step requires the app package. The app package is different from the scene package, for the scene that was designed. The app package created automatically is found in the **Apps** section in the Teams Developer Center.
-Optionally, the scene package is retrieved by selecting **Export** from the **Save** drop-down menu. A **.zip** file, that is the scene package, is downloaded. Scene package includes a scene.json and the PNG assets used to build a scene. The scene package is reviewed for incorporating other changes:
+Optionally, the scene package is retrieved by selecting **Export** from the **Save** drop-down menu. A .zip file, that is the scene package, is downloaded. Scene package includes a scene.json and the PNG assets used to build a scene. The scene package is reviewed for incorporating other changes:
![Export a scene](../assets/images/apps-in-meetings/build-a-scene.png)
platform Apps Localization https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/concepts/build-and-test/apps-localization.md
The images that you upload with the English language are used in AppSource.
## Localize strings in your app manifest
-You must use the Microsoft Teams app schema `v1.5` and later to localize your app. You can do this by setting the `$schema` attribute in your manifest.json file to `https://developer.microsoft.com/json-schemas/teams/v1.5/MicrosoftTeams.schema.json` or higher and updating the `manifestVersion` property to `$schema` version (`1.5` in this case).
+Use the Microsoft Teams app schema `v1.5` and later to localize your app. You can do this by setting the `$schema` attribute in your manifest.json file to `https://developer.microsoft.com/json-schemas/teams/v1.5/MicrosoftTeams.schema.json` or higher and updating the `manifestVersion` property to `$schema` version (`1.5` in this case).
-You must add the `localizationInfo` property with the default language that your application supports. The default language is used as the final fallback language if the user's client settings do not match with any of your additional languages.
+Add the `localizationInfo` property with the default language that your application supports. The default language is used as the final fallback language if the user's client settings do not match with any of your additional languages.
### Example manifest.json change
-The following manifest.json helps to add the `localizationInfo` property with the default language that your application supports along with `additionalLanguages`:
+The following `manifest.json` helps to add the `localizationInfo` property with the default language that your application supports along with `additionalLanguages`:
```json {
Therefore, you must provide top level, language only translations in your manife
### Example manifest.json change
-The manifest.json change is shown in the following example:
+The `manifest.json` change is shown in the following example:
```json {
The manifest.json change is shown in the following example:
### Example localization .json file
- The localization.json change is shown in the following example:
+ The `localization.json` change is shown in the following example:
```json {
platform In App Purchase Flow https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/concepts/deploy-and-publish/appsource/prepare/in-app-purchase-flow.md
To offer an in-app purchase experience to the users of your app, ensure the foll
* App is invoked with [`openPurchaseExperience` API](#purchase-experience-api).
-In-app purchase experience can be enabled either by updating **manifest.json** file or by enabling **Show in-app purchase offers** from **Permissions** section of your **Developer Portal**.
+In-app purchase experience can be enabled either by updating `manifest.json` file or by enabling **Show in-app purchase offers** from **Permissions** section of your **Developer Portal**.
### Update manifest
-To enable in-app purchase experience, update your Teams app **manifest.json** file by adding the RSC permissions. It allows your app users to upgrade to a paid version of your app and start using new functionalities. The update for app manifest is as follows:
+To enable in-app purchase experience, update your Teams app `manifest.json` file by adding the RSC permissions. It allows your app users to upgrade to a paid version of your app and start using new functionalities. The update for app manifest is as follows:
```json
platform Deploy Nodejs App Studio https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/get-started/deploy-nodejs-app-studio.md
Complete the following steps to update the app package:
[13:39:27] Finished 'default' after 62 ╬╝s ```
- The name of the generated app package is **helloworldapp.zip**. You can search for this file if the location is not clear in the tool you are using.
+ The name of the generated app package is `helloworldapp.zip`. You can search for this file if the location is not clear in the tool you are using.
1. Now to modify this app package, select **Import an existing app** in the **Manifest editor**:
platform Get Started Use App Studio https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/includes/get-started/get-started-use-app-studio.md
Complete the following steps to update the app package:
[13:39:27] Finished 'default' after 62 ╬╝s ```
- The name of the generated app package is **helloworldapp.zip**. You can search for this file if the location is not clear in the tool you are using.
+ The name of the generated app package is `helloworldapp.zip`. You can search for this file if the location is not clear in the tool you are using.
1. Now to modify this app package, select **Import an existing app** in the **Manifest editor**:
platform Dotnet Personal Use Appstudio https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/includes/tabs/dotnet-personal-use-appstudio.md
## Upload your tab with App Studio >[!NOTE]
-> We use **App Studio** to edit your **manifest.json** file and upload the completed package to Teams. You can also manually edit **manifest.json**. If you do, ensure that you build the solution again to create the **Tab.zip** file to upload.
+> We use **App Studio** to edit your `manifest.json` file and upload the completed package to Teams. You can also manually edit `manifest.json`. If you do, ensure that you build the solution again to create the `Tab.zip` file to upload.
**To upload your tab with App Studio**
1. Go to **App Studio** and select the **Manifest editor** tab.
-1. Select **Import an existing app** in the **Manifest editor** to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is **tab.zip**. It is available from the following path:
+1. Select **Import an existing app** in the **Manifest editor** to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is `tab.zip`. It is available from the following path:
```bash /bin/Debug/netcoreapp2.2/tab.zip ```
-1. Upload **tab.zip** to **App Studio**.
+1. Upload `tab.zip` to **App Studio**.
### Update your app package with Manifest editor
After you have uploaded your app package into App Studio, you must configure it.
Select the tile for your newly imported tab in the right panel of the Manifest editor welcome page.
-There is a list of steps in the left-hand side of the Manifest editor, and on the right, a list of properties that must have values for each of those steps. Much of the information has been provided by your **manifest.json** but there are fields that you must update.
+There is a list of steps in the left-hand side of the Manifest editor, and on the right, a list of properties that must have values for each of those steps. Much of the information has been provided by your `manifest.json` but there are fields that you must update.
#### Details: App details
platform Dotnet Update Chan Grp App https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/includes/tabs/dotnet-update-chan-grp-app.md
In Visual Studio, press **F5** or choose **Start Debugging** from the **Debug**
## Upload your tab >[!Note]
-> App Studio can be used to edit your **manifest.json** file and upload the completed package to Teams. You can also manually edit the **manifest.json** file if you prefer. If you do, be sure to build the solution again to create the **tab.zip** file to upload.
+> App Studio can be used to edit your `manifest.json` file and upload the completed package to Teams. You can also manually edit the `manifest.json` file if you prefer. If you do, be sure to build the solution again to create the `tab.zip` file to upload.
**To upload your tab**
In Visual Studio, press **F5** or choose **Start Debugging** from the **Debug**
1. Go to **App Studio** and select the **Manifest editor** tab.
-1. Select **Import an existing app** in the Manifest editor to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is **tab.zip**. It is available here:
+1. Select **Import an existing app** in the Manifest editor to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is `tab.zip`. It is available here:
```bash /bin/Debug/netcoreapp2.2/tab.zip ```
-1. Upload **tab.zip** to App Studio.
+1. Upload `tab.zip` to App Studio.
### Update your app package with Manifest editor
After you have uploaded your app package into App Studio, you must finish config
Select the tile for your newly imported tab in the right panel of the Manifest editor welcome page.
-There is a list of steps in the left-hand side of the Manifest editor, and on the right, a list of properties that must have values for each of those steps. Much of the information has been provided by your **manifest.json** but there are a few fields that you must update:
+There is a list of steps in the left-hand side of the Manifest editor, and on the right, a list of properties that must have values for each of those steps. Much of the information has been provided by your `manifest.json` but there are a few fields that you must update:
#### Details: App details
platform Dotnet Upload To Teams https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/includes/tabs/dotnet-upload-to-teams.md
## Upload your tab to Teams >[!NOTE]
-> We use App Studio to edit your **manifest.json** file and upload the completed package to Teams. You can also manually edit the **manifest.json** file if you prefer. If you do, be sure to build the solution again to create the **tab.zip** file to upload.
+> We use App Studio to edit your `manifest.json` file and upload the completed package to Teams. You can also manually edit the `manifest.json` file if you prefer. If you do, be sure to build the solution again to create the `tab.zip` file to upload.
- Open the Microsoft Teams client. If you use the [web based version](https://teams.microsoft.com) you can inspect your front-end code using your browser's [developer tools](~/tabs/how-to/developer-tools.md). - Open the App Studio app and select the **Manifest editor** tab. -- Select the **Import an existing app** tile in the Manifest editor to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is **tab.zip**. It should be found here:
+- Select the **Import an existing app** tile in the Manifest editor to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is `tab.zip`. It should be found here:
```bash /bin/Debug/netcoreapp2.2/tab.zip ``` -- Upload **tab.zip** to App Studio.
+- Upload `tab.zip` to App Studio.
### Update your app package with Manifest editor
platform Node Js Yeoman Gulp Tasks https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/includes/tabs/node-js-yeoman-gulp-tasks.md
You must have an app package to test your tab in Teams. It is a zip folder that
- A **full color icon** measuring 192 x 192 pixels. - A **transparent outline icon** measuring 32 x 32 pixels.-- A **manifest.json** file that specifies the attributes of your app.
+- A `manifest.json` file that specifies the attributes of your app.
The package is created through a gulp task that validates the manifest.json file and generates the zip folder in the **./package directory**. In the command prompt, enter the following command:
platform Node Js Yeoman Prereq https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/includes/tabs/node-js-yeoman-prereq.md
In addition, this project requires that you have the following installed in your
yo teams ```
-1. Next, provide a series of values that are used in your application's **manifest.json** file:
+1. Next, provide a series of values that are used in your application's `manifest.json` file:
![generator opening screenshot](/microsoftteams/platform/assets/images/tab-images/teamsTabScreenshot.PNG)
platform Team Chat Member Api Changes https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/resources/team-chat-member-api-changes.md
Following are the upcoming API changes:
> `objectId` is changed to `aadObjectId` to match what is called in the `Activity` object of a Bot Framework message. The new API is available with version 4.8 or later of the Bot Framework SDK. It is also available in the Teams SDK extension Bot Framework 3.x. Meanwhile, you can use the [REST](/microsoftteams/platform/bots/how-to/get-teams-context?tabs=json#get-single-member-details) endpoint. * `TeamsInfo.GetMembersAsync` in C# and `TeamsInfo.getMembers` in TypeScript or Node.js is formally deprecated. Once the new API is available, you must update your bots to use it. This also applies to the [underlying REST API that these APIs use](/microsoftteams/platform/bots/how-to/get-teams-context?tabs=json#tabpanel_CeZOj-G++Q_json).
-* By late 2022, bots cannot proactively retrieve the `userPrincipalName` or `email` properties for members of a chat or team. Bots must use Graph to retrieve them. The `userPrincipalName` and `email` properties are not returned from the new `GetConversationPagedMembers` API starting in late 2022. Bots have to use Graph with an access token to retrieve information. It must be made easier for bots to get an access token and streamline and simplify the end-user consent process.
+* By late 2022, bots can't proactively retrieve the `userPrincipalName` or `email` properties for members of a chat or team. Bots must use the Graph APIs to retrieve the required imformation. The new `GetConversationPagedMembers` API can't return the `userPrincipalName` and `email` properties from late 2022. Bots must use Graph API with an access token to retrieve information.
platform Create Channel Group Tab https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/tabs/how-to/create-channel-group-tab.md
Following are the steps to create a channel or group tab:
yo teams ```
-1. Provide your values to a series of questions prompted by Microsoft Teams App generator to update your **manifest.json** file:
+1. Provide your values to a series of questions prompted by Microsoft Teams App generator to update your `manifest.json` file:
![generator opening screenshot](/microsoftteams/platform/assets/images/tab-images/teamsTabScreenshot.PNG)
Following are the steps to create a channel or group tab:
</details> > [!IMPORTANT]
-> The path component **yourDefaultTabNameTab** is the value that you entered in the generator for **Default Tab Name** plus the word **Tab**.
->
-> For example: DefaultTabName is **MyTab** then **/MyTabTab/**
+> The path component **yourDefaultTabNameTab** is the value that you entered in the generator for **Default Tab Name** plus the word **Tab**. For example, `DefaultTabName` is **MyTab** then **/MyTabTab/**.
+
+<! TBD: this info seems removed from the main branch.
+* A **full color icon** measuring 192 x 192 pixels.
+* A **transparent outline icon** measuring 32 x 32 pixels.
+* A `manifest.json` file that specifies the attributes of your app.
+>
### Create your app package
-You must have an app package to build and run your application in Teams. The app package is created through a gulp task that validates the **manifest.json** file and generates the zip folder in the **./package** directory. At the command prompt, enter the following command:
+You must have an app package to build and run your application in Teams. The app package is created through a gulp task that validates the `manifest.json` file and generates the zip folder in the `./package` directory. At the command prompt, enter the following command:
```cmd gulp manifest
gulp manifest
#### Build your application
-Enter the following command at the command prompt to transpile your solution into the **./dist** folder:
+Enter the following command at the command prompt to transpile your solution into the `./dist` folder:
```cmd gulp build
gulp ngrok-serve
1. Go to Microsoft Teams and select **Apps**&nbsp;:::image type="content" source="~/assets/images/tab-images/store.png" alt-text="Teams Store":::. 1. Select **Manage your apps** and **Upload a custom app**. 1. Go to your project directory, browse to the **./package** folder, select the app package zip folder, and choose **Open**.
-
+ :::image type="content" source="~/assets/images/tab-images/channeltabadded.png" alt-text="Uploaded channel tab" border="true"::: 1. Select **Add** in the dialog. Your tab is uploaded to Teams.
-
+ > [!NOTE] > If **Add** doesn't display in the dialog box then remove the following code from the manifest of the uploaded app package zip folder. Again zip the folder and upload it to Teams. >
gulp ngrok-serve
1. Select **Save** and your tab is added to the channel's tab bar. :::image type="content" source="~/assets/images/tab-images/channeltabuploaded.png" alt-text="Channel tab uploaded" border="true":::
-
+ Now you have succesfully created and added your channel or group tab in Teams. ::: zone-end
This folder contains the following required app package files:
* A **full color icon** measuring 192 x 192 pixels. * A **transparent outline icon** measuring 32 x 32 pixels.
-* A **manifest.json** file that specifies the attributes of your app.
+* A `manifest.json` file that specifies the attributes of your app.
These files need to be zipped in an app package for use in uploading your tab to Teams. When a user chooses to add or update your tab, Microsoft Teams loads the `configurationUrl` specified in your manifest, embeds it in an IFrame, and renders it in your tab.
Ensure that you keep the command prompt with ngrok running and make a note of th
> [!TIP] > You need to have both your application in Visual Studio and ngrok running to complete the steps provided in this article. If you need to stop running your application in Visual Studio to work on it, **keep ngrok running**. It listens and resumes routing your application's request when it restarts in Visual Studio. If you have to restart the ngrok service it returns a new URL and you have to update your application with the new URL.
+<! TBD: This note seems to be removed from main. Commenting it for now.
+> [!NOTE]
+> App Studio can be used to edit your `manifest.json` file and upload the completed package to Teams. You can also manually edit the `manifest.json` file. If you do, ensure that you build the solution again to create the `tab.zip` file to upload.
+>
+ ### Update your app package with Developer Portal 1. Go to Microsoft Teams. If you use the [web-based version](https://teams.microsoft.com), you can inspect your front-end code using your browser's [developer tools](~/tabs/how-to/developer-tools.md).
Ensure that you keep the command prompt with ngrok running and make a note of th
1. Open **Apps** and select **Import app**.
-1. The name of your app package is **tab.zip**. It's available in the following path:
+<! TBD: This steps seems to be removed from main now so commenting it for now.
+
+1. Select **Import an existing app** in the **Manifest editor** to begin updating the app package for your tab. The source code comes with its own partially complete manifest. The name of your app package is `tab.zip`. It is available from the following path:
+>
+
+1. The name of your app package is `tab.zip`. It's available in the following path:
```bash /bin/Debug/netcoreapp3.1/tab.zip ```
-1. Select **tab.zip** and open it in the Developer Portal.
+1. Select `tab.zip` and open it in the Developer Portal.
1. A default **App ID** is created and populated in **Basic information** section.
This folder contains the following required app package files:
* A **full color icon** measuring 192 x 192 pixels. * A **transparent outline icon** measuring 32 x 32 pixels.
-* A **manifest.json** file that specifies the attributes of your app.
+* A `manifest.json` file that specifies the attributes of your app.
These files need to be zipped in an app package for use in uploading your tab to Teams.
platform Create Personal Tab https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/tabs/how-to/create-personal-tab.md
Following are the steps to create a personal tab:
yo teams ```
-1. Provide your values to a series of questions prompted by Microsoft Teams App generator to update your **manifest.json** file.
+1. Provide your values to a series of questions prompted by Microsoft Teams App generator to update your `manifest.json` file.
:::image type="content" source="~/assets/images/tab-images/teamsTabScreenshot.PNG" alt-text="Teams generator" border="true":::
Create a content page and update the existing files of the personal tab applicat
./src/public/<yourDefaultTabNameTab>/personal.html ```
-1. Open **manifest.json** from the following location in your Visual Studio Code:
+1. Open `manifest.json` from the following location in your Visual Studio Code:
``` ./src/manifest/manifest.json
Create a content page and update the existing files of the personal tab applicat
1. Update the **contentURL** path component **yourDefaultTabNameTab** with your actual tab name.
-1. Save the updated **manifest.json** file.
+1. Save the updated `manifest.json` file.
1. Open **Tab.ts** in your Visual Studio Code from the following path to provide your content page in an IFrame:
Create a content page and update the existing files of the personal tab applicat
### Create your app package
-You must have an app package to build and run your application in Teams. The app package is created through a gulp task that validates the **manifest.json** file and generates the zip folder in the **./package** directory. At the command prompt, enter the following command:
-
-```cmd
-gulp manifest
-```
+You must have an app package to build and run your application in Teams. The app package is created through a gulp task that validates the `manifest.json` file and generates the zip folder in the `./package` directory. At the command prompt, use the command `gulp manifest`.
### Build and run your application
ASP.NET Core treats files called **Index** as the default or home page for the s
This folder contains the following required app package files:
-* A **full color icon** measuring 192 x 192 pixels.
-* A **transparent outline icon** measuring 32 x 32 pixels.
-* A **manifest.json** file that specifies the attributes of your app.
+* A full color icon measuring 192 x 192 pixels.
+* A transparent outline icon measuring 32 x 32 pixels.
+* A `manifest.json` file that specifies the attributes of your app.
These files must be zipped in an app package for use in uploading your tab to Teams. Microsoft Teams loads the `contentUrl` specified in your manifest, embeds it in an <iframe\>, and renders it in your tab.
ngrok http 3978 --host-header=localhost
1. Open **Apps** and select **Import app**.
-1. The name of your app package is **tab.zip**. It's available in the following path:
+1. The app package file name is `tab.zip` and it is available at `/bin/Debug/netcoreapp3.1/tab.zip` path.
- ```
- /bin/Debug/netcoreapp3.1/tab.zip
- ```
-
-1. Select **tab.zip** and open it in the Developer Portal.
+1. Select `tab.zip` and open it in the Developer Portal.
1. A default **App ID** is created and populated in **Basic information** section.
This folder contains the following required app package files:
* A **full color icon** measuring 192 x 192 pixels. * A **transparent outline icon** measuring 32 x 32 pixels.
-* A **manifest.json** file that specifies the attributes of your app.
+* A `manifest.json` file that specifies the attributes of your app.
These files must be zipped in an app package for use in uploading your tab to Teams. Microsoft Teams loads the `contentUrl` specified in your manifest, embeds it in an IFrame, and renders it in your tab.
platform Removal Page https://github.com/MicrosoftDocs/msteams-docs/commits/main/msteams-platform/tabs/how-to/create-tab-pages/removal-page.md
You can extend and enhance the user experience by supporting removal and modific
## Enable your tab to be reconfigured after installation
-Your **manifest.json** defines your tab's features and capabilities. The tab instance `canUpdateConfiguration` property takes a Boolean value that indicates whether a user can modify or reconfigure the tab after it is created. The following table provides the property details:
+Your `manifest.json` defines your tab's features and capabilities. The tab instance `canUpdateConfiguration` property takes a Boolean value that indicates whether a user can modify or reconfigure the tab after it is created. The following table provides the property details:
|Name| Type| Maximum size | Required | Description| ||||||