How To Set Up Teams Federation With Slack

Mio
Dispatch by Mio
Published in
8 min readSep 21, 2022
Teams Federation With Slack

If you need to set up Teams federation with Slack for your messages, Mio provides behind-the-scenes message interoperability.

This allows you to connect channels or users cross-platform so they can send a message from Teams to Slack or from Slack to Teams.

In this guide, we’ll show you how to set up Teams federation with Slack for the first time.

Configure Microsoft Teams for Mio

Mio is the interoperability middleware you need to enable Teams federation with Slack.

Before installing Mio, you will need to configure your Microsoft Teams settings for federation with Slack.

Note: The settings in question are only accessible by Microsoft Teams admins.

Manage apps

The first settings you will need to check are in the Manage apps section of your admin center.

Once there, you should:

  1. Click the Org-wide app settings button in the top right corner.
  2. Turn ON both Allow third-party apps and Allow interaction with custom apps. Click Save.
  3. In the search box on the right, search for “Mio”.
  4. Make sure the Status is marked as Allowed.

Permissions policies

After configuring the settings in the Manage apps section, navigate to the Permissions policies of the admin center.

  1. Select the permission policy your organization is currently using.
  2. In the Third-party apps section, choose one of these three options:
  • If your company chooses to Allow specific apps and block all others, add the Mio app to the allow list.
  • Note: If you made changes to this policy, it could take 12–48 hours to take effect.

Azure portal authorization

To grant admin consent for your organization, you will need to navigate to your Azure portal and sign in as a global administrator.

  1. Select Azure Active Directory > Enterprise Applications. Search for Mio in the search bar and click on the Mio name.
  2. In the left sidebar, click Permissions.
  3. Then, click the button Grant admin consent for [your org].
  4. Click Accept on the list of permissions that the app needs.

Install the Mio app

Now that you have configured your Microsoft Teams settings, you are ready to install the Mio app onto your Microsoft Teams tenant.

To do that, you will need to authorize the Mio app as a Microsoft Teams administrator by following this authorization link.

This will pull up a list of scopes and permissions that Mio needs to function.

Once checking over the scopes and permissions, check the Consent on behalf of your organization button and click Accept.

You should see a “Success!” page if installed correctly.

If you encounter a 500 error, close the webpage, clear your browser cookies and try again. (How to clear cookies + cache in every browser).

Now that the Mio app is installed at the tenant level, teams, channels, and users will be discoverable by Mio.

Import Microsoft Teams in Connect Platforms

You’ve successfully configured your Microsoft Teams tenant and installed the Mio app, but before you can chat cross-platform, Mio needs to know where messages are going to and coming from.

The Connect Platforms tab in the Mio Hub is where you will choose which Teams, channels, and users will be discoverable for cross-platform chat. Importing platforms does not automatically connect channels and users for cross-platform chat. That is done in the channel sync and user sync tabs.

To import Microsoft Teams, click the red plus in the top right corner, and click Connect with Microsoft Teams.

Once you click Connect with Microsoft Teams, you will go through the OAuth flow which authorizes Mio to see the list of teams, channels, and users within the Microsoft tenant that the admin belongs to.

After authorizing, you will be presented with a list of teams. Choose the team(s) that you want to enable for cross-platform chat and press Confirm & Connect.

Mio will import the channels & users belonging to that team, and make them discoverable in the Channel Sync and User Sync tabs, which is where you will enable cross-platform chat.

Now you can proceed to configure your Slack settings before connecting Slack via Connect Platforms.

Configure Slack for Mio

You will need to configure your Slack settings just like you did with Microsoft Teams. Only Slack administrators can configure settings.

Workspace settings

To begin configuring Slack, navigate to your Slack workspace.

  1. In your Slack app, select your workspace name in the top left corner. Under Settings & administration, click Workspace settings.
  2. Click on the Permissions tab at the top.
  3. Scroll down to Channel Management and click Expand.
  4. For People who can create public channels, set it to Everyone, except guests. Save your settings.

App management settings

Next, you will need to configure the App Management Settings.

  1. In your Slack app, select your workspace name in the top left corner. Under Settings & administration, select Manage apps.
  2. Click App Management Settings in the left column.
  3. Turn OFF both Require App Approval and Only allow apps from the Slack App Directory.

Import Slack in Connect Platforms

Now you’ve configured your Slack workspace settings, you can connect your Slack workspace via Connect Platforms just as you did with Microsoft Teams.

Slack uses a different structure to Microsoft Teams. Slack has a single workspace with many channels, whereas Microsoft Teams has several teams (each with their own set of channels) within a larger tenant.

Slack’s structure has consequences for Mio’s Connect Platforms function — instead of choosing the teams (and therefore channels & users), Mio will make all channels and users within the workspace discoverable.

To import Slack, click the red plus in the top right corner, and click Connect with Slack.

Mio will ask to approve a list of scopes and permissions:

Click Allow to start importing channels and users into the Mio Hub.

Now, you’ve connected Microsoft Teams and Slack to Mio via Connect Platforms. The last step to enable cross-platform chat is to connect channels in the Channel Sync tab.

Syncing channels

Chatting occurs in either direct messages (DMs) or channels. Within Channel Sync, you can either connect two existing channels on different platforms or add one channel to the other platform with a click of a button.

To do this, click the Red Plus in the top right corner and click Create new sync.

Select the Slack workspace and the Microsoft Teams team where the current channel you want to connect is or where you want Mio to create a channel. Once selected, click Continue.

You will now see a list of channels that Mio has found on Slack and Microsoft Teams.

If you want to connect the General channel in Slack with the general channel in Microsoft Teams, click Connect on both sides.

If you want to add a Marketing channel from Zoom over to Teams, click the Add button.

This automatically creates a channel called Marketing in Microsoft Teams.

If you need to enable cross-platform for direct messages, enable them in User Sync

Enabling users for direct messaging

The goal of Mio is to have users stay on their preferred chat app or ‘Primary Platform’.

Mio can represent that user across platforms in channels using impersonation via a Mio bot. However, to chat in direct messages across platforms, the user has to be represented on both platforms in some form.

For Slack, users are always represented as chat bots. In Microsoft Teams, users can either be represented as guest accounts or full accounts.

In the User Sync tab, your job is to select the primary platform for your users and sync users cross-platform using one form of representation.

If you select Slack as primary and click the Teams button, one of two things will happen. If the user has a Teams license, Mio will send that user a prompt on their Slack account that will ask the user to authorize Mio to use their Microsoft account to post messages from Slack to Teams on their behalf.

If the user doesn’t have a Teams license, then Mio will automatically provision a guest account on the Teams tenant, and then use that account to post messages from Slack to Teams.

If you select Teams as the primary platform, and click the sync button on Slack, Mio will automatically provision a chat bot for that user on the Slack workspace.

This chat bot is just like a user in terms of how you interact with it. You can search for this user by name, initiate a DM, and see the user avatar. Chat bots can be identified by the app tag next to the user profile name (e.g. John Smith APP).

What’s next?

You have successfully configured your Teams federation with Slack settings!

In the future, if you need to connect more channels or sync more users, there are a few things to keep in mind:

  1. When you create a channel in one platform, it will not automatically connect cross-platform.
  2. You should re-import the platform where the channel was created in Connect Platforms then connect the channel via Channel Sync tab.
  3. New users who are onboarded will need to be synced in the Mio Hub to be enabled for cross-platform direct messaging.

Ready to set up Teams federation with Slack? Get started here.

--

--

Mio
Dispatch by Mio

Chat better, together. Mio powers cross-platform messaging across Microsoft Teams, Slack, Webex, and Zoom. Learn more at https://m.io