What is Cloud PBX Voice Mail? How does it Work? How to Configure Cloud PBX Voice Mail for SFB online users?
Cloud PBX Voice mail is a New Service Offering Provided by Microsoft using O365 Cloud PBX. Cloud PBX Voice Mail is ONLY available for Customers who Use O365 Skype For Business Online with Cloud PBX and PSTN calling or Cloud PBX with ON Premise Cloud Connector Edition (CCE). You CANNOT use Cloud Voice mail if you use Skype For Business Server or LYNC Server ON Premise, Nor can it be used with an On Premise PBX/IP-PBX Phone system.
General Pre-Requisites for Cloud Voice Mail
1. Cloud Voice Mail will work ONLY if your users are Homed in SFB Online. If you have SFB deployed in a Hybrid scenario then ONLY users who are hosted Online Will use Cloud Voice Mail.
2. You Need to have Microsoft Exchange as your Email Solution, Exchange can either be Online with O365 or ON premise. If Exchange is ON premise then the minimum Supported version for Exchange for Cloud Voice Mail is Exchange 2013 with CU12.
Below is a Table that Specifies the Supported Configurations for Voicemail available with Skype for Business
SFB User is Homed Online, Exchange Mailbox is Online:
When SFB User is Homed in O365 and has a Mailbox in Exchange Online then Voice Mail for such a user is Handled by Cloud PBX Voice mail service.
Please NOTE that Exchange UM is NOT used to provide Voicemail in this Scenario.
Voice Mail is Actually handled by the Cloud PBX Voice Mail service
When the Cloud PBX Voice Mail service takes a Voice Mail for a User it deposits this Voice Mail into the Users Exchange Mailbox and Hence we still Need Exchange.
Exchange is ONLY needed to Store a User's Voice Mail as we don’t have Native Storage for Voice mail anywhere in SFBO at the Moment.
Exchange Does NOT play any Role in Collecting a User's Voice Mail
How Does it Work?
- User E1 calls User E2
- User E2 Declines the Call
- This call is Now sent to the SFB online FE server where User E2 is Homed
- SFB FE server Now has to decide what to do with the call
- The FE server Checks User E2’s Hosted Voicemail Attribute to see if HostedVoicemail is set to $TRUE
- If it is, then it checks the Hosted Voicemail policy that is applied to the user and finds where to send the call.
- The Hosted VM Policy should point to the SFB Online Resource Forest Edge Pool (sipedgebl20r.infra.lync.com) which will then route the call to Cloud PBX Voice Mail Service.
- Once FE finds that the call needs to go to sipedgebl20r.infra.lync.com then it generates a new Invite and sends the call to the SFB online Edge server associated with the FE pool.
- The Job of FE server is done at this point
- Now the edge server associated with User E2's FE pool receives this call/INVITE
- The Edge server sends this call to the Resource forest Edge server sipedgebl20r.infra.lync.com
- An Edge server in the sipedgebl20r.infra.lync.com pool gets this Call
- The Edge server then sends this call to its next HOP which would be a FE server in its pool
- The FE server in the Pool now gets this call.
- This FE Server then sends the call to the Cloud PBX Voice mail service “noam.voicemail.services.skypeforbusiness.com” that runs in AZURE based on Custom Routing rules.
- Before sending the Call to the Azure VM service the FE server also adds a Special CONTEXT Header to the SIP INVITE which has the information of User E2 like SMTP address, Object ID, Tenant ID, Display Name etc. This information is used by the Azure VM service to find the language setting of the user and the email address of the user to deliver VM.
- The Azure VM Service “noam.voicemail.services.skypeforbusiness.com” will answer the call, record the VM and then send the Voice Mail as an email to the user E2's mailbox.
- The Voice Mail is then delivered to the users Mailbox as an attachment and the users Mailbox is the ONLY location where it is Stored.
Provisioning and license
To ensure Cloud PBX Voicemail works for your users We need to Verify If the Cloud PBX User is Provisioned Correctly. To do this you have to ensure the following is done
Verify that the SFB online User has the Following Licenses;
Cloud PBX for SFB
SFB PSTN Calling
Make Sure the user has a Telephone Number Assigned and is Enabled for Enterprise Voice
You can check this using the below Command from SFB Online Remote PowerShell
Get-CsOnlineUser | fl Alias,lineuri,Enterprisevoiceenabled*
The User should also have a Valid Exchange Mailbox (Online or On Premise) in order for him to be able to Receive/check his Voicemails.
There is NO CONFIGURATION that is required for Cloud PBX voicemail to work. If the user is provisioned correctly with the correct license and is enabled for Enterprise voice with a Telephone number then Cloud PBX Voicemail will automatically be enabled/configured in the backend. To ensure that it is indeed configured we can check the user configuration using SFB online Remote PowerShell.
Collect the output of the following commands from the SFB online Management Shell:
Get-CsOnlineUser | fl Alias,EnterpriseVoiceEnabled,Lineuri,Hostedvoicemail,hostedvoicemailpolicy
For a User to have Azure Voicemail, the HostedVoicemail Attribute should be set to TRUE
When a user is enabled for EV and LineURI is set, the Hosted Voicemail attribute will be automatically provisioned to TRUE for the user (this process might take some time for newly created or moved users, sometimes up to 24 hours). In case you find that the user still doesn’t have HostedVoicemail set to $true then you can Manually set this attribute using remote PowerShell with the help of the below command (however you should NEVER have to do this manually, this should ideally happen automatically as soon as the user is provisioned correctly in O365)
Set-CsUser -Identity email@example.com -HostedVoiceMail $true
The HostedVoicemailPolicy attribute should be populated with the name “Businessvoice”.
When a user is enabled for EV and LineURI is set, The Hosted Voicemail Policy attribute will also be automatically provisioned for the user (this process might take some time for newly created or moved users, sometimes up to 24 hours). In case you find that the user still doesn’t have HostedVoicemailPolicy attribute populated with "businessvoice" then you CANNOT Manually set this attribute using remote PowerShell as the command to do this is NOT available in SFB Online PowerShell.
The Hosted Voicemail Policy “Businessvoice” is a Default Policy that exists in O365 by Design and is the ONLY policy that needs to be used for Cloud Voicemail. This policy will be automatically applied for any user who is Enabled for Cloud PBX with PSTN calling.
Side note: You can check the properties of the Hosted Voicemail Policy “Businessvoice” using the command Get-CsHostedVoicemailPolicy.
The Destination attribute here points to the the SFB online resource forest pool where the Cloud Voicemail service resides. This destination field tells the Online FE servers where to send calls for Voicemail
You should NOT Try to Enable your user for UM.
If the settings listed above have been configured/provisioned correctly then the user is silently enabled for UM in the back end using a custom process. Remember Exchange UM is NOT used for Voicemail in this scenario. Exchange is ONLY used to store Voicemail messages and hence there is NO Need to enable UM for users manually. This is done automatically on the backend.
You can however verify if it is done from the Skype for Business admin center in the O365 Portal. Below is a screen shot showing this;
If you are NOT seeing the Unified Messaging flag set as enabled or any of the other settings populated like HostedVoicemail or HostedVoiceMailPolicy then try to call your user and test if you can leave them a Voicemail, normally once you leave them a voicemail all the settings and flags will get set automatically.
What if We have SFB online but Exchange ON premise?
If you are Using SFB online with Cloud PBX and PSTN calling and have Exchange Server ON Premise then in order for Cloud Voicemail service to deposit Voicemail messages to your users mailbox you will need to configure Oauth between Exchange ON Premise and Skype for Business online. The below article has information on how to achieve this
Feature Matrix for Cloud PBX Voicemail
The Table below lists the features that are available with Cloud PBX voicemail as compared to traditional Exchange UM.
Again - Keep in Mind that Exchange UM is NOT used for Voicemail in this scenario and hence the features available with Exchange UM may not necessarily be available with Cloud PBX voicemail.