The FQDNs of the SBCs or, in the case of Hosted Duet, the Voice routes, must be correctly validated before Microsoft Teams is able to use them.
Log into the Microsoft 365 admin center and on the left-hand panel select Settings and then Domains.
Enter the FQDNs provided by Bandwidth if Hosted or the FQDNs of the customer’s SBCs.
Add the “txt” records to DNS.
If the customer is using their own SBC, then they will manage DNS and add the appropriate “txt” records as required by Microsoft.
If Hosted, provide the “txt” record back to Bandwidth. Once Bandwidth adds the “txt” record to the domain then the last step is for the customer to validate the domain.
Once completed, the FQDNs status should show “No Services Selected” for the FQDNs.
In order for Microsoft Teams to use the new FQDNs, you must assign a temporary user to each of the FQDNs. This is done as a requirement in order for the SBCs or the Voice routes to be successfully added in Teams.
Log into the Microsoft 365 admin center and on the left-hand panel Select Users, then Active Users. Add a new temporary user and select the newly created FQDNs in the Domains drop-down.
Make sure a temporary user has been assigned to each of the FQDNs.
Setting up Direct Routing
Once the correct FQDNs have been set up, you can proceed with setting up Direct Routing. It's recommended by Microsoft to utilize Powershell when building out Direct Routing and scaling to support a large number of users.
Log into Powershell and in the Windows Command Prompt type Powershell.
Connect to Microsoft Teams Tenant. From Powershell, type connect-MicrosoftTeams and enter the appropriate admin credentials.
If you're unfamiliar with Microsoft Teams Direct Routing and the steps required, please review Migrate to Direct Routing before proceeding. The following should be used as general guidelines as each customer may have unique routing requirements.
Create a usage policy called Bandwidth. This is used as a reference in Teams so calls can be associated with Bandwidth.
The Identity refers to the default Voice routing policy in Teams called “Global”. If an Enterprise is using a different name please make sure it's referenced correctly.
Add a phone number to a user. Make sure the format of the number is in E.164. There are other optional commands a customer may want to include in the Set-CsUser string, such as “-HostedVoiceMail $true”
Add the SBC and Voice routes. If Hosted, the only thing that needs to be added here is the Voice Routes. Confirm correct SBC FQDNs and the SIP Signaling Port.
The number pattern above assumes that all calls will go to Bandwidth. If the customer has advanced call routing requirements then refer them to Microsoft Documentation.
Assign user the Voice policy that will allow them to make calls using either the SBC or, if Hosted, the Voice routes provided by Bandwidth.
Troubleshooting Duet for Microsoft Teams
I'm unable to add either SBCs or Voice routes to Teams
Validate that the DNS entries for all FQDNs are accurate and confirm that their status is “No Services Selected”.
Confirm that temporary users were added to the new SBC FQDNs.
Wait up to 24 hours for DNS to propagate in Azure.
I'm unable to make calls
Verify that the user has been added to the correct Voice Policy.
Verify that the user has been added to teams with “EnterpriseVoiceEnabled” set to "True" in Powershell.
Log out of Teams desktop and log in again.
The contact pad in Teams is missing
Make sure the user has the appropriate Microsoft licensing applied.
Verify that the user has been added to teams with “EnterpriseVoiceEnabled” set to "True" in Powershell.
Where can I see the Emergency Location on the desktop?
Powershell reference commands for Microsoft Teams
Get-CsOnlinePSTNGateway
Get-CsOnlineVoiceRoutingPolicy
Get-CsOnlinePstnUsage
Get-CsOnlineVoiceRoute
Get-CsOnlineUser -id [email protected] | fl UserPrincipalName, EnterpriseVoiceEnabled, OnPremLineURI, DialPlan, VoicePolicy, HostedVoiceMail, OnlineVoiceRoutingPolicy, TeamsCallingPolicy, TeamsInteropPolicy
Microsoft Teams admin screenshots
Using the Users tab to list all users on Teams and the corresponding numbers, policies, and status.
Using the Emergency policies tab to enable Dynamic Calling and set the dial strings for emergency numbers.
Using the Emergency policies tab to setup associated notifications and type when someone dials Emergency Services.
Using the Direct Routing tab to add SBCs and Voice Routes.
Using the Direct Routing tab to configure Voice Routes based on Dialed Number Pattern and the associated SBCs.
Using the Voice routing policies tab to create the PSTN usage records.
Using the Calling Policies tab to configure the settings of a particular calling policy.
Using Users and Policies tabs to view on a per user basis what policies are assigned to a user.
Troubleshooting Microsoft Teams
The Teams Desktop client has the ability to create debug files that can be used for troubleshooting purposes:
Windows - CTL+ALT+SHIFT+1 - this creates a number of logs
MAC - OPTION+COMMAND+SHIFT+1
Accessing additional logs details from Teams admin:
In the Users tab select a user.
Under the user selected select Meetings & calls.
The Overview tab provides data related to the device/system/network/connectivity. It also shows audio quality and response codes.
The Advanced tab contains additional information related to media including Inbound/Outboud statistics. This tab also shows the local IP address which can be used to determine the location relationship for DLR Emergency Services.
The Debug tab includes information about connectivity and media and can be exported as well.
Reporting & Analytics for Microsoft Teams.
There are several built-in reports available in the Teams Admin Center. To access these reports select Analytics & reports from the left side menu and select the appropriate report.
Be sure to select Direct Routing from the middle of screen rather than Native Microsoft Calling Plans. The usage reports are not real-time but they do include information about every call sent or received from a user. These reports can be filtered; column displays can be edited; and the reports can also be exported to Excel.
