Microsoft Teams
Requirements
Configure Microsoft Account
Your Microsoft Account should have access to Azure and Teams. You can check out the Azure and Teams documentation for information on how to make these connections.
Enable the Teams Channel
You can do this by opening the file data/global/botpress.config.json
in a text editor and setting the value to true
as below. You can also access this file from the Code Editor in the Botpress Studio user interface.
"modules": [
...
{
"location": "MODULES_ROOT/channel-teams",
"enabled": true
},
Configure HTTPS Endpoint
To connect to Microsoft Teams, an HTTPS endpoint is required. This is set in the externalUrl
field in botpress.config.json. You can use the following methods to create this endpoint:
- Create an HTTPS tunnel to your machine using Ngrok. This tutorial works on pretty much any Operating System. Tutorial
- Using Nginx and Let's Encrypt. This tutorial is based on the Linux Ubuntu 16.04 Operating System. Tutorial
- Use Serveo to create an HTTPS tunnel to your machine. Tutorial
⭐ Note: To test on localhost, you can also use services like pagekite or tunnelme to expose your server.
Before getting started...
Since the framework V4 is still in active development, some of these instructions may be slightly different. If you ever get stuck, check the Official Bot Framework documentation.
Setup
These instructions will guide you through any steps required to be up and running with that channel.
Create application & generate password
Log on to your account on Microsoft Azure
In the Azure portal, open the App registrations page.
Click on
New registration
, then choose a name for your application.In the section
Supported account types
, chooseAccounts in any organizational directory and personal Microsoft accounts
, then click onRegister
.Write down the value of
Application (client) ID
; we'll need it later for the channel configuration.Click on
Certificates & secrets
, then click onNew client secret
, then fill in the required fields.Write down the value of the generated secret, you can't access it later
Create your bot
- Navigate to the Bot Framework Registration Page and fill in the required information:
- Display name
- Bot handle
- The Microsoft App ID (that we generated in step 1)
- Messaging endpoint (keep it blank for now - more on that later)
You can also fill the other fields as you wish, but they will not impact Botpress.
Click on
Register
On the next page (
Connect to channels
), under the section,Add a featured channel
, click onConfigure Microsoft Teams Channel
, then click onSave
. No other configuration is needed at this point.
Configuration
Configure channel on Botpress
Open MS Teams (either the web version or the desktop client), then start a new conversation. In the search bar, paste your Microsoft App Id. You should see your registered bot.
Try talking to your bot. If you get a message saying that an administrator has disabled your bot, you must enable App sideloading in your Microsoft admin portal. See this article for more details.
You can now continue to next section.
Copy the file
data/global/config/channel-teams.json
to your bot-specific configuration folder:data/bots/YOUR_BOT_ID/config/channel-teams.json
Open the file, then set
enabled
totrue
, and set yourappId
andappPassword
created in step 1
Final configuration
Start Botpress, then you should see your Messaging Endpoint in the startup logs.
Open the Bot Framework page, then click on the name of your bot.
Click on the
Settings
tab, then scroll down toMessaging endpoint
.Set the value of the endpoint that was displayed in the logs. If it is missing, it should looks like that:
YOUR_BASE_URL/api/v1/bots/YOUR_BOT_ID/mod/channel-teams/api/messages