Module 4: Calling, Voice & PSTN

🎯 Teams Administration Course · Module 4 of 6

Calling, Voice & PSTN

MS-700
MS-700 Exam Alignment
MS-700

Manage voice and calling in Teams: compare PSTN connectivity options (Calling Plans, Direct Routing, Operator Connect), assign phone numbers to users, configure calling policies, dial plans, emergency calling policies, and build auto attendants and call queues.

  • Distinguish Calling Plans, Direct Routing, and Operator Connect by infrastructure requirement, SBC need, and use case
  • Know the licences required for Teams Phone and which PSTN option each licence enables
  • Assign a phone number to a user and verify the assignment in TAC and PowerShell
  • Understand calling policies — what AllowPrivateCalling, AllowVoicemail, and AllowCallForwardingToPhone control
  • Describe the purpose of dial plans and when a custom dial plan is needed
  • Know the difference between auto attendants and call queues and when to use each
Exam Tip: MS-700 PSTN scenario questions always have one deciding detail. Direct Routing = customer-owned SBC, custom carrier, full control. Operator Connect = Microsoft-certified carrier manages the SBC, no on-prem hardware. Calling Plans = Microsoft is the carrier, simplest setup, geography-limited. If the question mentions an existing SBC or third-party carrier contract → Direct Routing. Managed carrier with no on-prem hardware → Operator Connect.
The Teams Voice section is the most technically complex area of Teams administration and carries significant weight in the MS-700 exam. Making and receiving calls over the public switched telephone network (PSTN) requires a Teams Phone licence, a PSTN connectivity method, phone numbers, and the right calling policies. This module covers every layer — from licencing through to auto attendants.

📞 Teams Phone Licensing

To enable PSTN calling in Teams, users need the right licence combination. There are two core requirements:

Licence What It Enables Included In
Microsoft Teams Phone (formerly Phone System) The core PBX capabilities in the cloud — hold, transfer, voicemail, call queues, auto attendants. Does NOT include PSTN calling on its own Microsoft 365 E5, Teams Essentials with Phone, or as an add-on to E1/E3/Business plans
Teams Phone + Calling Plan Teams Phone plus a Microsoft-provided Calling Plan — enables PSTN calls using Microsoft as the carrier Bundled SKU or separate add-on — requires Teams Phone licence first
Teams Phone with Direct Routing Teams Phone licence used with customer-managed SBC for PSTN access — carrier of your choice Teams Phone add-on only — Direct Routing provides the PSTN connection, no additional Calling Plan needed

🌐 PSTN Connectivity — The Three Options

Teams Phone (the PBX capability) needs a method to connect to the public telephone network. There are three options — each with different infrastructure requirements, control levels, and cost models:

Calling Plans Operator Connect Direct Routing
Who is the carrier Microsoft is the carrier Microsoft-certified third-party carrier (e.g. BT, Telstra, Lumen) Any carrier — your choice
SBC required No — Microsoft manages all infrastructure No — the carrier manages the SBC Yes — customer deploys and manages a certified Session Border Controller (SBC)
On-premises hardware None None SBC required — can be on-prem or hosted in Azure/cloud
Setup complexity Lowest — buy licence and assign number in TAC Medium — carrier onboarding via TAC, no SBC management Highest — SBC configuration, voice routing, PSTN gateway setup
Geography Limited to countries where Microsoft offers Calling Plans Available in countries where certified carriers operate Any country with a compatible carrier — maximum flexibility
Existing carrier contract Not retained — Microsoft becomes the carrier New carrier relationship via Operator Connect marketplace Keep existing carrier contract
Phone number source Microsoft assigns numbers from its inventory Carrier assigns numbers — ported or new Carrier assigns numbers — ported or new
Best for Small orgs in supported countries wanting zero infrastructure Mid-large orgs wanting a managed carrier without SBC overhead Enterprises with existing SBCs, specific carrier requirements, or countries without Calling Plans

⚠️ The MS-700 PSTN Decision Matrix

  • Question mentions existing SBC / SIP trunk / on-prem PBX integrationDirect Routing
  • Question mentions carrier manages everything, no on-prem hardware but Microsoft is NOT the carrier → Operator Connect
  • Question mentions simplest setup, Microsoft is the carrier, supported countryCalling Plans
  • Question mentions the country is not supported by Calling PlansDirect Routing or Operator Connect

🔢 Phone Number Assignment

Phone numbers are managed in TAC → Voice → Phone numbers. Numbers can be acquired from Microsoft (for Calling Plans), ported from a carrier, or assigned from Direct Routing / Operator Connect. Each number is either a user number (assigned to an individual) or a service number (assigned to a call queue, auto attendant, or conference bridge).


TAC Voice Phone numbers
TAC
Microsoft Teams admin center
|
Voice › Phone numbers
🏠 Dashboard
👥 Teams
📅 Meetings
📞 Voice
Phone numbers
Calling policies
Dial plans
Direct Routing
Emergency policies
Voicemail policies
Auto attendants
Call queues

Phone numbers

+ Add
Port numbers

Phone numberNumber typeAssigned toLocation
+44 20 8123 4567UserJane SmithLondon
+44 20 8123 0001ServiceMain Reception AALondon
+44 20 8123 0002ServiceIT Support QueueLondon

PowerShell — Phone Number Assignment

Connect-MicrosoftTeams

# View all phone numbers in the tenant with assignment status
Get-CsPhoneNumberAssignment -PstnAssignmentStatus All | Select-Object TelephoneNumber,NumberType,AssignedPstnTargetId,City

# Assign a Calling Plan number to a user
Set-CsPhoneNumberAssignment -Identity user@techcareers.in -PhoneNumber "+442081234567" -PhoneNumberType CallingPlan

# Assign a Direct Routing number to a user
Set-CsPhoneNumberAssignment -Identity user@techcareers.in -PhoneNumber "+442081239999" -PhoneNumberType DirectRouting

# Remove a phone number assignment
Remove-CsPhoneNumberAssignment -Identity user@techcareers.in -PhoneNumber "+442081234567" -PhoneNumberType CallingPlan

# Verify a user's current phone number and voice settings
Get-CsOnlineUser -Identity user@techcareers.in | Select-Object DisplayName,LineUri,EnterpriseVoiceEnabled,HostedVoiceMail

📋 Calling Policies

Calling policies control what calling features individual users can access. Assigned per-user (or via the Global default). Managed in TAC → Voice → Calling policies.

Policy Setting What It Controls
Make private calls Whether the user can make outbound PSTN and Teams-to-Teams calls
Call forwarding and simultaneous ringing to people in your organisation Whether users can forward calls or ring multiple internal devices simultaneously
Call forwarding and simultaneous ringing to external phone numbers Whether calls can be forwarded to external PSTN numbers — a common security/cost control
Voicemail Enable or disable voicemail for the user (UserOverride = user decides; AlwaysEnabled; AlwaysDisabled)
Inbound calls can be routed to call groups Whether users can set up a call group to ring colleagues when they receive a call
Delegation for inbound and outbound calls Whether users can set up delegates (e.g. an executive's PA answering calls on their behalf)
Prevent toll bypass and send calls through the PSTN Forces calls to route through PSTN even when a Teams route is available — used for compliance in some regions
Busy on busy when in a call Whether inbound calls receive a busy signal when the user is already on a call
PowerShell — Calling Policies

Connect-MicrosoftTeams

# View all calling policies
Get-CsTeamsCallingPolicy | Select-Object Identity,AllowPrivateCalling,AllowVoicemail,AllowCallForwardingToPhone

# Restrictive policy — no external forwarding, voicemail disabled
New-CsTeamsCallingPolicy -Identity "Frontline-Calling" -AllowPrivateCalling $true -AllowCallForwardingToPhone $false -AllowVoicemail AlwaysDisabled -AllowCallGroups $false -AllowDelegation $false

# Executive policy — full features including delegation
New-CsTeamsCallingPolicy -Identity "Executive-Calling" -AllowPrivateCalling $true -AllowCallForwardingToPhone $true -AllowVoicemail UserOverride -AllowDelegation $true -AllowCallGroups $true

# Assign to a user
Grant-CsTeamsCallingPolicy -Identity user@techcareers.in -PolicyName "Executive-Calling"

# Remove assignment (reverts user to Global policy)
Grant-CsTeamsCallingPolicy -Identity user@techcareers.in -PolicyName $null

🗺️ Dial Plans

A dial plan is a set of normalisation rules that translate the phone numbers users dial (local format, short codes, extensions) into the E.164 format (+CountryCodeNumber) that Teams requires for routing. Managed in TAC → Voice → Dial plans.

💡 When Is a Custom Dial Plan Needed?

  • Extension dialling — Users dial a 4-digit extension (e.g. 1234) that must be translated to a full E.164 number (+442081231234)
  • Short codes — Dialling 9 for an outside line (a common legacy PBX habit)
  • National dialling formats — Users in the UK dial 020 8123 4567 (without country code) and it needs to normalise to +44 20 8123 4567
  • No custom dial plan needed — Users always dial in E.164 format (+CountryCode...) — the service dial plan for their region handles normalisation automatically
PowerShell — Dial Plans & Normalisation Rules

Connect-MicrosoftTeams

# View all dial plans in the tenant
Get-CsTenantDialPlan | Select-Object Identity,Description,NormalizationRules

# Normalisation rule: UK national format 020xxxxxxxx → E.164 +44020xxxxxxxx
$rule1 = New-CsVoiceNormalizationRule -Name "UK-LondonLocal" -Parent "UK-Office-DialPlan" -Pattern "^(020\d{8})$" -Translation "+44$1" -InMemory

# Normalisation rule: 4-digit extension → full E.164 number
$rule2 = New-CsVoiceNormalizationRule -Name "UK-Extension4Digit" -Parent "UK-Office-DialPlan" -Pattern "^(\d{4})$" -Translation "+44208123$1" -InMemory

# Create the dial plan with both rules
New-CsTenantDialPlan -Identity "UK-Office-DialPlan" -NormalizationRules @($rule1, $rule2) -Description "UK office dial plan"

# Assign to a user
Grant-CsTenantDialPlan -Identity user@techcareers.in -PolicyName "UK-Office-DialPlan"

🚨 Emergency Calling

Emergency calling (E911 in the US / 999/112 in the UK/Europe) requires special handling in cloud voice to ensure responders can locate the caller. Teams uses two policy types for this:

Policy Type Purpose
Emergency calling policy Defines what notification is sent when a user dials an emergency number — e.g. send a Teams chat or call to the security desk or a notification group when 999 is dialled
Emergency call routing policy Defines which PSTN numbers are emergency numbers and how calls to those numbers are routed — used only with Direct Routing (not needed for Calling Plans, where Microsoft handles routing)

⚠️ Dynamic Emergency Calling

Dynamic emergency calling automatically detects a user's location based on their network subnet or WiFi access point (configured in TAC → Locations) and routes emergency calls to the correct local PSTN Emergency Service. Without dynamic emergency calling, all emergency calls from a remote user may route to the wrong local emergency service. Dynamic emergency calling requires network sites to be configured with their associated emergency address in TAC.

📟 Auto Attendants & Call Queues

Auto attendants and call queues are the two service applications that use service phone numbers (not user numbers) and resource accounts to handle inbound calls professionally.

Auto Attendant Call Queue
Purpose Interactive voice menu — callers press keys or speak to route to the right destination Hold queue — callers wait in line to be connected to the next available agent
Routing Routes based on caller input (dial by name, dial by extension, menu options, time-based routing) Routes to a group of agents — by round robin, longest idle, serial, or attendee order
Typical use Main company number ("Press 1 for Sales, Press 2 for Support") IT helpdesk, customer support line — agents answer calls in order
Requires Resource account + service number + Teams Phone licence on the resource account Resource account + service number + Teams Phone licence on the resource account
Can chain to Another auto attendant, a call queue, a user, an external number, or voicemail Another call queue, a user (overflow/timeout), voicemail, or disconnect
Business hours Yes — different routing for open hours vs closed hours Yes — different handling during/outside business hours
PowerShell — Resource Accounts, Auto Attendants & Call Queues

Connect-MicrosoftTeams

# Create a resource account for an auto attendant
New-CsOnlineApplicationInstance -UserPrincipalName "main-reception-aa@techcareers.in" -DisplayName "Main Reception" -ApplicationId "ce933385-9390-45d1-9512-c8d228074e07"

# Assign a service phone number to the resource account
Set-CsPhoneNumberAssignment -Identity "main-reception-aa@techcareers.in" -PhoneNumber "+442081230001" -PhoneNumberType CallingPlan

# Create a resource account for a call queue
New-CsOnlineApplicationInstance -UserPrincipalName "it-support-cq@techcareers.in" -DisplayName "IT Support Queue" -ApplicationId "11cd3e2e-fccb-42ad-ad00-878b93575e07"

# List all resource accounts in the tenant
Get-CsOnlineApplicationInstance | Select-Object DisplayName,UserPrincipalName,ApplicationId,PhoneNumber

# ApplicationId reference:
# Auto Attendant: ce933385-9390-45d1-9512-c8d228074e07
# Call Queue:     11cd3e2e-fccb-42ad-ad00-878b93575e07

💡 Best Practices

  • Choose Calling Plans for small organisations in supported countries — zero infrastructure, fastest time to dial-in
  • Use Operator Connect when your organisation wants a carrier relationship but no on-premises SBC — all the carrier flexibility with none of the hardware overhead
  • Restrict call forwarding to external numbers in the calling policy for most users — uncontrolled external forwarding creates unexpected PSTN charges and security concerns
  • Always create a resource account before building an auto attendant or call queue — the resource account is the identity that holds the phone number and Teams Phone licence
  • Configure emergency addresses for all network sites before enabling PSTN calling — dynamic emergency calling routes to the correct local service and can save lives
  • Test dial plans with actual dialled strings before deploying — a wrong normalisation regex silently fails to match and the call will not complete
  • Keep dial plan rules simple — normalise to E.164 and let Teams handle the rest; avoid complex regex unless specifically required for extension dialling

🎓 Interview Q&A

Q: What are the three PSTN connectivity options in Microsoft Teams Phone and how do they differ?
Calling Plans — Microsoft is the carrier, no SBC required, phone numbers come from Microsoft. Simplest setup, limited to countries where Microsoft offers Calling Plans. Operator Connect — A Microsoft-certified third-party carrier manages the SBC; no on-premises hardware required. The carrier is selected from the Operator Connect marketplace in TAC. More carrier choice than Calling Plans without the SBC management overhead of Direct Routing. Direct Routing — The customer deploys and manages a certified Session Border Controller (SBC) and connects any carrier via a SIP trunk. Maximum flexibility — any country, any carrier, keep existing contracts — but requires the most technical expertise and infrastructure.

Q: What is a resource account and why is one needed for an auto attendant?
A resource account is a disabled user object in Azure AD created specifically to represent a service application — either an auto attendant or a call queue. It serves as the "identity" that holds the service phone number and Teams Phone licence. When a call arrives at the company's main number, Teams routes it to the resource account associated with the auto attendant, which then plays the menu and routes the caller. Resource accounts cannot sign in and do not consume user licences, but they do require a Teams Phone Resource Account licence (which is free).

Q: What is the difference between an auto attendant and a call queue?
An auto attendant is an interactive voice menu that routes callers based on their input — "Press 1 for Sales, 2 for Support, dial by name" etc. It makes routing decisions. A call queue is a waiting line — callers who reach it are placed on hold with hold music and connected to the next available agent in the configured agent group. Auto attendants typically feed into call queues: the auto attendant routes the caller to the right department, and the call queue handles the wait and distribution to agents.

Q: A user is complaining that when they dial a colleague's 4-digit extension, the call fails. What is the most likely cause and how do you fix it?
Teams requires phone numbers in E.164 format (+CountryCodeNumber) for routing. When a user dials a 4-digit extension, Teams cannot match it to a full E.164 number without a normalisation rule. The fix is to create a dial plan with a normalisation rule that matches the 4-digit pattern and translates it to the full E.164 number (e.g. pattern ^(\d{4})$, translation +44208123$1). Assign the dial plan to the affected user with Grant-CsTenantDialPlan.

Q: An organisation has an existing SIP trunk contract with a carrier and an on-premises SBC. They want to move to Teams Phone without changing their carrier. Which PSTN connectivity option should they use?
Direct Routing. Direct Routing allows the organisation to keep their existing carrier and SBC, connecting their SBC to the Microsoft Teams Phone cloud via a certified SIP trunk. Microsoft provides the Teams Phone (PBX) capabilities in the cloud; the SBC and carrier provide the PSTN access path. This is the only option that supports bring-your-own-carrier and reuse of existing on-premises SBC infrastructure.

🎯 MS-700 Mock Test
Module 4 — Calling, Voice & PSTN
5 questions · Scenario-based · MS-700 exam style · Pass mark: 70%

Question 1 of 5

An organisation in a country where Microsoft Calling Plans are not available needs PSTN calling via Teams. They have an existing relationship with a local carrier that is Microsoft-certified and manages their own SBC infrastructure. Which PSTN connectivity option should they choose?

ACalling Plans — Microsoft will provide PSTN connectivity globally
BDirect Routing — the only option when Calling Plans are unavailable
COperator Connect — certified carrier manages the SBC, no on-prem hardware required
DAudio conferencing — provides PSTN calling in all countries

Correct answer: C. Operator Connect fits exactly: the carrier is Microsoft-certified, manages their own SBC infrastructure (no on-prem hardware on the customer side), and operates in a country where Calling Plans are unavailable. Direct Routing (B) would also work technically but requires the customer to deploy and manage their own SBC — the scenario says the carrier manages the SBC, which is the defining characteristic of Operator Connect.

Question 2 of 5

A user needs to be able to configure call forwarding to their personal mobile number when they are away from the office. Which calling policy setting controls this?

AAllowCallForwardingToPhone — enables forwarding to external PSTN numbers
BAllowPrivateCalling — enables outbound calling
CAllowCallForwardingToUser — enables forwarding to internal Teams users only
DAllowDelegation — enables delegates to forward calls

Correct answer: A. AllowCallForwardingToPhone (in the Teams calling policy) controls whether a user can forward their Teams calls to an external PSTN number — including a personal mobile. This setting is frequently disabled for security and cost reasons. AllowPrivateCalling (B) controls whether the user can make outbound calls at all — not forwarding. AllowCallForwardingToUser controls forwarding to other internal Teams users (separate from PSTN forwarding).

Question 3 of 5

Users in a UK office dial numbers in the format 020 8123 4567 (without country code). Calls are failing because Teams requires E.164 format. What should you configure?

AA calling policy with UK number format enabled
BA dial plan with a normalisation rule that converts 020xxxxxxxx to +44 20xxxxxxxx
CA voice routing policy that handles UK national format
DTrain users to always dial in E.164 format — no admin config possible

Correct answer: B. A dial plan with a normalisation rule is the correct tool — it converts the number the user dials (020 8123 4567) into E.164 (+44 20 8123 4567) before Teams routes the call. The normalisation rule uses a regex pattern to match the national format and a translation string to prepend the country code. This is exactly what dial plans are for — bridging user dialling habits to E.164 requirements.

Question 4 of 5

A company wants callers who dial the main office number to hear "Press 1 for Sales, Press 2 for Support, or stay on the line to speak to reception." What Teams feature should be configured?

ACall queue — routes callers to the next available agent
BCalling policy — configure the main number routing options
CVoicemail — plays a greeting and captures messages
DAuto attendant — interactive menu routing callers based on their input

Correct answer: D. An auto attendant plays a greeting and interactive menu ("Press 1 for Sales…") and routes callers to the appropriate destination based on their input. It requires a resource account with a service phone number. The auto attendant can route to individual users, call queues, other auto attendants, or external numbers. A call queue (A) simply holds callers in line for agents — it has no menu capability.

Question 5 of 5

Which licence is required to enable PBX capabilities (hold, transfer, voicemail, call queues) in Microsoft Teams Phone — without including a Microsoft Calling Plan?

AMicrosoft Teams Phone (formerly Phone System) — enables the PBX features; PSTN connectivity added separately via Calling Plan, Direct Routing, or Operator Connect
BMicrosoft Teams Audio Conferencing — enables PSTN dial-in and PBX features
CMicrosoft 365 Business Basic — includes Teams Phone by default
DTeams Calling Plan Domestic — includes PBX features and Calling Plan together

Correct answer: A. Microsoft Teams Phone (formerly Phone System) is the add-on licence that enables cloud PBX capabilities — hold, transfer, voicemail, call queues, auto attendants, and delegation. It does NOT include PSTN calling on its own — that is added separately via a Calling Plan, Direct Routing, or Operator Connect. Audio Conferencing (B) enables dial-in for meetings but not outbound PSTN calling. M365 Business Basic (C) does not include Teams Phone.

🔒

This module is lockedComplete Module 3 and pass its mock test to unlock this module.