| page_type | sample | ||||
|---|---|---|---|---|---|
| description | Microsoft Teams meeting extensibility sample for iteracting with Content Bubble Bot in-meeting | ||||
| products |
|
||||
| languages |
|
||||
| extensions |
|
||||
| urlFragment | officedev-microsoft-teams-samples-meetings-content-bubble-csharp |
This sample illustrates how to implement Content Bubble In-Meeting Experience.
- Microsoft Teams is installed and you have an account
- .NET Core SDK version 6.0
- ngrok or equivalent tunnelling solution
-
Register a new application in the Azure Active Directory – App Registrations portal.
-
Setup for Bot
- Also, register a bot with Azure Bot Service, following the instructions here.
- Ensure that you've enabled the Teams Channel
- While registering the bot, use
https://<your_ngrok_url>/api/messagesas the messaging endpoint.
NOTE: When you create your app registration, you will create an App ID and App password - make sure you keep these for later.
-
Setup NGROK
- Run ngrok - point to port 3978
# ngrok http -host-header=rewrite 3978 -
Setup for code
-
Clone the repository
git clone https://github.com/OfficeDev/Microsoft-Teams-Samples.git
-
Modify the
/appsettings.jsonand fill in the following details:{{MICROSOFT_APP_ID}}- Generated from Step 1 while doing AAd app registration in Azure portal.{{ MICROSOFT_APP_PASSWORD}}- Generated from Step 1, also referred to as Client secret{{ BaseURL }}- Your application's base url. E.g. https://12345.ngrok.io if you are using ngrok.
-
If you are using Visual Studio
- Launch Visual Studio
- File -> Open -> Project/Solution
- Navigate to
samples\meetings-content-bubble\csharpfolder - Select
ContentBubbleBot.slnfile
- Setup Manifest for Teams
-
This step is specific to Teams.
- Edit the
manifest.jsoncontained in the ./Manifest folder to replace your Microsoft App Id (that was created when you registered your app registration earlier) everywhere you see the place holder string{{Microsoft-App-Id}}(depending on the scenario the Microsoft App Id may occur multiple times in themanifest.json) - Edit the
manifest.jsonforvalidDomainsand replace{{domain-name}}with base Url of your domain. E.g. if you are using ngrok it would behttps://1234.ngrok.iothen your domain-name will be1234.ngrok.io. - Zip up the contents of the
Manifestfolder to create amanifest.zip(Make sure that zip file does not contains any subfolder otherwise you will get error while uploading your .zip package)
- Edit the
-
Upload the manifest.zip to Teams (in the Apps view click "Upload a custom app")
- Go to Microsoft Teams. From the lower left corner, select Apps
- From the lower left corner, choose Upload a custom App
- Go to your project directory, the ./Manifest folder, select the zip folder, and choose Open.
- Select Add in the pop-up dialog box. Your app is uploaded to Teams.
Message the Bot by @ mentioning to interact with the content bubble.
- You will see agenda items listed in an Adaptive Card.
- Select any option and click on Push Agenda button
- You can submit your feedback on either Content Bubble/Adaptive card sent in chat.




