This guide explains how to set up a Teams bridge with your Element host. You will need to be an administrator of your Teams group to set the bridge up. Connecting to a Teams workspace that you do not control is currently not supported.
The setup process requires fetching a few details from your Teams workspace.
- In the Teams app, not the admin page. Click the three dots next to your Teams, then
Get link to team
- Paste this link into the
Teams Linkfield on the Teams Bridge setup form on https://ems.element.io/user/hosting#/integrations
Link Teams to Element
- Follow the Microsoft flow and allow access
Bot Username and Password
The bridge requires a Teams user to be registered as a
bot to send messages on behalf of Matrix users. You just need to allocate one user from the Teams interface to do this.
- First, you must go to the Azure Active Directory page.
- Click users.
- Click New user.
Create useris selected.
- Enter a User name ex.
- Enter a Name ex.
- Enter an Initial password.
- Create the user.
- Optionally, set more profile details like an avatar.
- Enter a User name ex.
- You will now need to log in as this new bot user to set a permanent password (Teams requires you to reset the password on login).
- After logging in you should be prompted to set a new password.
- Enter the bot username and password into the integration form.
Users can be automatically prompted to link their Teams account to their Element account when they join
an Element workspace. Ticking the Send a welcome message to new users of the bridge checkbox will make the bridge bot user start a DM with any new joining Element users and let them know how to get connected. If you wish to disable this behavior, leave this box unchecked.
Max Teams users
The bridge is billed based upon the number of participating Teams-side users, so you should set the maximum number of users you'd expect to see using the bridge to ensure your costs meet expectations. If the number of active Teams users exceeds this value, the bridge will be blocked, until you increase the limit. Whatever you set the limit to, you will only be charged for the number of remote users actively using the bridge.
In a chat with the "Teams Bridge" bot, users can manually connect their Teams account with their EMS account by sending the
login command to the bridge bot. The bot will reply with a link that users can use to login
You must authenticate with MS Teams to continue: <login.microsoftonline.com link>
After succesfully login in you should get a message like:
You are now authenticated as **Teams User**
To add a bridged Microsoft Teams team as a space in Element, this can be accomplished by sending the
This should add a new space to the sidebar of you Element client with the same name as the teams that you had previously setup with the Bridge, with individual channels showing up as rooms within the new space.
Other commands and option are availble via sending
help to the bot. The current help text is show below:
help- This help text
login- Authenticate with MS Teams to enable puppeting
logout- Remove your MS Teams authentication
startupnotice enable- Send a notification to this room when the bridge is restarted
startupnotice disable- Disable startup notifiations
joinspace- Join the space(s) for your team(s)
- Private channels are not supported