Microsoft Teams Direct Routing Configuration

Dialpad's Microsoft Teams integration allows users to make and receive calls using their Dialpad numbers via the MS Teams interface. This integration brings high-quality, reliable voice to the MS Teams communications suite and provides users with Dialpad's amazing AI capabilities. 

There are no changes to the user flows or calling behaviors in MS Teams; inbound and outbound calls are handled by the Dialpad system. 

Want to integrate MS Teams with Dialpad?

Check out this Help Center article.

What is direct routing?

With Dialpad’s MS Teams direct routing solution, you can make and receive external calls to +70 countries, as well as send SMS and MMS messages from your business phone number. 

The best part? No additional install or browser tab is needed - it's all accessible from within MS Teams. Just pin the Dialpad App for MS Teams, and you’re ready to go! 

License requirements

The direct routing solution requires Microsoft Teams Licenses with Phone System add-on to Microsoft 365 Enterprise Licenses such as E1 or E3, or a Microsoft 365 Business Plan with Business Voice. Alternatively, you can use Microsoft/365 Licenses that already include business voice features (such as E5). 

Whatever license you choose, make sure that it includes Phone System capabilities.

In addition, users must not have a Calling Plan.

Note

This article goes over setting up our direct routing configuration. For information on using the Dialpad App for MS Teams, be sure to read this Help Center article.

Requirements for Dialpad authorization

To configure your Microsoft Teams direct routing account, make sure the Dialpad account used to authorize the service meets these requirements:

  • You must be a Dialpad Company Admin.

  • The Microsoft account used to authorize and configure the integration must have the Global Administrator role.

  • Your Microsoft account must have these roles:

    • Skype for Business Administrator.

    • Teams Administrator.

Do not lower or remove the administrative access used for setup in either Microsoft Teams or Dialpad. If access is reduced or revoked, the integration may lose access to required resources and fail.

Note

Not all Dialpad features are currently supported by this integration.

Use application-based authentication

Application-based authentication is an alternative to the standard OAuth authorization method. Use it only when your Microsoft tenant policy blocks the standard OAuth authorization step.

This method must be enabled by Dialpad Support before you can use it. Contact your account team or Dialpad Support to request it.

Some Microsoft 365 tenants have policies that prevent granting delegated permissions to third-party applications such as Dialpad. When this restriction blocks the Authorize the Dialpad application step, you can register your own application in Microsoft Entra ID and provide Dialpad with its credentials.

Register an application in Microsoft Entra ID

  1. Sign in to the Azure portal with a Global Administrator account
  2. Go to Microsoft Entra ID > App registrations > New registration
  3. Enter an application name, such as Dialpad MSDR, and register the application
  4. From the application Overview page, copy and save the Directory (tenant) ID and Application (client) ID. You will need both later.

Grant the required API permissions

  1. In the app registration, go to API permissions > Add a permission > Microsoft Graph > Application permissions
  2. Add the following permissions:
    • Organization.Read.All
    • Domain.ReadWrite.All
    • Directory.Read.All
    • User.Read.All
    • Group.ReadWrite.All
    • AppCatalog.ReadWrite.All
    • TeamSettings.ReadWrite.All
    • Channel.Delete.All
    • ChannelSettings.ReadWrite.All
    • ChannelMember.ReadWrite.All
  3. Select Grant admin consent for your organization, then confirm

Note

Do not add a permission for the Skype and Teams Tenant Admin API. Microsoft's guidance indicates that adding this permission can cause failures. Access to that API is granted through the directory roles in the next step.

Assign directory roles to the application

  1. Go to Microsoft Entra ID > Roles and administrators
  2. Search for and select Teams Administrator
  3. Select Add assignments
  4. Search for the registered application (not a user) and add it
  5. Repeat these steps for Skype for Business Administrator

Create a client secret

  1. In the app registration, go to Certificates & secrets > Client secrets > New client secret
  2. Add a description and choose an expiry period
  3. Copy the secret Value immediately. It is shown only once.

Warning

Client secrets expire. Set a calendar reminder before the expiry date and generate a new secret in advance. An expired secret will stop Dialpad from connecting to Microsoft Teams, just as removing the required administrative access will.

Enter the application credentials in Dialpad

In the Dialpad Microsoft Teams Direct Routing setup wizard, enter:

  • Azure Tenant ID: The Directory (tenant) ID.
  • Application (Client) ID: The Application (client) ID.
  • Client Secret: The secret value.

Select Next to save the credentials and continue setup.

Note

Do not remove the API permissions, directory roles, or client secret after setup. Removing or changing them will break the integration.

To switch between authentication methods later, contact Dialpad Support.

Install Microsoft Teams Direct Routing

To install Microsoft Teams Direct Routing, use the Microsoft wizard to complete the setup:

Note

Follow the instructions when using the Microsoft wizard. The steps below outline what is being completed using the wizard during your setup.

  • Authorize the Dialpad application using the standard OAuth method and a Microsoft account with the required administrative access.
  • If your tenant policy blocks standard OAuth, use the application-based authentication method described in Use application-based authentication. This method must be enabled by Dialpad Support before setup.

Ensure the Microsoft Teams Direct Routing integration is enabled before configuring direct routing.

  1. Make sure your Microsoft environment has the required Microsoft Teams Phone licensing

    Configuration wizard for Microsoft Teams Direct Routing with prerequisites and next steps outlined.
  2. Authorize the Dialpad application using a Microsoft Teams admin account

    Permissions requested for Microsoft Teams and Skype, detailing access and API requirements.
  3. Configure the primary and secondary domains:

    • Two session border controller entries for the verified subdomains
    • Two voice routes and assign one session border controller to each route
    • Steps to set up primary domain and voice route in Dialpad and Microsoft.
  4. Add the PSTN usage record used by the two voice routes

    Setup process for PSTN usage and voice routing policy in Dialpad for MS Teams.

Note

After setup is complete, Dialpad can automatically begin syncing eligible users, depending on the sync configuration used for the integration.

Users sync

Once the MS Direct Routing has been installed, users can be synced.

To add users, go to the Dialpad Admin Portal.

  1. Select My Company

  2. Select Integrations

  3. Navigate to Microsoft Teams Direct Routing and select Options > Manage Settings

  4. Check the box to enable Automatic sync

    Settings for Microsoft Teams Direct Routing, including user sync options and feature enablement.
  5. Select Save changes

Note

Once sync is enabled, the process can take up to one hour to take effect.

Contact syncing troubleshooting 

Contact syncing can be tricky — let's go over some common issues and how to resolve them. 

User does not have an email set in Dialpad

We use the user email as the identifier to sync with your Microsoft Teams. If the user does not have an associated email, please add one for them in Dialpad first. 

User does not have a number set in Dialpad

Please assign a number to the user in Dialpad first before we can sync it to your Microsoft Teams.

User does not exist in Microsoft Teams

This means we tried to sync the user (using the user's email as the identifier) to your Microsoft Teams, but that email doesn’t exist in your Microsoft Teams. 

Please check the user's email and make sure it matches.

User is missing a required Microsoft license or has been assigned the wrong Microsoft license

The user's phone number field is restricted from editing due to either missing licenses (e.g., Phone System) or incorrect licenses assigned (e.g., any Calling Plan). 

Please refer to the license requirements section for details.

We cannot connect to your Microsoft Teams because the Admin account does not exist

We rely on the admin account (i.e. dialpad-msteams-admin@ ) you shared with us to connect to your Microsoft Teams account. If you have already provided it to us, the error may be due to an incomplete setup of the account on the Dialpad side. 

Admin account does not have the "Skype for Business Administrator" and "Teams Administrator" roles

These roles are required in order to perform a user sync. Please add the above-mentioned roles to the admin account so that it has the right permissions to update users in your Microsoft Teams. 

Application-based authentication fails

Verify that:

  • Application-based authentication was enabled by Dialpad Support.
  • The Directory (tenant) ID, Application (client) ID, and client secret were copied from the correct Microsoft Entra ID application.
  • The client secret has not expired.
  • Admin consent was granted for all required Microsoft Graph application permissions.
  • The application has the Teams Administrator and Skype for Business Administrator directory roles.
  • The required API permissions, directory roles, and client secret have not been removed or changed.

If the credentials are correct and the connection still fails, contact Dialpad Support.

User sync failed due to a temporary connection issue

There could be many technical reasons that our server cannot connect to your Microsoft Teams account. 

Most temporary connection issues will resolve on a retry unless the Microsoft Teams servers are completely down. 

User sync failed due to unknown reasons

This indicates new or internal errors. If another retry doesn’t work, please contact support for further help. 


 

Was this article helpful?
0 out of 0 found this helpful