Microsoft Teams Shared Voicemail Now Supports Distribution Lists and Mail Enabled Security Groups

Today I discovered that there has been an update to Microsoft Teams Auto Attendants and Call Queues Shared Voicemail. In the past it was…

Today I discovered that there has been an update to Microsoft Teams Auto Attendants and Call Queues Shared Voicemail. In the past it was only possible to configure a Microsoft 365 Group as the transfer target of shared voicemail, as it’s described in this article.

Now the search box in Auto Attendant or Call Queue Wizards also return Distribution Lists and Mail Enabled Security Groups.

I don’t know when this change was implemented but there’s evidence out there that it has been around for at least some time or even since shared voicemail has been rolled out.

Since all the official Microsoft documentation I could find (then and now) only mentioned Microsoft 365 Groups, I honestly never even tried to search for another group type.

The documentation is not updated yet. Better yet, it still says Office 365 instead of Microsoft 365 group.

The OverflowActionTarget parameter represents the target of the overflow action. If the OverFlowAction is set to Forward, this parameter must be set to a Guid or a telephone number with a mandatory ‘tel:’ prefix. If the OverflowAction is set to SharedVoicemail, this parameter must be set to an Office 365 Group ID. Otherwise, this parameter is optional.

The description in the Auto Attendant and Call Queue Wizard also still references Microsoft 365 Groups only. But it does return Distribution Lists and Mail Enabled Security Groups when we search for them.

It does not find security groups, which makes sense, since they’re not capable of receiving emails.

Testing

This begs the question: is it only possible to choose these new group types or are shared voicemails actually delivered to Distribution Lists too?

Let’s find out…

It seems to be working just fine. Here’s a screenshot of the email received in Outlook.

When hovering over the recipient’s address, we can see what type of group it is.

Note that shared voicemail emails to Distribution Lists and Mail Enabled Security Groups look exactly the same in Outlook. Both are labeled as “Distribution list”, even though they are technically of different group types.

PowerShell

Nothing has changed on the PowerShell side of things. The OverflowAction is still called “SharedVoicemail” and the OverflowActionTarget.Type is still “Mailbox” while OverflowActionTarget.Id remains the group’s Object Id.

PS V:\GitHub\M365CallFlowVisualizer> $cq.OverflowAction                                        
SharedVoicemail

PS V:\GitHub\M365CallFlowVisualizer> $cq.OverflowActionTarget  
  
Id                                   Type  
--                                   ----  
413a7c2e-e359-4424-b2f7-xxxxxxxxxxxx MailBox

The Auto Attendant properties also remain unchanged.

PS V:\GitHub\\M365CallFlowVisualizer> $aa.DefaultCallFlow.Menu.MenuOptions  
  
  
Action         : TransferCallToTarget  
DtmfResponse   : Automatic  
VoiceResponses : {}  
CallTarget     : Type = SharedVoicemail  
                 Id = 413a7c2e-e359-4424-b2f7-xxxxxxxxxxxx  
Prompt         :  

Luckily, this means that I don’t have to update the M365 Call Flow Visualizer and everything continues to work like it did before.

Configuring via PowerShell

What’s a bit worrisome is that I was able to set the Id of a Security Group as the Shared Voicemail Target for a Call Queue through PowerShell. It doesn’t look like PowerShell is evaluating the group type when the queue is saved.

Once the queue has been updated through PowerShell, TAC will even display the name of the Security Group in the Wizard. As long as we don’t remove the Security group from the Shared Voicemail Target, it’s even possible to edit and save the queue through TAC. The invalid group remains.

When I delete the group and search for it again, nothing is returned anymore, as it should be.

To test this, I made a call to the queue. In this case, my overflow threshold was set to zero, so the call failed immediately with a busy tone.

I then did the same for the timeout action target and called the queue again. As soon as the timeout was reached, I could hear the transfer beep and then the call failed with a busy tone too.

Luckily, it’s a different story with Auto Attendants. When I tried the same thing there, an error was returned, like I expected for Call Queues in the first place.

Microsoft.Teams.ConfigAPI.Cmdlets.internal\Set-CsAutoAttendant :
A mail-enabled group with Id (da027ae9-467b-4334-829c-xxxxxxxxxxxx)
could not be found. Please give correct parameter value.

Conclusion

While I wouldn’t implement this in a production environment until the official documentation is updated and we know for sure, that this is working as Microsoft intended, I think it’s a great feature update for Teams Phone. Only being able to just use Microsoft 365 Groups, also meant that we always had to make sure that users are subscribed to receive all group emails or enabled the Follow in Inbox feature for themselves.

I will report the missing group type validation for Set-CsCallQueue to Microsoft and hope that they fix it soon. In the mean time, make sure that you’re extra careful and only configure Group Ids of M365 Groups, Distribution Lists or Mail Enabled Security Groups.

I’ll also see if I can update the Visualizer to include group type for shared voicemail in the diagrams.

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus
Hosted on GitHub Pages
Built with Hugo
Theme Stack designed by Jimmy