Cloud Voice Mail (CVM) Checkliste

Diese Checkliste soll ihnen bei der Konfiguration von Cloud Voice Mail alle erforderlichen Schritte kurz zusammenfassen. Weitergehende Erläuterungen zum Warum und der Funktion von CVM finden sie auf der Seite Cloud Voice Mail (CVM). Informationen von Microsoft finden Sie auf

Wenn Sie ein "Cloud Only" Deployment haben, dann müssen Sie eigentlich nur eine Phone System Lizenz und Exchange Online zuweisen. Zudem brauchen Sie die ganz normale Konfiguration für Voice, d.h. Dialplan, Voice Policy, Rufnummern etc.

Wenn Sie eine Hybrid-Konfiguration nutzen, dann müssen Sie natürlich Voicemail entsprechend konfigurieren. Der Zugang zu Exchange UM und Cloud Voicemail erfolgt über die gleiche Einstellung und wenn Sie schon Exchange UM in der Cloud genutzt haben, dann könnten Sie einen Eintrag wie den folgenden schon lokal vorfinden.

Globale Einstellungen

Dieser Check ist genau genommen nur einmal erforderlich und klingt trivial. Oft wird aber genau das vergessen. Daher noch mal in Kürze und das ist schnell abgehakt.

Prüfpunkt / Konfiguration Erledigt

Office 365 Tenant

Ohne Tenant gibt es keine Cloud Voice Mail und er muss auch schon migriert sein. Ab Feb 2020 sollten alle Tenant migriert sein. Bislang konnte ich nur indirekt feststellen, ob ein Tenant schon migriert ist. Bei nicht migrierten Tenants finden Sie "Server: ExUMservice" als UserAgent in den SIP-Antworten.

AADConnect

Ihre lokalen Exchange Benutzer und Skype Benutzer müssen natürlich im AzureAD "bekannt" sein. Ein korrekt installierte AADConnect mit aktvierter Skype und Exchange Hybrid Bereitstellung ist Voraussetzung.

„Without DirSync the CVM (online) service can not discover the mailboxes of the users receiving voicemails.”
Quelle: https://GitHub.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness/issues/1613

Skype Hybrid oder Teams Direct Routing

Wenn Sie noch Skype for Business On-Premises nutzen, dann müssen Sie Hybrid einrichten. Wen sie Teams in der Cloud nutzen, benötigen Sie Rufnummern von Microsoft oder per Direct Routing. Ein direkter SIP-Trunk von einer sonstigen TK-Anlage oder SBC direkt zu CVM ist nicht möglich.

Exchange Hybrid mit Authentifizierung

Wenn ihre Exchange Postfächer noch "On-Premises" liegen, dann muss Cloud Voice Mail natürlich per Autodiscover die Eingangspunkte zu ihren Exchange Servern finden und sich als "Trusted Application" auch anmelden können. Das ist aber das normale Exchange Hybrid Setup, damit Cloud Voice Mail per EWS auf die Daten im Postfach zugreifen kann

Online: Kontrolle Voicemail Policies

Eigentlich sollte alles OK sein aber ein Blick ist es zumindest wert:

Import-Module SkypeOnlineConnector
$userCredential = Get-Credential
$sfbSession = New-CsOnlineSession -Credential $userCredential -OverrideAdminDomain <tenant>.onmicrosoft.com
Import-PSSession $sfbSession

Get-CsOnlineVoicemailPolicy

Identity                            : Global
EnableTranscription                 : True
ShareData                           : Defer
EnableTranscriptionProfanityMasking : False
EnableEditingCallAnswerRulesSetting : True
MaximumRecordingLength              : 00:05:00

Identity                            : Tag:Default
EnableTranscription                 : True
ShareData                           : Defer
EnableTranscriptionProfanityMasking : False
EnableEditingCallAnswerRulesSetting : True
MaximumRecordingLength              : 00:05:00

Identity                            : Tag:TranscriptionDisabled
EnableTranscription                 : False
ShareData                           : Defer
EnableTranscriptionProfanityMasking : False
EnableEditingCallAnswerRulesSetting : True
MaximumRecordingLength              : 00:05:00

Identity                            : Tag:TranscriptionProfanityMaskingEnabled
EnableTranscription                 : True
ShareData                           : Defer
EnableTranscriptionProfanityMasking : True
EnableEditingCallAnswerRulesSetting : True
MaximumRecordingLength              : 00:05:00

Bei mir sind diese vier Policies per Default da. Wie immer müssen Sie sich überlegen, welche Einstellungen sie in einer Policy zusammenfassen und an Benutzer zuweisen können. Auch hier gilt: Weniger Richtlinien ist besser um beim Support-Prozess nicht zu viele Sonderkonstellationen berücksichtigen zu müssen

Online: Kontrolle Voice Policies

In SfB Online gibt es schon vordefiniert Voice Policies.

PS C:\> Get-CsHostedVoicemailPolicy

Identity             : Global
Description          :
Destination          : exap.um.outlook.com
Organization         : msxfaq.onmicrosoft.com
BusinessVoiceEnabled : False
NgcEnabled           : False

Identity             : Tag:BusinessVoice
Description          : VoiceMail Policy for Business Voice enabled users
Destination          : sipedgebl20r.infra.lync.com
Organization         : BVProd
BusinessVoiceEnabled : True
NgcEnabled           : True

Hier heißt Cloud Voice Mail noch "Business Voice"

OnPremise: Voicemail Policies

Nun kontrollieren wir noch die Voicemail Policies On-Premises. Nutzen Sie dazu eine eigene Powershell, denn das Commandlet ist identisch.

Das geht natürlich nur, wenn Sie lokal noch einen Skype for Business Server haben, der bei einem Anruf unterscheiden muss, ob er lokal nach Exchange UM sucht oder den Anruf in die Cloud leitet.

PS C:\>get-CsHostedVoicemailPolicy

Identity     : Global
Description  :
Destination  :
Organization :

Identity     : Tag:BusinessVoiceMail
Description  : Business Voicemail Policy
Destination  : exap.um.outlook.com
Organization : msxfaq.onmicrosoft.com

Während der Review-Phase habe ich hier eine weitere Policy für meine Domäne angelegt, die dann nur die Testbenutzer bekommen haben. Microsoft kann wohl in Office 365 Pro Domäne die Funktion ein/abschalten und so konnte ich pro On-Premises User das Routing beeinflussen Die Domain hat anscheinend nichts mit der echten SMTP oder SIP-Domain zu tun sondern ist nur ein Routing-Eintrag für die ExchangeUM-Routing-Logic in meinem Skype for Business Frontend Servers.

Benutzer Einstellung

Nachdem die globalen Einstellungen erfolgt sind, können Sie dann Benutzer für Benutzer aktivieren.

Online: Lizenzen

Die Erforderlichen Lizenzen sollten sie tagesaktuell prüfen, da Sie sich manchmal ändern. Nach meiner Erfahrung gilt

  • OnPremise SfB Benutzer die Enterprise Voice Enabled sind brauchen angeblich keine Online Lizenz
    Das habe ich aber nie selbst getestet, da meine Kunden immer Exchange Online Pläne lizenziert haben, auch wenn Sie Exchange One Prem nutzen
    Sie brauchen aber eine Exchange Mailbox (Auch OnPrem) und haben so ja auch eine Lizenz
  • Ohne Enterprise Voice brauchen Sie einen Exchange Plan 2
    Wobei dann auch fraglich ist, was diese Benutzer mit Voicemail wollen. Vielleicht für Federation-calls
  • Skype for Business Online brauchen Phone System
    Ansonsten könnten sie ja nicht telefonieren und VoiceMail wäre kaum sinnvoll nutzbar.
Connect-MSOLService
Get-MsolUser -UserPrincipalName user1@uclabor.de `
   | Select-Object -ExpandProperty Licenses `
   | select AccountSKUID

AccountSkuId
------------
msxfaq:ENTERPRISEPACK
msxfaq:MCOEV

On-Premises: Kontrolles des Users

In einer Hybrid-Umgebung sollten Sie jedem Benutzer die richtige Hosted Voicemail Policy geben, damit der Skype for Business Server den Anruf korrekt routet.

PS C:\> Get-CsUser user1@uclabor.de | fl HostedVoiceMail,EnterpriseVoiceEnabled,HostedVoicemailPolicy  

HostedVoiceMail        : True
EnterpriseVoiceEnabled : True
HostedVoicemailPolicy  : BusinessVoiceMail

Der Eintrag bei HostedVoicemailPolicy muss natürlich auf eine Policy weisen, die es auch gibt und der Eintrag HostedVoiceMail muss "$true" sein. Wenn dies nicht stimmt, dann sollten Sie dies nachholen. Es stört übrigens nicht, wenn der Benutzer immer noch "ExUMEnabled" ist, da die HostedVoiceMail Policy überstimmt.

Online: Kontrolle des Benutzers

In der Online-Konfiguration muss natürlich hauch die HostedVoicemailPolicy und der Eintrag "HostedVoicMail" richtig eingestellt sein

PS C:\> Get-CsOnlineUser -Identity user1@uclabor.de | fl *voice*,*dial*

OnPremEnterpriseVoiceEnabled   : True
HostedVoiceMail                : True
EnterpriseVoiceEnabled         : True
TeamsVoiceRoute                : False
VoicePolicy                    : HybridVoice
OnlineVoicemailPolicy          : Default
VoiceRoutingPolicy             :
HostedVoicemailPolicy          : BusinessVoice
OnlineVoiceRoutingPolicy       :
OnlineDialinConferencingPolicy :
DialPlan                       : DE
TenantDialPlan                 :
OnlineDialOutPolicy            :

Wenn Sie schon hier sind, dann können sich auch das Verhalten der Voicemail gleich anpassen, z.B. ob eine Transcription erfolgen soll

Grant-CsOnlineVoicemailPolicy `
   -Identity sip:user1@uclabor.de `
   -PolicyName NoTranscriptionAllowed

Exchange On-Premises und Cloud Voice Mail

Anscheinend ist diese Einstellung nicht mehr erforderlich.

In allen Beschreibungen wurde ein Commandlet bislang unterschlagen. Ich kann bei einem On-Premises Exchange Postfach den Parameter "CloudVoicMail" setzen.

[PS] C:\>enable-ummailbox user1@uclabor.de -EnableCloudVoiceMail
 
Name    UMEnabled Extensions UMMailboxPolicy PrimarySMTPAddress
----    --------- ---------- --------------- ------------------
User1   True      {}                         user1@uclabor.de 

Der Schalter "-EnabledCloudVoiceMail" verträgt kein "$true" und braucht auch sonst keine weitere Konfiguration. Technisch wird im Hintergrund nur das Feld "msExchUCVoiceMailSettings" mit dem Inhalt "ExchangeHostedVoiceMail=1" gefüllt, welches AADConnect einliest.

Das Feld schafft es aber nicht mal bis ins Metaverse und wird auch nicht nach Office 365 repliziert. Anscheinend ist es gar nicht mehr erforderlich.

Entfällt

Damit sollte dann die Konfiguration für die Dienste und Anwender erfolg sein. Erwarten Sie aber bitte nicht, dass diese Änderungen umgehend und sofort aktiv werden. Sowohl die interne Replikation in Office 365 als auch Cache-Funktionen der Client Verzögerung die Aktivierung der Einstellungen. Es gibt Aussagen, dass es auch gerne mal 24-48 Stunden dauern kann, bis alle Änderungen greifen.

Weitere Links