Configuring Skype for Business and Office 365 Unified Messaging for Voicemail is a fairly simple task. Of course no task should be undocumented, so here goes.
Environment
On premise Skype for Business 2015 deployment
Mail delivered via Office 365
On premise users synchronised back to Office 365 via DirSync
NOTE: UM connectivity, in this case is done via Federation to Office 365. So it goes without saying that a working Edge infrastructure is required. Also Federation needs to be enabled (and working)
First we will configure the Skype for Business Front End Pool
From the Skype Front End Server
1. Ensure that Federation is enabled for the Edge Configuration (Federation needs to be enabled in the Topology). Confirm by the following cmdlet:-
Get-CsAccessEdgeConfiguration
To change AccessEdgeConfiguration:-
Set-CsAccessEdgeConfiguration -enablepartnerdiscovery $true -UseDnsSrvRouting -AllowFederatedUsers 1
NOTE Partner discovery may be either enabled or disabled.
2. Adding O365 as a hosting provider for UM
New-CsHostingProvider -Identity “Exchange Online” -Enabled $True -EnabledSharedAddressSpace $True -HostsOCSUsers $False -ProxyFqdn “exap.um.outlook.com” -IsLocal $False -VerificationLevel UseSourceVerification
3. Make sure these changes have been replicated (don’t continue until it has!)
Force Replication with:
Invoke-CsManagementStoreReplication
Confirm with Replication Successfully completed:
Get-CsManagementStoreReplicationStatus
4. We now need to add the Hosted Voicemail policy, The Office 365 Tenant Name is required for this. The policy is added with the following cmdlet:
NOTE “CloudUM” in my case is the name I gave the on premise UM Policy
New-CsHostedVoicemailPolicy -identity CloudUMPolicy -Destination exap.um.outlook.com -Description “Office 365 Voicemail” -Organization “tenantname.onmicrosoft.com”
TIP: To find the Organization name login to O365 Admin Portal. Don’t use the same Tennant name as the on premise SIP domain as that will resolve to on premise and, of course, for voicemail it needs to resolve to O365
The Organization Name is also the *Default Domain as defined in the Admin Center in the Company Profile page
Next, we need to configure Office 365
From the Office 365 Portal
- Navigate to Unified Messaging (Office 365 Admin Center – Exchange – Unified Messaging
2. Add a new UM Dial Plan by clicking on the +
3. Complete the New UM Dial Plan Page as per your requirements and click Save



Next we head back to Skype for Business
- Create the UM Contact
New-CsExUmContact -displaynumber +613456789 –sipaddress SIP:EX_UM_365_SA@ucsorted.com -registrarpool pool01.ucsorted.com -ou “OU=IT,OU=UCSorted,DC=com”
TIP: I often come across a request to change Subscriber Access number, use Set-ExUmContact to change it if you need too.
NOTE: By specifying the “DisplayNumber” the LineUri is also set (I know its odd)
2. Assign the Hosted Voicemail Policy to the EX UM Contact
Grant-cshostedvoicemailpolicy –identity “CN={f169db8b-….DC=au” –policyname CloudUMPolicy
TIP: I am not very fond of copying the identity in this manner. Since I have added only the 1 exumcontact I just do the following:-
Get-CsExUmContact | Grant-CsHostedVoicemailPolicy -PolicyName CloudUMPolicy
Then we switch to Exchange Online PowerShell
TIP: Use the following script to connect to EOL:
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
Next,
Set-UMmailboxpolicy -identity “Office 365 UM Default Policy” -SourceForestPolicy “OnPremUMPolicy”
TIP: The identity is that of the Office 365 UM Mailbox Policy (not the UM Dial Plan)
The following step only applies if UM is already deployed on premise and this UM deployment is part of migrating UM to O365. This is done from the on premise exchange environment.
Set-UMmailboxpolicy -identity “On Premise UM Policy” -SourceForestPolicy “CloudUMPolicy”
Finally, time to configure users
IMPORTANT
You cannot have a spilt setup where UM is in O365 and the user mailbox is on premise or vice versa.
2 steps are required for enabling users for UM in O365:-
- From SkypefB – Grant the user the Hosted Voicemail Policy and enable the user for Hosted Voicemail
- From O365 – Enable the user for UM
Within Skype for Business 2015 PowerShell
Grant-cshostedvoicemailpolicy –identity “paulb” –policyname CloudUMPolicy
get-csuser –identity “paulb”
Set-csuser –identity “paulb” –hostedvoicemail $true
Within O365 Exchange Admin Center
Navigate to Recipients (Office 365 Admin Centre – Exchange – Recipients)
Find the user you would like to enable for UM and click Enable
Browse for the O365 UM Mailbox Policy and click next
Provide the required extension number and PIN settings, click Finish to complete.
Of course synchronization by way of DirSync is required to ensure that the account is enabled for unified messaging.
Pingback: How to configure Office 365 Unified Messaging with Skype for Business | The Organized Assistant
Hi Paul.
Thank you for the great article. Have you ever tested O365 UM compatibility with 3PIP phones like the Snom UC Edition?
Regards
LikeLike
Hi Hendrik, I sure have. I have a SNOM 710 on my desk doing the job well. Occasionally there is a delay before the message button indicates a message is waiting. I believe that may be to latency from me to O365.
LikeLike
Hi Paul, thanks for the post. I followed the steps and enabled my user for unified messaging. When I call my DDI the line goes dead after a few rings and doesn’t redirect to Voicemail. Do you know where to start with troubleshooting this issue?
LikeLike
Hi James, I have added a few screen shots on adding the Subscriber Access number to the post. Basically you need to add the DDI in O365 to the Subscriber Access config and also make sure that its the same DDI you assigned on premise to the ExUmContact.
Let me know how you get on.
LikeLike
Thanks Paul. My colleague had a look this morning. He changed a couple of settings in the Dialing rules & authorization on Office 365 and it started working. Thanks again.
LikeLike
Pingback: Shared Address Space Routing is Disabled | greiginsydney.com
HI Paul, I have configured the policies as per your steps, but I am not able to get PSTN calls to reach the AA or SA numbers. I am able to call the services from a Skype client. I get the below message in clslogger.
ms-diagnostics: 1008;reason=”Unable to resolve DNS SRV record”;domain=”domain.global”;dns-srv-result=”NegativeResult”;dns-source=”InternalCache”;source=”acedge01.domain.global”
ms-edge-proxy-message-trust: ms-source-type=EdgeProxyGenerated;ms-ep-fqdn=acedge01.domain.global;ms-source-verified-user=verified
The edge server can resolve external DNS fine and the hybrid connection is working as expected. I read in another post that they had to change the default SIP domain to resolve the issue, but we have another client with the same configuration and they are working fine so I do not want just go and change the default SIP domain.
Any advise is appreciated.
LikeLike
Hi Dewalt, firstly, I will assume that your domain “domain.global” is valid externally. Next validation, does federation work as expected? The error you have posted looks very much like what is seen when the edge server is unable to resolve the _sipfederation._tls record so I’d check that too (when this record is not resolvable it generally affects federation). Cheers, Paul
LikeLike
Sorry that’s _sipfederationtls._tcp.domail.global 🙂
LikeLike