page_type | description | products | languages | extensions | urlFragment | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
sample |
Demonstrating on how a bot can receive all channel messages with RSC without @mention. |
|
|
|
officedev-microsoft-teams-samples-bot-receive-channel-messages-withRSC-csharp |
Using this C# sample, a bot can receive all channel messages with RSC without @mention.
This feature shown in this sample is currently available in Public Developer Preview only.
-
.NET Core SDK version 6.0
determine dotnet version
dotnet --version
-
Ngrok (For local environment testing) Latest (any other tunneling software can also be used)
-
Teams Microsoft Teams is installed and you have an account
-
Register a new application in the Azure Active Directory – App Registrations portal.
-
Setup for Bot
- Register a AAD aap registration in Azure portal.
- 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/messages
as the messaging endpoint.
- 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.json
and fill in the following details:{{BOT-ID}}
- Generated from Step 1 while doing AAd app registration in Azure portal.{{BOT-PASSWORD}}
-Generated from Step 1, also referred to as Client secret
-
Run in Visual Studio
- Launch Visual Studio
- File -> Open -> Project/Solution
- Navigate to
ReceiveMessagesWithRSC
folder - Select
ReceiveMessagesWithRSC.csproj
file - Press
F5
to run the project
- This step is specific to Teams.
-
Edit the
manifest.json
contained in theAppManifest
folder to replace your Microsoft App Id (that was created when you registered your bot earlier) everywhere you see the place holder string<<YOUR-MICROSOFT-APP-ID>>
(depending on the scenario the Microsoft App Id may occur multiple times in themanifest.json
) also update the<<DOMAIN-NAME>>
with the ngrok URL` -
Edit the
manifest.json
for<<MANIFEST-ID>>
replace it with anyGUID
using guid generator. -
Edit the
manifest.json
forwebApplicationInfo
resource"api://botid-{{MicrosoftAppId}}"
with MicrosoftAppId. E.g."api://botid-{{MicrosoftAppId}}"
. -
Zip up the contents of the
AppManifest
folder to create amanifest.zip
-
Sideload in a team to test
- Select or create a team
- Select the ellipses ... from the left pane. The drop-down menu appears.
- Select Manage Team, then select Apps
- Then select Upload a custom app from the lower right corner.
- Then select the
manifest.zip
file fromAppManifest
, and then select Add to add the bot to your selected team.
-
Select a channel and enter a message in the channel for your bot.
The bot receives the message without being @mentioned.
- Showing Welcome message
- Showing messages based on option selected
- Adding to group chat
- Receives messages in group chat without being @mentioned.
To learn more about deploying a bot to Azure, see Deploy your bot to Azure for a complete list of deployment instructions.