Voice Functionality
Voice Routing
msRTCSIP-Line
msRTCSIP-PrivateLine
msRTCSIP-PrivateLine
SIP URI
1
PSTN
PSTN Fallback
Fallback for
for
CAC
CAC and Inbound
Inbound Routing
and Network
Network Routing
Dial Plan 7 Reverse
Reverse Number
Number Lookup
Lookup Outages
User=phone Match
Emergen
Emergen Yes No match
External Normalization
Rules
cy
cy 8 Apply
Apply Called
Called
Call?
Call? Party Prefs
EA
EA Select usages
P?
P? 2 Usages on UC
UC Endpoint
Endpoint Receives
Receives
Internal
Normalization Rules
No 9 From
From trunk
trunk
with inbound Call
Call
with
usages? trunk
usages? Usage from
Emergency
Emergency location
Client-side Yes call?
call?
Global? policy
normalization
normalization 3 Global?
Conferenc
Conferenc
Usages of 10
e dial-out?
dial-out? meeting
e
organizer
RFC
RFC 3966
3966 No Unassigne
Unassigne
d number?
number? Announcement
Starts with + d Announcement or or
Call Park
Call Park Application
Application
Call
Call Park?
Park?
Usages
Location-
Location-
Gateway Mediation from
based
based
Server routing? network
Dial Plan routing?
Referred-
Referred- site
by?
Usages of
by?
referrer Convert
Normalization Rule Convert ##
4 to Local Format
Normalization Rule
Normalization Rule
Usages of 13
caller
Trunk
Trunk Configuration
Configuration //
Number
Number Translation
Translation
Must
Must Match
Match Selected Routes
6 A Rule Call Park Orbit Range policy/usages
PSTN Usage
12 Route
Gateway
Gateway // IP-PBX
IP-PBX // SIP
SIP Trunk
Trunk
5 PSTN Usage
Route
Route
11 PSTN Usage Route External
External Endpoint
Endpoint Receives
Receives
Call
Call
14
Dialing Routing &
Behaviors Authorization
Number Normalization and E.164
Global Contoso
Site
Chicago London
Dublin-
Pool
Chicago-1 Chicago-2 1
User
Dial Plans
National dialing
^([2-9]\d\d[2-9]\d{6})$ +1$1 (NANP)
^0(\d{10}) +44$1 (UK)
Include national and international dialing
prefixes
^011(\d*) +$1
Extension range (e.g. 15xx-35xx)
^((1[5-9]|2[0-9]|3[0-5])\d{2})$
+1206555$1
Address book normalization
International
National Premium
National
Local
Internal
DE Internal ^\+49895550[12]
DE Germany ^\+49
DE Europe ^\+(49)|(31)|(33)|(32)|(34)|(351)|
DE International ^\+
Voice Policies
Can be assigned per user, site, or global.
Can be by PS:
New-CsVoiceRoutingPolicy Identity <PolicyID> -Name
<PolicyName> -PstnUsages <Usage1>, <Usage2>
Not only for users. Also useful to address Common
Area Device requirements:
Assign a Voice Policy to a common area phone to prevent
misuse and high cost.
Provides admins with flexibility to control user
voice entitlements:
PSTN Usage
PSTN Usage
Voice Policy Local,
Redmond International
Call PSTN
Usages
Call
Forwarding Internal
Skype for
Business
users only
Simultaneous
14
Ring Custom
PSTN
Usages
PSTN Usages
Custom
Usage
Voice Routes
Migration strategy
Skype for Business or PBX Phone vs. Skype for
Business and PBX phone?
Keep the existing DIDs or get new numbers when
migrated to Skype for Business?
Implement changes or copy the existing numbering
plan?
Define the routes
Define user voice policies (Classes of Service)
Incorporate requirements for least-cost routing and
PSTN rerouting and fallback, if needed
Use PSTN usages to link appropriate routes to
the needed voice policies
Real World Scenarios and
Recommendations
Copying existing dialing habits is not always
a good idea
Some are just there to accommodate the
PBX
Examples of unnecessary dialing rules:
Scenario Remark Recommendation
Dial a 9 to seize an PBX-specific Avoid creating
outside line behavior normalization rules for
Example: 9 this habit
0031205001500
Asia USA
International
Gateway Gateway
National Premium
National International
Local National Premium
Internal National
Local
Internal
Number Blocking
Traditional Method
Alternative Method
Microsoft Official
Course
Voice Applications
Call Park - Features
An available orbit is
automatically offered to the user parking
the call
Skype for Business Call Retrieval
Set-CsCpsConfiguration
Set-CsCpsConfiguration Use the cmdlet to configure Call Park settings
Set-
Set-
CsCallParkServiceMusic
CsCallParkServiceMusic Optionally, customize the music on hold
OnHoldFile
OnHoldFile
Set-CSVoicePolicy
Set-CSVoicePolicy Configure voice policy to enable Call Park for users
Park and Retrieve Call Flow
Step 1:
Alice calls Bob, incoming call
who is using
Skype for
Business Server Front End User Bob
2015
incoming call
Step 2:
Alice is now connected to
Bob
Media flows from Alice to
Bob
User Bob
ow
Front End
Fl
ia
ed
M
Media Flow
Step 3:
Alice wants to speak to Park Call
Charlie
Bob issues a call park User Bob
command to the Call Park Front End
Service, requesting an orbit
ow
Fl
ia
ed
M
Media Flow
Caller Alice
Mediation Server
Park and Retrieve Call Flow (4 of 7)
Step 4: Orbit
123
Alice is put on hold,
receiving Music on Hold
from the Call Park Service Front End
Bob receives a Call Park User Bob
orbit
Media
Flow
Media Flow
Step 5:
Bob shares the Call Park
orbit with Charlie through
an internal paging
system, IM, or some Front End User Bob
alternate method
Media Orbit
Flow 123
(paging)
Media Flow
Step 6:
Charlie dials the orbit
number in an attempt to
retrieve the parked call
Front End
Re
tri
ev
Media
e
12
Flow
3
Media Flow
Caller Alice
Mediation Server
User
Park and Retrieve Call Flow (7 of 7)
Step 7:
Alice is now directly
connected to Charlie
Front End
ApplicationServer.se1.adatum.com
User Bob
Step 2
Front End
Tr
Ca sfe
an
ll r
Media
Flow
Step 1
Step 3 Step 3
Caller Alice Mediation Server User
Charlie
Unassigned Number Call Flow (1 of 3)
Step
1:Alice has dialed a phone number that
she believes belongs to Bob
The vacant number routing determines Front End
that the dialed number is not a valid User Bob
number
Alice is connected to a special RGS Media
workflow and is notified that the Flow
number is not in use
Media Flow
Front End
Media Tr Ca
an ll
Flow sf
er
Media Flow
Caller Alice
Mediation Server User
Charlie
Unassigned Number Call Flow (3 of 3)
Step
3:
Alice is now connected in a voice call to
Charlie
Dial-In Conferencing
Reservation-less calls
Managed events
Meeting Types
Reservation less calls85%
Weekly staff meetings, project meetings and so on
Typically 25 or fewer participants, average of 3-5
attendees per meeting Target for
Majority of attendees are internal Skype for
Business
Frequently contains external attendees
Web attached
Operator-assisted callsLess than 10%
Biweekly/monthly
Roll call, polling, and other large meeting features
From 25-100 attendees
Managed event
Web attached ACPDomain
(Audio
Externally focused calls5% Conferencing
Provider)
With transcription, high touch, max features, and large audiences
100+ participants
Quarterly or less frequent
Web attached Based on Gartner
Study
User Roles & Permissions
Presenter
Controls meeting
Designated by organizer
Cant designate Federated in advance
Organizer
Implicit role, presenter by definition
If deleted from AD, conferences also removed from
RTC database
Attendee
Everyone who is not a presenter
Cannot add content to meeting
Can only download content if given permissions
Can be promoted / demoted
DTMF Commands
MCU
Alice
Authenticated user
Bill
(PSTN user
authenticated)
Simon
Anonymous Skype for Business
2015/Skype for Business Web App
user
Entry/Exit Announcements (2 of 2)
Controlled by
Admin - Entry/exit announcements configuration:
Off Set-CsDialInConferencingConfiguration
Set-CsDialInConferencingConfiguration
Beep -Identity
-Identity site:Redmond
site:Redmond
-EntryExitAnnouncementsType
-EntryExitAnnouncementsType "ToneOnly"
"ToneOnly"
Name, TTS for known users
or Recording for unauthenticated users
Organizer:
Turns announcements on/off at
scheduled time for non-default meetings
Presenter:
Turns announcements on/off during the meeting
Important Settings - Join Experience
Optional
Configure DTMF commands globally or per site
Manage order of access numbers per conference
region (PowerShell cmdlet only)
Managing Conferencing
Skype for
Skype for Business Front-End Server Business Back-
End Server
Web Components (SQL DB)
Focus Conferencing
(IIS)) Audio Video Database
Conferencing
Join Launcher Server
Focus Factory
Reach Server
IM Conferencing Server
Dial-in
Conferencing
Web Conferencing Server Page
Machine Boundary
Conference Announcement
Service
English
Caller 2 joins and requests English
Group Virtual Assistant
(C1/C2)
Personal Virtual Assistant
(C1)
Personal Virtual Assistant
(C2)
MoH
Basic hunt groups High scale
Agent sign-in/sign- Busines Superviso High availability
out s hours r Advanced CDRs
Various hunting Basic Live Interoperable with LoB
methods CDRs views applications
Advance
d CDRs
Administrator(s)
Manager 1 Manager 2
Work Work Work Work
FlowManage Flow
Manage Flow Flow
Unmanage
Unmanage
d d d d
Queues
Holds call until agent
pickup
Serviced by one or many
groups
Follows each groups routing
sequence
Various configuration
options
Queue Overflow Action
Queue Timeout Action
Custom Prompts
Classic Operator
Operator with
Fallback
and After-Hours
Service
Deploying Response Groups
Establish
ed
RGS Ringing
No agent
anonymization:
Agent answers
Alice connects directly
RGS no longer part of
the call
Establish
ed
Components Used
Application service
Call Park application
Skype for Business Server Management Shell
SEFAUtil Resource Kit Utility
Clients
Skype for Business, Lync 2013, 2010, Phone Edition
User must be homed on Skype for Business or Lync 2013
Pool with Feb 2013 CU
Users can only be a member of one call pickup
group
DR requires admin to repoint orbits
Group Call Pickup Capacity Planning
Course
Configuring and Deploying
Emergency Calling
What Is Location Awareness?
Normalization Rule
Normalization Rule No No Emergenc
Global
Global
Normalization Rule y
y
?
? Call?
Call?
404: No
Yes
matching Call Park Orbit Range Yes
Dialing rule
Behaviors
Reverse
Reverse Number
Number Lookup
Lookup
Routing and
Authorization No match Match
Mediation
Mediation Server
Server and
and
Announcement 403: No Trunk
Trunk Configuration
Configuration
Announcement or or
Call route
Call Park
Park Application
Application
found
Gateway/IP-PBX/SIP
Gateway/IP-PBX/SIP Trunk
Trunk Inbound
Inbound Routing
Routing
Location Policies
E9-1-1 Configuration
2
Location Discovery
3
2
4
1
Caller
Placing an Emergency Call
3
4a 4b
2
5
1
Security
Caller PSAP
Location Policy Definition
Identity : EmergencyCallsRoute
Priority : 3
Description :
NumberPattern : ^\+911$
PstnUsages : {EmergencyCallsUsage}
PstnGatewayList : {PstnGateway:e911gw.fabrikam.net}
Name : EmergencyCallsRoute
SuppressCallerId :
AlternateCallerId :
PIDF-LO Support on Trunk
Course
PSTN Integration
Background Definitions
Supporte
Qualified Qualified
d
Gateway PBX
PBX
Typical Legacy Enterprise PBX
PSTN
Numbering Plan
31-20-500 1000 to
+31-20-500 1999
Class of Service
Class of Service
Outbound only
Inbound/Outbound
Local, National,
Local, National
and International
Dialing Habits
4 digit internal extensions
9 for an outside line
3 digits + extension for other locations
Decision 1: Legacy PBX integration
PST PST
N N
Decision 2: POTS/TDM or SIP Trunking
PSTN
PSTN
SIP TDM
Direct Connection Through a Gateway
PSTN
SIP TDM
Direct Connection Through SIP Trunking
PSTN
Configuration is
roamed for MPOP
endpoints, saving
state of
CallViaWork at the
endpoint & whether
its in use.
Connecting Through PBX by Using SIP
PSTN
Skype for Business
Skype for Business Mediation
Server
Pool
Qualified or
supported
IP-PBX
Qualified PSTN
IP-PSTN
Gateway
Skype for Business
Pool Skype for Business
Mediation
Server
TDM or
unsupported
PBX
These PSTN usages are used to determine destination for incoming call on a
trunk, if the call cant be terminated locally
No local client or other entity is found (essentially, the RNL fails)
No match to CallPark range or Unassigned Numbers range
IP-PBX to IP-PBX
Skype for
Peer to Peer Routing
Business
without Skype for Business
Server 2015
Inter-Trunk
Routing
Inter-Trunk Routing Signaling and Media
Flow
Routing of IP-PBX calls to PSTN via Skype for Routing of IP-PBX calls to another IP-PBX system
Business via Skype for Business
Incoming call from the PBX trunk Incoming call from the PBX trunk
RNL fails RNL fails
No match to Unassigned Numbers nor Call No match to Unassigned Numbers nor CallPark
Park ranges ranges
Validate incoming trunk associated PSTN Validate incoming trunk associated PSTN usages
usages Determine a route
Determine a route Apply outbound translation rules
Apply outbound translation rules Route to outgoing PBX trunk via Lync or Skype for
Route to outgoing gateway trunk Business
Media-bypass possible if IP-PBX supports it Media-bypass possible if both IP-PBX support it
Configuring Inter-Trunk Routing
Use the Skype for Business Management
Shell
New-CsVoiceRoute -Identity RedmondRoute -PstnUsages
Configure a voice route
@{add=Redmond"}
-PstnGatewayList @{add="PstnGateway:redmondgw1.contoso.com"}
Hyderabad
Skype for Business Pool
Bangalore Hyderabad
Gateway Gateway
PSTN
Interworking Routing-History
Trunk 1: MS10 to
PBX01
PBX01 port: 5060
Mediation Server Signaling IP: PBX-1
(MS10) Media IP: MTP-1
IP-PBX/Gateway
(PBX01)
Trunk 2: MS10 to
PBX01
PBX01 port: 5061
Signaling IP: PBX-1
Media IP: MTP-2
Configuration Details
Topology Builder:
Define the PSTN Gateway and Trunks
Define the MTP as the Alternate Media IP address
Use different gateway listening ports for each trunk
Publish the topology
Windows PowerShell:
Identify the trunk IDs
Use Windows PowerShell to configure media IP
addresses for the remaining trunks
Verify the media IP address for the trunks
Trunks and Resiliency
Mediation
Server MS1
Port A Gateway GW1
Port B
Trunk1
Trunk2
Mediation
Server MS2
Gateway GW2
Port C
Port E
Trunk3
Multiple Sites to the Same Service Provider
address
TLS cannot be used because the SBC certificate
Trunk 1 Trunk 2
Gateway Log
1d:0h:12m:15s OPTIONS sip:192.168.1.41 SIP/2.0
FROM: <sip:se01.tailspin.local:5068;transport=Tcp;ms-opaque=6b773cd98097b3f8>;
epid=BE80B79150;tag=cdee90d70
TO: <sip:192.168.1.41>
CSEQ: 3 OPTIONS
CALL-ID: 598db21985cb4d38a5e89a410987464a
MAX-FORWARDS: 70
VIA: SIP/2.0/TCP 192.168.1.52:59546;branch=z9hG4bK3b462b11
CONTACT: <sip:se01.tailspin.local:5068;transport=Tcp;maddr=192.168.1.52>
CONTENT-LENGTH: 0
USER-AGENT: RTCC/5.0.0.0 MediationServer
options GW-02
options
GW-02
options
User Experience
Server dials out to PSTN or Deskphone number to connect user, then connects with far-end dest
Features
Presence update & call control from rich client
Mid-call control capabilities preserved on PBX phone
Call via Work - Components
Dialog auto-populated
Inbound experience to
both client & phone
achieved when Skype is
first in line & forwarded
with Call FW settings
Scenario Behavior