Hello Readers, I hope you’re well.

I know you know that Microsoft Teams (aka Teams) is the hub for Teamwork. And that it is a great way to collaborate with internal colleagues and external contacts using federation. Right now, Teams lets you chat and call using audio and video with other organisations using Teams and Skype for Business. And soon, you’ll be able to chat and call your external contacts using consumer Skype.

But what if your external contacts aren’t using any of these. What if they are still using Slack or Cisco Webex Teams?


For those that remember that far back, Lync and even Office Communicator could do native federation with 3rd party communications platforms like Google Talk, Cisco Jabber, IBM Sametime or Yahoo Messenger using Extensible Messaging and Presence Protocol (XMPP).

Source: Can Lync IM federate with Google Talk or Jabber instant messaging?

OCS, Lync 2010 and 2013 and even Skype for Business Server 2015 had a built in or installable XMPP gateway which was used to create connections with these services.

Then, one by one, the vendors closed the door on XMPP and to Microsoft. In fact, only Cisco Jabber still has XMPP built in today, but that’s considered legacy.

The final nail in the coffin was struck by Microsoft when they removed the XMPP gateway from Skype for Business Server 2019.

What about Teams?

Teams doesn’t have an XMPP gateway and to be honest, it doesn’t need one. As I said, everyone has closed the door on XMPP anyway. What you need is an app that connects to a service that can connect to Teams and other services, then play the role of arbitrator between the platforms.

This isn’t dissimilar to Cloud Video Interop services. CVI is a 3rd party service that can be used by virtually any standards based video teleconferencing system to join a Teams meeting.

The difference is though, that none of the platforms use a standard that anyone can agree on to create a communication channel between services. This means that all of the platforms need to have an application to connect back to the arbitration service and then to the other system. You still with me?

Fortunately, there is a service that can do this. And I’ve been playing with the Beta.

Mio Universal Connector

The Mio Universal Connector is a cloud service that acts as arbitrator and a series of Apps that are installed into Microsoft Teams, Cisco Webex Teams or Slack to connect each service to a communication channel.

In simple terms, it enables chat between users in each of these platforms. Rather than opening up federation between actual users, it creates a Mio connected channel in a Teams team that is used to chat with a “room” or channel or whatever they are called in Slack and Spark Webex Teams.

This means that every member of a Teams team can conduct persistent chat with the members of the channel in the other services.

From Teams, you’re really chatting with the Mio service. When you receive a reply from the other service, it actually comes from the Mio Bot (app) in Teams. This isn’t a problem. As I said, Teams and Spark can’t talk directly.

How do you set it up?

I’m glad you asked. There are a few steps, but it is pretty painless. I’ll show you how to set it up from Microsoft Teams and from Slack.

What do you need?

  • You need a Mio Universal Connector license – I used the beta because I received an invitation
  • In any of the services, you need rights to install apps in the services and in the team/channel you want to use it on.

I set it up in my own Teams tenancy and I of-course have admin rights. I tried setting it up in Webex Teams using an account I already have and I didn’t have rights so couldn’t complete the steps. I didn’t have a Slack account, but I set up a free one just to use to try this out and I was able to complete the integration. I’ll show you Teams and Slack. I may update with Webex Teams at a later date.

Set up in Teams

As I said above, I got invited to the beta by email. I clicked on a link and it opened up a page. On the page you’ll see a brief description and a link to accept the invite.

Now click on Microsoft Teams

Now review the instructions and download the zip file

Now go to Teams and create a new channel to use for these communications. You can use an existing channel of course. But I thought I would keep it separate.

Now go to Teams and click on Apps on the left rail to open the App store. And click on Upload a Custom App

Then choose upload for me or my Team so that everyone in the team can use it.

Browse to the zip file you downloaded and click open

Now click on Add and Add to a Team

Now search for and choose a team to install the app into

And then click Set up a bot

Then it popped up with an authentication required message. Hit Open Direct Chat

Then Authenticate

Then tick consent on behalf of your organization and click Accept

Now this opens another popup showing instructions on how to finish the set up and invite someone externally to communicate with you

Now go to the channel you set up earlier and hit the menu ellipses and find an app. Then choose Mio Universal Channel

Then click on convert and invite to convert the channel you’re in to a Mio Chat channel.

Then you’ll see a another popup giving you the invitation URL to send out to those you want to connect with

This is also in the “posts” in the channel

Copy the URL and send it by email or other means to whoever you want to

Set up in Slack

For this bit, I clicked on the URL and it took me to service choice page. Choose Slack

I was logged into Slack in the browser. It opened a permissions page. Click allow

You’ll get a message saying the integration was successful

You will see that there is a new Mio channel and a Mio Universal Channels list in Slack

Then open Slack or Teams and start chatting. Here’s one I sent from Slack. It was received from the Mio bot but it has the name of the person

Here was my reply from Teams

And what it looked like in Slack

If you want to invite anyone else to this channel from Slack, just click on the Mio app and you’ll see the share link

And that’s it


As you can see it is easy to set up provided you have permissions to install apps and augment services. If you don’t, you’ll get a “that didn’t work” page where you can enter details to receive more info

It is also simple and east to use. Just chat as you normally would. One thing I can say is that its just as easy in Slack to start a new thread rather than reply as it is in Teams. Easier in fact for someone that’s never used Slack before today. I’ll let you work out how to reply and use the thread side bar (which is bizarre). I expect that won’t be a problem with seasoned Slackers (is that what you call them?). Whatever.

In Teams, if you do hit reply to a thread, it inserts the bot name in the reply

now if you insert your message after that, it doesn’t like it. Because you’re chatting with the bot, not the service. And you’re get a reply

Just delete the @ mention completely to reply. I don’t know if this is a bug in replies or something. But if Mio can fix this it saves a step.

If you want to know more about Mio go to the website and open a dialogue. At the bottom of the page there’s a link to join the Universal Connector beta

Or use the communication form.

And that’s all folks. Hope it was useful.