Sending teams messages without setting up an Office 365 connector requires an authenticated user to send the messages. This user (or users) is stored in a Teams Messaging Account in FlexDeploy which can be managed at Topology->Integrations->Messaging.
The required prerequisites for sending messages this way are explained below.
This setup method is also required for approving tasks from Microsoft Teams. So, to approve tasks from Microsoft Teams (available in the 220.127.116.11 release), you must configure BOTH webhooks and a Teams Messaging Integration.
Teams Messaging Accounts
This plugin uses a Teams Messaging Account which contains all relevant credentials to connect to the Teams workspace. Navigate to Topology->Integrations->Messaging and create a new Account with the Provider set to MicrosoftTeams.
Create an Application in the Azure portal
You must create an application in the Azure portal so the Microsoft identity platform can provide authentication and authorization services for your application.
Follow these steps to create the app registration:
- Sign in to the Azure portal
- If you have access to multiple tenants, use the directory + subscription filter in the top menu to select the tenant in which you want to register an application.
- Search for and select Azure active directory.
- Under Manage, select app registrations, then new registration.
- Enter a Name for your application and specify who can use the application.
- Select register to complete the initial app registration.
- Open application capture application (client) ID and directory (tenant) ID from app registration.
Create a new client secret and capture client secret.
Record the secret's value for use in your client application code - it's never displayed again after you leave this page.
- Create API permissions
Select API permissions > Add a permission > Microsoft Graph
Select delegated permissions. You can type the names of these permissions in to filter and find the necessary permissions quickly. The 7 or 8 permissions you need are:
- User.ReadBasic.All - This permissions is required to approve tasks through Microsoft Teams.
- Chat.ReadWrite - This permission is a new requirement in 18.104.22.168. It is only needed when chatting to individual users, the first time that a message is send to that user.
The following image shows the minimum permissions required to send messages to teams and users.
After adding them all, click the Grant admin consent button. You should see checkmarks by each permission in the status column.
Setting up Certificates
You may need to install the certificate for https://graph.microsoft.com/.default into your Java keystore. If this is the case, you will get an error about building a certificate path.
- All Microsoft Teams versions are supported.
- Send messages to a Microsoft Teams channel or user.