Fig: Unified Messaging Call flow (Exchange 2016 & Skype For Business Integration)
Though we can use unified messaging role for multiple features related to enterprise voice, most organizations make use of it for voice mail and call routing. UM role helps in putting the voice messages and email messages into a common mailbox that can be accessed from different devices. Some of the Unified messaging features are as below.
- Access to Exchange information
- Play on Phone
- Voice mail form
- Call answering
- Call Answering Rules
- Voice Mail Preview
- Message Waiting Indicator
- Missed call and voice mail notifications using SMS
- Protected Voice Mail
Outlook Voice Access
Here I’ll be explaining, each components involved, when Skype for Business is integrated with Exchange 2016 for availing the Unified messaging feature and how it works together to provide a ultimate Voice and email messaging solution.
Unified Messaging Components Involved
- UM Dial Plan
- UM Policy
- UM Service
- UM call Router Service
- Auto Attendant
- Outlook Voice Access
UM Dial Plan:
Here Exchange act as an IP-PBX, all user extensions hosted in Exchange, within a dial plan contain the same number of digits. Users can dial one another’s telephone extensions without appending a special number to the extension or dialing a full telephone number. In this way a UM dial plan mirrors a telephony dial plan. We always have an option to restrict the users from calling other users extensions inside and outside the dial plan.
In Unified Messaging, the following UM dial plan topologies can exist:
- A single dial plan that represents a subset of extensions or all extensions for an organization with one PBX or IP PBX.
- A single dial plan that represents a subset of extensions or all extensions for an organization with multiple networked PBXs or IP PBXs.
- Multiple dial plans that represent a subset of extensions or all extensions for an organization with one PBX or IP PBX.
- Multiple dial plans that represent a subset of extensions or all extensions for an organization with multiple PBXs or IP PBXs.
By default, when a UM dial plan is created, a UM mailbox policy is also created with same name as Dialplan. However we always have an option to create custom policies and apply it to users.
Unified Messaging (UM) mailbox policy is used to apply a common set of UM policy settings, such as PIN policy settings or dialing restrictions, to a collection of UM-enabled mailboxes. UM mailbox policies link a UM-enabled user with a UM dial plan and apply a common set of policies or security settings to a collection of UM-enabled mailboxes.
UM Call Router Service:
When an Exchange 2016 server receives a SIP INVITE for an incoming call, the Microsoft Exchange Unified Messaging Call Router service redirects the incoming call to the Exchange server hosting the active mailbox of the user. It also performs, speech grammar generation using an arbitration mailbox for an organization.
Microsoft Exchange Unified Messaging service on the Mailbox server plays the user’s voice mail greeting, processes call answering rules for the user, and invites the caller to leave a voice message.
UM auto attendants is used to create a voice menu system for the organization, that lets external and internal callers locate, place, or transfer calls to company users or departments in an organization
Auto attendant menu helps to transfer callers to the extension of a user or department without the intervention of a receptionist or an operator.
Outlook Voice Access (Subscriber Access):
UM-enabled user can call in to an internal or external telephone number that’s configured on a UM dial plan to access their mailbox and use the Outlook Voice Access menu system. Using this menu, UM-enabled users can read email, listen to voice messages, interact with their Outlook calendar, access their personal contacts, and perform tasks such as configuring their Outlook Voice Access PIN and recording their voice mail greetings. Unauthenticated users are restricted to just searching the directories by calling in to SA number, however authenticated users(Using Pin) can perform all the above task.
Any Phone system can make use of the Unified messaging feature from Exchange Server, however in this article I’ll be demonstrating the steps to Integrate Skype for Business with Exchange 2016 Server.
Step 1. Enable Server to Server Authentication.
Please refer to my previous article to enable this. (Click Here)
Step2. Validate the Certificate.
Make sure the Exchange Server name is present in the SAN entry of Exchange Cert.
1. Create & Configure UM Dial Plan
Create New UM Dial Plan
New-UMDialPlan -Name “NY” -VoIPSecurity “Secured” -NumberOfDigitsInExtension 4 -URIType “SipName” -CountryOrRegionCode 1
- Edit the newly created Dial Plan as below.
Set-UMDialPlan “NY” -ConfiguredInCountryOrRegionGroups “NY-Region,*,*,*” -AllowedInCountryOrRegionGroups
Each dial plan has 2 parameters called ‘ConfiguredInCountryorRegionGroups’ and ‘ConfiguredInternationalGroups’. These parameters act as a repository for dialing rules for ‘in country’ and ‘international’ calls respectively. After configuring the dialing rules in these parameters, they can be applied within the scope of UM Mailbox Policy object, or UM Auto Attendant object or the Dial Plan object.
2. Configure UM and UMCallRouterService
Configure UM Services
UM server is added to the new UM dial plan and configured to support for both TCP and TLS connections.
Set-UmService -Identity “MBX1.cloudexchangers.com” -DialPlans “NY” -UMStartupMode “Dual”Assign the same Exchange certificate to the UM Service from ECP or using shell as below.
Enable-ExchangeCertificate -Server “MBX1.cloudexchangers.com” -Thumbprint “73AF7BE897B987787BF7625527BFF95AEB5A3FB0” -Services “UM”.
Note: Restart UM service.
Configure UM Call Router Service
UM Call router service is added to the new UM dial plan and configured to support for both TCP and TLS connections.
Set-UMCallRouterSettings -Server “MBX1.cloudexchangers.com” -UMStartupMode “Dual” -DialPlans “NY”Assign the same Exchange certificate to the UM Call router Service from ECP or using shell as below.
Enable-ExchangeCertificate -Server “MBX1.cloudexchangers.com” -Thumbprint “73AF7BE897B987787BF7625527BFF95AEB5A3FB0” -Services “UMCallRouter”
Note: Restart UMCallRouter service.
Below shows the certificate assignment to various services.
3. UM Mailbox Policy Configuration:
Every time we create a new Dial Plan, a Mailbox policy of same name is created. Here I will be editing the NY policy created.
Get-UMMailboxPolicy NY | Set-UMMailboxPolicy -AllowedInCountryOrRegionGroups “NY-Region” -MinPINLength “4” –
4. Configure Subscriber Access and Auto attendant:
- In EAC, go to UM and Dial Plan. Double Click “NY” dial Plan > Configure > Outlook Voice Access > Enter the Outlook Voice Access number > (+15138881000)
- In EAC, go to UM and Dial Plan. Double Click “NY” dial Plan > Scroll down to “UM AutoAttendants” > Click on + > Enter the name AA & details as below.
5. Configure UM IP Gateway and IP Hunt Group
Navigate to below location from Exchange Shell and execute the script ExchUCUtil.ps1, which configures UMIPgateway, IP Hunt Group & give SfB server permission on exchange box. Execute the script till the Dial plan name is shown in the results. (Make sure no AD replication issues)
C:\Program Files\Microsoft\Exchange Server\V15\Scripts>.\ExchUCUtil.ps1
6. Create SA and AA contacts in Active Directory from SFB server
Navigate to “C:\Program Files\Common Files\Skype for Business Server 2015\Support” location in SFB server and execute
Click on Load to populate the Dialplan and the respective AA and SA details, hit add contacts for both SA and AA. Ensure the number populated for both contacts are correct. Once this is done, you will see two contacts in Active directory users and computers.
Creating AA contact:
Creating SA contact
7. Enable mailbox of users for UM:
This can be done from ECP or through shell as below.
Enable-UMMailbox -Extensions 1004 -SIPResourceIdentifier “firstname.lastname@example.org” -Identity “cloudexchangers\Kingson”
Ensure a unique extension is provisioned to the user. Once the user is enabled for UM, they will get an email with all the details including PIN.
Now search for AA(email@example.com) and SA(firstname.lastname@example.org) sip uri in Skype for Business client and add it as a contact for easy access. From now onwards any call not being answered by the UM enabled user will be redirected to the voice mailbox. Also any internal or external user can call the AA number and enter the extension of another user, to reach him or her in the S4B client.
Anoop Karikuzhiyil Babu
Former Microsoft Premier Unified Communication Engineer