Microsoft Teams SIP Gateway

Capital expenses for 1000’s of new IP phones has been a top contributor to delayed migrations to newer phone systems, including Microsoft Teams.  Microsoft Teams now has the capability to connect and utilize several legacy, non-native Microsoft IP Phones.  This is possible due the recent announcement of general availability for SIP Gateway.  SIP Gateway is a 100% cloud-based solution, no infrastructure required and no additional cost. 

Compatible Devices

SIP Gateway supports Cisco (with MPP firmware), Polycom VVX, Yealink, and AudioCodes 400 series. 

If Cisco devices are using Enterprise firmware, they will be required to convert to Multiplatform firmware.  MPP firmware is not supported by Cisco Unified Communication Manager. 

AudioCodes devices may require an update to have all available options (such as Provisioning URL) when configuring SIP Gateway. 

Supported Features

At the GA release of SIP Gateway, the following features are supported.  While it may not be an extensive list or advanced feature, it does cover all basic calling requirements.  

  • Make calls 
  • Receive calls 
  • Multiple simultaneous calls 
  • Do not disturb 
  • Hold/Resume  
  • Mute/Unmute. 
  • Voicemail 
  • Message waiting indicator 
  • Sign-in and sign-out 
  • Teams meetings 
  • Call transfers 
  • Local call forwarding 


Initial Setup

There is a small amount of administrative setup to SIP Gateway, three simple steps. 

  1. Verify SIP Gateway is available in your tenant 

2. Enable users to use SIP Gateway via Teams Calling Policies.  Two methods: 

        a.)    Teams Admin Center (Voice > Calling policies)

b.) PowerShell 

Set-CsTeamsCallingPolicy -Identity Global – AllowSIPDevicesCalling $true 


3. Configure SIP Gateway Provisioning Server URL 

Which URL you use depends on your region.  There are three choices. 




Preferably, you would configure DHCP Scope options to push this URL administratively to devices, otherwise you can setup this provisioning URL manually per device.   

  • For Yealink phones, use option 66. 
  • For Cisco, Poly, and AudioCode phones, use option 160. 
  • For Cisco devices, append /$PSN.xml to the provisioning server URL. 

Pre-Provision Devices

For better onboarding control, you can add your devices to the Teams Admin Center in advance, one at a time or in bulk.  In the Teams Admin Center > Devices > SIP Devices, select Actions > Provision devices in the top right corner. 

You need two attributes to pre-provision devices, MAC Id and Location.  You can add this manually one at a time or use a CSV file to upload in bulk.  Once uploaded, you will need to select each device to generate a verification code.  This is used on the device to activate it.  Once activated, you can go back to the Teams Admin Center Provision Devices page and select waiting for sign in.  You can use this page to initiate sign in of each device using the Web Sign in method and device code. 

End User Experience

After provisioning server is set, the phone will reboot and will either upgrade or downgrade the firmware to the Microsoft approved version respectively for each device model.  After this has processed, you will see a simple interface with the Teams icon and a Sign in option.  This sign in process uses Microsoft device authentication web sign in (  Go to this site with any browser, enter the code, and sign in with your account.  Once complete, the phone may or may not restart, but once it is ready you will be able to make and receive calls on this device. 

Boot Up and Sign-In Page

Login Process

Making a call

Additional Notes

These are some additional comments to consider when implementing SIP Gateway. 


  • SIP Gateway only supports IPv4 
  • You can assign tags to devices 
  • You can restart or sign out of a device from the Teams Admin Center 
  • Sign in is only possible locally on the device 
  • Default language can be changed by appending a language code (i.e. lang_en) to the end of the provisioning server URL 
  • Policy changes sync once an hour 
  • AllowCallRedirect attribute in Teams Calling Policy must be set to enabled 
  • Static 911 calling only, no support for dynamic 911 calling 
  • You can view each device status as well as restart, sign out, or check for updates all from the Teams Admin Center. 

Work with our team of Cloud Computing Consultants with years of experience that know all of the “minefields” to prevent missteps.

Last updated on July 31st, 2023 at 12:53 pm