How Outlook Knows About Online Teams Meetings

MAPI Properties to Point to Intelligent Communications Services

Has it ever crossed your mind what differences exist between a regular meeting event scheduled in an Outlook calendar and a Teams meeting? I must admit to not caring too much about this topic until a senior Microsoft engineer said that the difference lies in the properties of the meeting event created by Outlook. Normal meetings have a set of properties such as the meeting time, time zone, and attendees. Online meetings have these properties too, but also have a set of Intelligent Communications Services properties that tell Outlook how to connect users to the online meeting.

Although the assertion was entirely logical (of course Outlook needs to know how to connect to an online meeting), my curiosity was piqued and I looked a little further.

Scheduling an Online Meeting with Outlook

The key to scheduling a teams meeting with Outlook is the Teams meeting add-in that the client automatically loads based on the user’s online configuration. If they use Skype for Business Online, Outlook loads the Skype for Business Online add-in; if it’s Teams, Outlook loads that add-in. Apart from adding a button to the calendar menu bar, the add-in serves one major purpose: when the user creates an online meeting, the add-in creates a meeting slot with the online meeting service and inserts the details of the meeting as a URI in the meeting body (Figure 1).

Scheduling an online teams meeting with Outlook
Figure 1: Scheduling an Online Meeting with Outlook

When the time of the Teams meeting rolls around, the user clicks the URI. The target online service responds by opening a web page to allow the user join the meeting. The services differ in how they handle the link. For instance, if the Teams desktop client is logged into the home tenant of the user who created the meeting, the meeting starts in the desktop client. On the other hand, if the user is logged in as a guest to another tenant, Teams offers the option of joining with the with the desktop client or by opening the browser client. The flow is slightly different in the mobile clients, but essentially the key is the URI because it contains the necessary information for the application to connect to the meeting. An example of a URI created for a Teams meeting scheduled through Outlook is:

https://teams.microsoft.com/l/meetup-join/19%3ameeting_MDY3ZjY0MjAtNTNmZS00NWVkLTk0Y2EtNzhjNTI5MmM5ZGUz%40thread.v2/0?context=%7b%22Tid%22%3a%22b662313f-14fc-43a2-9a7a-d2e27f4f3478%22%2c%22Oid%22%3a%22eff4cd58-1bb8-4899-94de-795f656b4a18%22%7d

As you’d expect, the same kind of URI is inserted into meetings created using the Teams calendar app.

Users can fetch the link to send to other people from the meeting properties through the Teams calendar app by selecting a meeting (Figure 2) or using right click to view meeting details (Figure 3).

Fetching a Teams meeting deeplink
Figure 2: Selecting a Teams meeting allows access to the meeting deeplink
Right click reveals the Teams meeting deeplink
Figure 3: Right click reveals the Teams meeting deeplink

Outlook Meeting Properties

Outlook stores the information identifying an event as an online Teams meeting as MAPI properties for an item in the Calendar folder of the mailboxes of meeting participants. You can see the properties with a utility like MFCMAPI, which reveals items like OnlineMeetingConfLink (Figure 4). This property contains the name of the meeting organizer among other information. According to Microsoft’s documentation, this is a Globally Routable User Agent URI (GRUU), or a SIP URI that can be used by a user agent (client) to connect to an online meeting. Because the description comes from the Microsoft Exchange ActiveSync protocol documentation, it’s probably a link designed for use by mobile clients that synchronize the calendar folder to a device.

Figure 4: The OnlineMeetingConfLink property for an online meeting

Another interesting property is SkypeTeamsMeetingURI (Figure 5). This is the link that meeting participants use to join an online meeting. As the name suggests, the same property can be used by either Skype for Business Online or by Teams.

The SkypeTeamsMeetingURI property for an online meeting
Figure 5: The SkypeTeamsMeetingURI property for an online meeting

Other properties exist for online meetings that I don’t describe here. But the important point is that the difference between a regular meeting event created in an Outlook calendar and one that involves an online meeting are a set of properties holding information to allow clients to connect to the online service. Whether that quite counts as a connection to Intelligent Communication Services is another matter.


You might not need to know this kind of esoteric information right now, but there’s no doubt that filling in knowledge gaps around Office 365 apps makes it easier for people to understand how to work with the technology. Which is a great reason to subscribe to the Office 365 for IT Pros eBook and learn about stuff that might not be documented or explained elsewhere.