Source record · tier 2 current vendor documentation
Create and manage dial plans
- Publisher
- Microsoft
- URL
- https://learn.microsoft.com/en-us/microsoftteams/create-and-manage-dial-plans
- Published
- 2025-04-25
- Updated
- unknown
- Accessed
- 2026-09-21
- HTTP status
- 200
- License
- Microsoft Learn terms of use; no-redistribution; short excerpts and locators only
Source notes citing this source
- Microsoft's example tenant dial plan rule for organization extension dialing matches a short extension pattern such as ^(\d{3})$ and translates it to a full E.164 number, created with New-CsVoiceNormalizationRule and added with Set-CsTenantDialPlan. in context
- Teams evaluates a dial plan's normalization rules top down and uses the first match, so more restrictive rules must be placed above less restrictive ones, and Microsoft recommends that every rule produce a number starting with +. in context
- The effective dial plan for a user can be inspected with Get-CsEffectiveTenantDialPlan and tested against a dialed number with Test-CsEffectiveTenantDialPlan; the Teams admin center also offers a Test dial plan field. in context
- Tenant dial plans are managed with New-CsTenantDialPlan, Set-CsTenantDialPlan and Grant-CsTenantDialPlan, and the result for a given user and dialled number is checked with Get-CsEffectiveTenantDialPlan and Test-CsEffectiveTenantDialPlan. in context
- Teams traverses a dial plan's normalization rules from the top down and uses the first rule that matches the dialled number, so more restrictive rules must be sorted above less restrictive ones. in context
- Microsoft's Direct Routing documentation set defines no import path for an existing PBX dial plan and instead has the administrator rebuild routing as tenant dial plans, PSTN usages, voice routes and trunk translation rules; the only documented import is a Skype for Business Server dial plan exported to XML and recreated with New-CsTenantDialPlan. inferred in context
- Every Teams dial plan must have at least one normalization rule associated with it. in context
- If a Teams normalization rule outputs a number without a leading '+', the calling service tries to normalize it again with tenant and regional rules. Microsoft recommends that all rules output numbers starting with '+'. in context
- When a dialed number could match more than one Teams normalization rule, Microsoft advises placing the more restrictive rules above the less restrictive ones. in context
- A Teams dial plan's Simple Name is derived from the dial plan name, can be edited in PowerShell, cannot be empty and must be unique. in context
- Tenant dial plans are created with New-CsTenantDialPlan, assigned with Grant-CsTenantDialPlan, tested with Test-CsEffectiveTenantDialPlan -DialedNumber -Identity, and deleted with Remove-CsTenantDialPlan. in context
- Each tenant dial plan needs at least one normalization rule, and Teams evaluates the rules top down and uses the first rule that matches the dialed number. in context
- Microsoft recommends that all normalization rules produce numbers starting with + to avoid double normalization, and Direct Routing customers can use trunk translation rules to remove the + if the SBC needs it. in context
- If a normalization rule produces a number without a leading '+', the calling service tries to normalize it again with tenant and regional rules. Microsoft therefore recommends that every normalization rule output a '+' number, and that Direct Routing customers strip the '+' with trunk translation rules if needed. in context
- Each dial plan created in the Teams admin center must have at least one normalization rule associated with it. in context
- Microsoft documents migrating an on-premises Skype for Business Server dial plan by exporting it to XML with Export-Clixml. The Teams PowerShell side then rebuilds its rules as in-memory New-CsVoiceNormalizationRule objects and creates the plan with New-CsTenantDialPlan. in context
- A dial plan's Simple Name is prepopulated from the dial plan name, can be edited in PowerShell, cannot be empty and must be unique. in context
- After saving a dial plan in the Teams admin center, admins can enter a phone number under 'Test dial plan' to test how it normalizes. in context
Cite this source record
APA
WarmTransfer. (2025, April 25). Create and manage dial plans. WarmTransfer. https://warmtransfer.net/knowledge/sources/ms-learn-dial-plans-manage
BibTeX
@misc{warmtransfer-ms-learn-dial-plans-manage,
title = {Create and manage dial plans},
author = {{WarmTransfer}},
year = {2025},
url = {https://warmtransfer.net/knowledge/sources/ms-learn-dial-plans-manage},
note = {Microsoft, accessed 2026-09-21}
}