In enterprise voice deployments with Microsoft Teams Phone, voicemail is an integrated cloud service managed by Azure Speech Services and Exchange Online. While automated voicemail transcription delivers enormous convenience by converting spoken messages into written text directly within Outlook and Teams, highly regulated industries—such as healthcare, banking, legal practices, and national defence—face stringent privacy mandates. Uncontrolled voicemail transcription can inadvertently capture sensitive Protected Health Information (PHI), credit card credentials, or privileged client discussions in unencrypted text bodies. To balance user accessibility against corporate data protection, enterprise administrators govern Cloud Voicemail features using the Microsoft Teams PowerShell module and CsOnlineVoicemailPolicy cmdlets.
Understanding CsOnlineVoicemailPolicy Capabilities
The CsOnlineVoicemailPolicy cmdlets manage cloud voicemail features, transcription algorithms, profanity filtering, and audio recording retention across assigned users:
- Automated Transcription (EnableTranscription): Controls whether Azure AI transcribes voicemail audio into text delivered alongside the audio attachment.
- Profanity Masking (EnableTranscriptionProfanityMasking): Replaces recognized profane words in transcripts with asterisks (
****) before delivery. - Voicemail Audio Recording (EnableVoicemail): Governs whether callers can leave recorded voice messages when calls go unanswered, or if calls simply divert to alternative queues.
- Transcription Translation (EnableTranscriptionTranslation): Toggles automatic multilingual translation of voicemail transcripts into the recipient’s preferred mailbox language.
- Editing Greetings (EnableEditingCallAnswerRules): Grants or restricts user permissions to configure custom call answering rules (such as greeting bypass, transfer to operator, or out-of-office audio prompts).
Connecting to Microsoft Teams PowerShell
Launch an elevated PowerShell session and establish an authenticated connection using an account with the Teams Administrator or Global Administrator Entra ID role:
# Import the Microsoft Teams module
Import-Module MicrosoftTeams
# Establish connection
Connect-MicrosoftTeams
Auditing Existing Voicemail Policies
Query the tenant to review all configured voicemail policies, including the tenant-wide Global policy:
Get-CsOnlineVoicemailPolicy | Select-Object Identity, Description, EnableTranscription, EnableTranscriptionProfanityMasking, EnableEditingCallAnswerRules
To inspect the detailed parameter list of the Global policy:
Get-CsOnlineVoicemailPolicy -Identity "Global" | Format-List
Creating a High-Compliance Healthcare and Finance Voicemail Policy
For departments dealing with sensitive financial or patient data where written transcription violates compliance policies, create a policy that disables transcription while retaining audio recording:
New-CsOnlineVoicemailPolicy -Identity "Strict-Compliance-VoicemailPolicy" `
-Description "Healthcare and Finance voicemail policy: audio recording enabled, transcription disabled for HIPAA/PCI-DSS compliance" `
-EnableVoicemail $true `
-EnableTranscription $false `
-EnableEditingCallAnswerRules $true `
-EnableTranscriptionProfanityMasking $true
When users under this policy receive a voicemail, Teams delivers the encrypted .wav audio attachment without generating any plain-text transcription in the message body.
Creating an Executive Voicemail Policy with Transcription and Translation
For executive leadership requiring maximum productivity and multilingual communication, create an unconstrained policy with full AI transcription and translation enabled:
New-CsOnlineVoicemailPolicy -Identity "Executive-FullTranscription-Policy" `
-Description "Full transcription, translation, and custom greeting controls for Executive leadership" `
-EnableVoicemail $true `
-EnableTranscription $true `
-EnableTranscriptionTranslation $true `
-EnableTranscriptionProfanityMasking $false `
-EnableEditingCallAnswerRules $true
Modifying Existing Voicemail Policies
To update an existing policy (for example, enforcing profanity masking across an existing team policy), execute Set-CsOnlineVoicemailPolicy:
Set-CsOnlineVoicemailPolicy -Identity "Strict-Compliance-VoicemailPolicy" `
-EnableTranscriptionProfanityMasking $true
Assigning Voicemail Policies to Users and Groups
Assign the policy directly to individual accounts or batch-assign it across departmental security groups using Entra ID attributes:
# Direct assignment to a single employee
Grant-CsOnlineVoicemailPolicy -Identity "[email protected]" `
-PolicyName "Strict-Compliance-VoicemailPolicy"
# Bulk assignment across a clinical operations department
Get-AzADGroupMember -GroupDisplayName "Clinical Staff" | ForEach-Object {
Grant-CsOnlineVoicemailPolicy -Identity $_.UserPrincipalName `
-PolicyName "Strict-Compliance-VoicemailPolicy"
}
To verify the effective policy assigned to a user:
Get-CsUserPolicyAssignment -Identity "[email protected]" | Where-Object { $_.PolicyType -eq "OnlineVoicemailPolicy" }
Validating Voicemail Behaviour and Compliance Verification
Place an external PSTN test call to the assigned user’s Teams Phone number and leave a simulated test voicemail message containing specific phrases:
- Open the recipient’s Teams client under Calls > Voicemail.
- Confirm that under
Strict-Compliance-VoicemailPolicy, the audio player is present and functional, but the Transcript pane displays a message indicating that transcription is disabled by organizational policy. - Check the user’s Exchange inbox in Outlook. Confirm that the email contains only the attached audio file without indexed text, ensuring full compliance with corporate DLP and discovery standards.
Administering CsOnlineVoicemailPolicy via PowerShell gives IT leaders granular control over Azure AI voice analytics, safeguarding sensitive business data while delivering flexible communication tools across Microsoft Teams.