Cisco Webex Room Kit Integration with Microsoft Teams: Complete Setup Guide

In enterprise boardrooms, a common infrastructure conflict occurs: an organization standardizes on Microsoft Teams for daily collaboration, but possesses hundreds of thousands of dollars of premium Cisco Webex Room Kits (Room Bar, Room Kit Plus, Room Kit Pro, Room 55/70) equipped with Touch 10 or Room Navigator controllers.

Historically, connecting a Cisco SIP/H.323 room endpoint to a Microsoft Teams meeting required expensive third-party Cloud Video Interop (CVI) licenses (from Cisco, Poly, or Pexip). Today, Cisco RoomOS provides a free, native solution: Direct Guest Join (DGJ) via an embedded Chromium WebRTC engine. When configured correctly, the Cisco touch panel automatically displays a green “One Button to Push” (OBTP) join button for any calendar invite containing a Teams link.

However, getting DGJ to work reliably requires precision across three distinct layers: Exchange Online calendar parsing, Cisco Control Hub / xAPI web engine parameters, and Teams tenant anonymous join policies. This guide provides the complete, field-tested deployment runbook.

πŸ“‹ The Enterprise Deployment Profile:
Hardware Endpoint: Cisco Webex Room Kit Plus
Touch Controller: Cisco Room Navigator / Touch 10
Operating System: Cisco RoomOS 11.x
Room Mailbox: cisco-boardroom@contoso.com
Integration Method: Direct Guest Join (WebRTC)
License Cost: $0 / Free (Native RoomOS feature)

Architecture: How Direct Guest Join (WebRTC) Works

Unlike standard Cisco SIP calls that route through Expressway or a Unified Border Element (CUBE), Direct Guest Join runs entirely over an internal web browser inside the Cisco Room Kit:

Phase 1: Calendar Invite & Regex URL Parsing (OBTP)
User Outlook Client
──(Teams Meeting Invite)──►
Exchange Online Room Mailbox
──(Microsoft Graph / EWS)──►
Cisco RoomOS Engine
RoomOS parses the meeting body regex for https://teams.microsoft.com/l/meetup-join/... and renders the green “Join” button on the touch screen.

Phase 2: Meeting Join via Embedded Chromium WebRTC
User presses [ Join Teams ]
──(Launches Web Engine)──►
Chromium Browser (RoomOS)
──(HTTPS / WebRTC Port 443)──►
Microsoft Teams Web Client
Audio, video, and HDMI content share connect directly to Microsoft’s edge media processors over standard encrypted WebRTC.


Step 1: Exchange Online Mailbox Setup (The OBTP Regex Prerequisite)

For the Cisco Touch 10 or Room Navigator to display the green “One Button to Push” button, the Exchange Online mailbox must preserve the Teams meeting URL inside the calendar body. If Exchange strips the body comments, the Cisco device sees an empty invite and the button will never appear.

PowerShell: Exchange Online Room Tuning

# 1. Connect to Exchange Online
Connect-ExchangeOnline

# 2. Provision the Room Mailbox for the Cisco device
New-Mailbox -Room `
  -Name "Conf-Room-Cisco-Plus" `
  -DisplayName "London Boardroom (Cisco Room Kit)" `
  -PrimarySmtpAddress "cisco-boardroom@contoso.com"

# 3. CRITICAL: Preserve Comments & Enable External Meetings
Set-CalendarProcessing -Identity "cisco-boardroom@contoso.com" `
  -AutomateProcessing AutoAccept `
  -DeleteComments $false `
  -DeleteSubject $false `
  -ProcessExternalMeetingMessages $true

Why -DeleteComments $false is mandatory: Teams invites store the meeting join coordinates in the HTML body. By default, Exchange strips comments from room calendar appointments. Setting this to $false allows the Cisco parser to extract the URL.


Step 2: Enabling Direct Guest Join in Cisco Control Hub

If your Cisco Room Kit is registered to the Webex Cloud, configure the WebRTC policy directly in Cisco Control Hub (admin.webex.com):

βš™οΈ Cisco Control Hub Configuration Path:
  1. Log into Cisco Control Hub (admin.webex.com).
  2. Navigate to Management βž” Devices and select your Room Kit (or apply globally under Device Settings).
  3. Scroll to the Support & Troubleshooting section and locate Web Engine:

       β€’ Toggle Web Engine to Enabled.
  4. Locate Microsoft Teams Calling (WebRTC / Direct Guest Join):

       β€’ Toggle to Enabled.
  5. Under Content Sharing, ensure In-Meeting Content Sharing via WebRTC is set to Allowed (enables local HDMI / USB-C laptop sharing during Teams calls).

Step 3: Device-Side xAPI CLI Commands (On-Premises / Expressway)

If your Cisco Room Kit is registered to on-premises infrastructure (Cisco Unified Communications Manager / Expressway) or you prefer using the SSH command line, execute these exact xAPI configuration commands:

SSH: admin@10.20.50.15 (Cisco Room Kit Plus)

# 1. Enable the embedded Chromium Web Engine
xConfiguration WebEngine Mode: On

# 2. Enable native Microsoft Teams WebRTC parsing
xConfiguration WebEngine Features MicrosoftTeams: On

# 3. Ensure the One-Button-To-Push (OBTP) booking interface is visible
xConfiguration UserInterface Bookings Visibility: Always

# 4. Enable WebRTC content sharing from local HDMI ingest
xConfiguration WebEngine Features InCallContentSharing: On

# 5. Commit and verify status
xStatus WebEngine
*s WebEngine Availability: Available
** end

GUI Web Admin Alternative: Access the phone’s web interface (https://<cisco-ip>) βž” Setup βž” Configuration βž” WebEngine βž” Set Mode: On and MicrosoftTeams: On.


Step 4: Microsoft Teams Tenant Setting β€” Anonymous Join Policy

Direct Guest Join operates by having the Cisco Room Kit connect as an authenticated external guest or anonymous participant via WebRTC. If your Teams tenant strictly blocks anonymous participants from joining meetings, the Cisco device will hit a wall when attempting to connect.

  1. In the Microsoft Teams Admin Center (admin.teams.microsoft.com), navigate to Meetings βž” Meeting settings.
  2. Under the Participants section, verify:

    β€’ Anonymous users can join a meeting: Must be set to On.
  3. Navigate to Meetings βž” Meeting policies βž” Global (Org-wide default):

    β€’ Verify “Anonymous users can interact with apps in meetings” is enabled if third-party content sharing is required.

Step 5: Perimeter Firewall & WebRTC Port Requirements

Direct Guest Join connects directly from the Cisco hardware over your corporate LAN to Microsoft’s Azure cloud. Ensure your perimeter firewall does not perform SSL/TLS deep inspection on WebRTC traffic to Microsoft:

Protocol & Destination Port Range Purpose
TCP βž” *.teams.microsoft.com 443 (HTTPS) WebRTC signaling and web engine application load.
UDP βž” 13.107.64.0/18, 52.112.0.0/14 3478, 3479, 3480, 3481 STUN / TURN media relays for audio/video traversal.
UDP βž” Microsoft Audio/Video IP Blocks 50000 – 50059 Real-time interactive SRTP audio/video media streams.

Touch 10 / Room Navigator User Experience: Before vs. After

❌ Broken / Default State (No OBTP)
Weekly Project Sync
11:00 AM – 12:00 PM
“No join button visible. Users forced to dial long SIP conference URIs manually on keypad.”

βœ… Direct Guest Join Active (OBTP Enabled)
Weekly Project Sync
Microsoft Teams Meeting | 11:00 AM
β–Ά Join Microsoft Teams


The Top 3 Real-World Troubleshooting Gotchas

Gotcha 1: The Green “Join” Button Never Appears on Touch 10

Root Cause: The Exchange Online calendar engine stripped the HTML invite body. If the Cisco endpoint cannot locate teams.microsoft.com in the invite, OBTP will not trigger.

The Fix: Run Get-CalendarProcessing -Identity "cisco-boardroom@contoso.com" | Format-List DeleteComments. If it returns True, execute Set-CalendarProcessing -Identity "cisco-boardroom@contoso.com" -DeleteComments $false. Then send a fresh test invite.

Gotcha 2: Device Clicks “Join” but Hangs on White/Black Screen

Root Cause: The enterprise firewall is performing SSL Decryption / Deep Packet Inspection on HTTPS traffic to Microsoft, breaking WebRTC client certificate validation inside RoomOS.

The Fix: Add an explicit SSL Decryption bypass rule on your Palo Alto / Fortinet / Zscaler firewall for the Cisco Room Kit’s voice VLAN targeting *.teams.microsoft.com and *.skype.com.

Gotcha 3: Stuck at “Someone in the meeting should let you in soon”

Root Cause: The Teams meeting organizer’s tenant policy enforces a strict Meeting Lobby for anonymous or external participants.

The Fix: In the Teams meeting options (or tenant-wide meeting policy), configure “Who can bypass the lobby?” to “People in my organization and guests” or allow callers to bypass the lobby automatically.

Enterprise AV & Cisco-Teams Interop Consulting

Integrating Legacy Cisco Video Systems with Microsoft Teams?

Our certified video collaboration architects design hybrid Cisco-Teams interoperability roadmaps, Direct Guest Join rollouts, Cloud Video Interop (CVI) configurations, and Exchange room calendar automations.

Frequently Asked Questions (FAQ)

Does Cisco Direct Guest Join require additional licenses or hardware?

No. Direct Guest Join uses an embedded Chromium WebRTC engine included natively in Cisco RoomOS. It requires zero third-party Cloud Video Interop (CVI) licenses and zero on-premises gateway hardware, connecting directly over HTTPS to Microsoft Teams.

Why doesn’t the green “Join Teams” button appear on my Cisco Touch 10?

The most common cause is that the Exchange Online Room Mailbox has -DeleteComments set to $true in its CalendarProcessing settings. Exchange strips the HTML body containing the Teams meeting URL, preventing RoomOS from recognizing the invitation. Setting -DeleteComments $false resolves the issue.

Can I share my laptop screen during a Teams meeting from a Cisco Room Kit?

Yes. Direct Guest Join supports local content sharing over HDMI or USB-C. Ensure that “InCallContentSharing” is enabled in your Cisco xAPI configuration (xConfiguration WebEngine Features InCallContentSharing: On) so local video input is transmitted over the WebRTC stream to remote Teams participants.

What is the primary difference between Direct Guest Join and Cloud Video Interop (CVI)?

Direct Guest Join is a free web-based WebRTC connection providing single-screen layout and core audio/video/sharing. Cloud Video Interop (CVI) is a paid SIP/H.323 transcoding gateway service that provides dual-screen layouts, 1080p content sharing, and native integration for legacy endpoints incapable of running modern web engines.


Related Meeting Room & Infrastructure Guides

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *