Hello Readers, I hope you are well. Happy New Year!
First post of the year and it’s a quick one. I will do a new post on Teams Auto Attendants and Call Queues because a lot has changed since I wrote my last post. This post is just to call out one new feature that I know will be popular with some.
Microsoft Teams Auto Attendants now support routing and redirection to voicemail.
And when I say voicemail, I mean specifically cloud voicemail for an Office 365 Group. For those that didn’t know, Office 365 Groups are voicemail enabled by default. Surprise! I didn’t know until I started looking at this. Or maybe I did, but forgot because it never occurred to me that there’d be a point to it.
How to do it
There are a few ways to route or redirect calls to voicemail but the most obvious workflow is for out of hours call handling.
You’ll need an Office 365 Group to use for a shared voicemail box. You can create a new group just for shared voicemail or pick an existing one. The important thing is that the users that you want to give access to these voicemails is a member or owner of the Office 365 Group you’re going to use.
Groups are listed in Outlook at the bottom of the folder list. If you have a lot of folders, you won’t see it. If you need easy access to it, add it to your favourites.
Next, either create a new auto attendant or open an existing one. Open the auto attendant and navigate to Call flow for after hours
Scroll down to set up after hours call flow and select redirect call.
Then choose voicemail in the drop down list and search for a group
After you’ve selected the group, enable transcription if you want to.
Then submit to save the changes. If you also have holidays set up and you also want your call flow during holidays to redirect to voicemail, you can do the same thing there.
In this example, I have created a holiday
Then I specify the call flow for this holiday and save it
Then submit once I’m happy. As you can see, my call action says redirect call.
Testing
If you want to wait until your auto attendant is out of hours to test redirection, that’s up to you. I decided to see what I could do during the day and it turns out you can also redirect calls to voicemail from a menu prompt.
And you can have voicemails transcribed.
Now, call your AA and press 3 when prompted to make a choice. In my testing, I got silence for about 2-3 seconds before I heard the voice telling me to leave a message. Then I left a message and hung up.
The voicemail was delivered to the Office 365 Group folder in my mailbox.
If you listen in Outlook for the web, you get an embedded player for listening to the message. You get caller ID if available and transcription which understood me perfectly.
What else?
I started thinking about other use cases for shared voicemail and one I thought of is for a busy call queue. In an ideal world, you’ll redirect to another queue to make sure calls are answered as quickly as possible. But I can think of one customer that likes for calls to go to voicemail if they don’t pick up during the day. Setting this up is a little clunky, but possible.
You’ll need a Group like before. A new auto attendant which is set to redirect all calls to voicemail and a resource account to use with the new auto attendant.
The reason you need a resource account is because call queues can only redirect calls to a person or a voice app.
And the only way to direct to a voice app is by using an associated resource account. Now just change what happens when calls time out and redirect to a voice app and search for the resource account which is associated with the new auto attendant that redirects to voicemail.
Clear? I said it was clunky, but at least it works. It would be better if Microsoft added support for redirecting to voicemail to call queues. Would be a lot more straightforward.
Wrap up
I think you’ll agree that this is a nice new feature. And possibly the best (only?) use of voicemail in a UC world where presence almost eliminates the need for personal voicemail. Obviously, this is subjective and debatable. Would love to hear your thoughts.
Great news! 🙂
LikeLiked by 1 person
Great article, I’ve finally pulled myself away from everything enough to take a look at AA holidays in Teams and this came along at just the right time.
LikeLiked by 1 person
Thanks James
LikeLiked by 1 person
Hi Randy, i see that this appears in outlook is it not possible to have it appear on the teams chat or is tehre an issue withis
LikeLike
Not that I know of
LikeLike
This new feature doesn’t seem to be available on every tenant yet.. Do you know the Microsoft 365 roadmap ID for this feature?
LikeLike
I haven’t seen it in the roadmap or in the message centre. I did know it was coming though.
LikeLike
Thank you for this. Does it require any license to be assigned to the O365 Group?
I’m having issues accessing the voicemails from our emails.
The display message is “Your request can’t be completed right now”
LikeLike
Hi Gary,
I didn’t need a license for the group. If it’s a new group there could be a little delay before it’s ready to use for this.
You will of course need phone system licenses in the tenant for cloud voicemail.
LikeLike
Awesome, at last! Have you seen if there is a way to record a customised greeting for the shared voicemail box?
LikeLike
Not that I’ve seen. I’d use a greeting on the overflow
LikeLike
I have configured mine like this with a greeting on the dummy IVR that hands off to the voicemail .But I have found the caller will hear both my personal greeting, and also the ‘system’ one on the group voicemail. Any way to remove the ‘system’ one?
LikeLike
For personal, do you mean your user greeting?
LikeLike
Set-CsOnlineVoicemailUserSettings -Identity “00000000-0000-0000-0000-000000000000” -DefaultGreetingPromptOverwrite “Hi, I am currently not available.”
From here https://docs.microsoft.com/en-us/powershell/module/skype/set-csonlinevoicemailusersettings
LikeLike
How to you setup the voice mail greeting for the groups voicemail?
LikeLike
I haven’t found a way. I would use the greeting to “record” a message
LikeLike
Thank you for the response. I’m not sure what you mean by the “greeting” to “record” a message.
LikeLike
In the auto attendant you can overflow and text to speech a message “leave a message” etc
LikeLike
I think I understand. So I would create another auto attendant that does nothing do anything but have the “greeting’ and then redirects to the voicemail. Then in the original auto attendant I would redirect to the “voicemail only” auto attendant instead directly to the voice mail.
LikeLiked by 1 person
You need to create a licensed user.
Assign the correct licensing,
log in as the user through Teams,
change the VM message,
sign out as that user,
log back in as admin to the Teams admin portal,
find the AA then have it forward to that user.
Since the user is logged out, it will go straight to VM.
Stupid? Yes. Expensive for a simple shared VM with a custom message? Also yes. However, that is the only way that it can done as of now that I have found.
LikeLiked by 1 person
I actually utilized the “Common Area Phone” license for a user and the forwarding worked. It is much cheaper than a full license. The other steps I previously put are still a go.
LikeLiked by 2 people
Set-CsOnlineVoicemailUserSettings -Identity “00000000-0000-0000-0000-000000000000” -DefaultGreetingPromptOverwrite “Hi, I am currently not available.”
From here https://docs.microsoft.com/en-us/powershell/module/skype/set-csonlinevoicemailusersettings
LikeLike
1. Create 3 Resource Accounts in Teams admin portal:
a. AA Shared VM Resource Group (Auto Attendant Group)
b. Call Queue Shared VM (Call Queue)
c. Main Auto Attendant (Auto Attendant) (assign a number to this. You need to create multiple resource accounts to assign multiple numbers)
2. Purchase (they are free) and assign Microsoft 365 Phone System – Virtual User to each resource account. (they are users in the O365 admin portal.
3. Create 2 Auto Attendants
a. Create 1st Level Auto attendant and assign the Main Auto Attendant resource group to it.
b. Create Direct to VM AA and assign AA Shared Resource Group to it.
4. Create a Call Queue named “AA VM Call Queue”
a. Assign the “Call Queue Shared VM setup” resource account.
b. Gretting = No greeting
c. Music on hold = Default
d. Call answering = User, users, or groups you would like to ring.
e. Routing Method = Serial Routing
f. When maximum number of calls is reached = Redirect this call to = Voice app = AA Shared Voicemail Resource
g. Under Call time out handling, put 30 seconds (or whatever you want)
h. When call times out Redirect this call to Voice app =AA Shared Voicemail Resource
5. Open 1st Level Auto Attendant and set timezone and language
a. Click on “Call Flow” on the left
b. Select “No Greeting”
c. Under “Then Route the Call” select “Redirect Call”
d. “Redirect to” Voice App = Call Queue Shared VM Setup
e. Set up after hours time and any other configurations you need or leave default.
6. Open Direct to VM AA and set timezone and language
a. Click on “Call Flow” on the left
b. Select “No Greeting”
c. Under “Then Route the Call” select “Redirect Call”
d. “Redirect to” Voicemail = (Whatever the name is of the group voicemail. O365 Groups are VM enabled by default)
e. Set up after hours time and any other configurations you need or leave default.
This will ring the first person then forward to the VM.
Save and test
LikeLiked by 2 people
Very comprehensive
LikeLike
Great if you want the voicemail dropped into a TEAMS site… not so much if you want it dropped into a shared mailbox.
LikeLike
Jim, the group is like a mail enabled public folder. Everyone has access to it to listen to messages and to delete as needed.
LikeLike
Hi Randy, I have set up autoattendant, voicemail etc works but my group members do not have the ability to delete the messages in outlook groups, any idea how to get around this?
LikeLike
I’d have to test. But maybe setting delegate permissions on the group mailbox
LikeLike
They need to be a group owner to delete. Crazy but true.
LikeLike
Does anyone know how to do this setup in powershell? I can create everything there but cannot seem the get the voicemail to be a callable entity in SfB.
LikeLike
Hi Jeremy,
It’s on my list to try it out
LikeLike
I have figured out how to add groups to the call flow via powershell. When creating a new callable entity set the following:
New-CsAutoAttendantCallableEntity -Identity (GroupObjectID) -Type SharedVoicemail
Once this is set perform the rest of the menu options up as normal and will link as expected.
LikeLike
Cool. I’ve got a multi-line script cooking now
LikeLike
This should do the trick:
$SearchQuery = Read-Host “Please enter at least 3 characters from the Display Name of the Shared Voicemail Group”
$CallTransferTargetSharedVoiceMail = (Find-CsGroup -SearchQuery $SearchQuery -MailEnabledOnly $true) | Out-GridView -PassThru -Title “Select the target group for the Shared Voicemail.”
$AfterHoursCallableEntitiy = New-CsAutoAttendantCallableEntity -Identity $CallTransferTargetSharedVoiceMail.Id -Type SharedVoicemail
LikeLiked by 1 person
I hope they can also allow Call Queues to redirect to a Shared Voicemail directly rather than redirecting to a sub Auto-Attendant just for voicemails.
LikeLike
I agree
LikeLike
Hi Randy, how can I pull reports on the call queues and AAs? I have not found any useful info on this? I would like to get some daily stats like # of calls, #drops – I don’t know if one can also find other stats like avg. wait time, etc.
LikeLike
There is a CDR API in preview now. This will allow admins to query the CDR directly and save entries into a database which would then be used for building reports. Software providers such as Code Software are working with Microsoft and will be launching applications that can do this.
LikeLike
I fallowed the instructions, but my group is not found when using the voice app, tried the name and email address of the group… anyone have had same issue?
LikeLike
@Najef – Are you trying to link to a call queue or auto attendant? Call Queues are currently unable to have voicemail as an option. Linking to a group is a voicemail option only as far as I have seen.
LikeLiked by 1 person
Does anyone know if this feature ( enabling Voicemail for Call Queue) is on Microsoft’s roadmap, or is there a user voice feature request ?
LikeLike
FYI Call Queues can have voicemail directed to Groups now at least in my tenant
LikeLike
Yep. I’ve got a draft post to finish on this
LikeLike
Sorry, I didn’t see that Jermery already figured it out by himself and posted the reply.
LikeLiked by 1 person
I’ve set up a helpdesk queue, call directly goes to level 1 queue, if no answer it redirects to level 2 queue. After no answer it redirects to VM AA. I’d like to have the VM AA go to a shared mailbox i’ve created for all techs to access the VM’s.
I created an azure group, HelpdeskVM, and an exchange shared mailbox, HelpdeskVMMailbox which is a teams licensed user. the HelpdeskVMMailbox user account is a member of the HelpdeskVM group.
The AA is set to direct all calls to the HelpdeskVM group which i thought would then forward to the members of the group – HelpdeskVMMailbox however it does not.
Any thoughts?
LikeLike
Anyone know how to create greeting for the distru VM box?
LikeLike
Hot on the heels of #MicrosoftTeams Call Queue redirect time external PSTN number. You can now redirect to a shared voicemail box.
And this is a HUGE customer ask. You can set a custom greeting on the voicemail.
https://docs.microsoft.com/en-us/microsoftteams/create-a-phone-system-call-queue
LikeLiked by 1 person
We still only get the option to set voicemail to a Microsoft 365 Group & not shared mailbox.
LikeLike
Does anybody know a clever way to re-direct the voicemail into the Teams channel for the Group, rather than the O365 shared group mailbox?
LikeLike
Do you know if you can transfer directly to this voicemail box using opaque=app:voicemail ?
LikeLike
I haven’t tried it
LikeLike
Can a member of Teams group delete a voicemail ? Only owners are able to delete
LikeLike
I followed the directions and when I test the system, I get directed to a voicemail. However, I never see a notification about the voicemail and I cannot find it in the group anywhere. Has anyone else had this problem?
LikeLike
I’ve not seen that in my testing. The voicemail always ends up in the group mailbox
LikeLike
I wanted to follow up on the issue I am having. It seems the system works well when anyone else calls the number and leaves a voicemail. But for some reason whenever I call from my cellphone, the voicemail does not go to the group mailbox and seems to just get thrown out like I never called.
LikeLike
I haven’t seen that. Sounds like an SBC thing maybe?
LikeLike
Hi Michael. Did you ever find a solution to this issue? I’ve just created my first O365 Group voicemail and have linked it to a Teams AA. I’m seeing the same issue you outline.
LikeLike
I have been able to send call queue redirects to Voicemail, but despite having TRANSCRIPTION ON only the mp3 is sent to the mail box without a transcription. The after hours redirect that goes to this same Voicemail sends transcriptions just fine. Anyone else experience this?
LikeLike
I see this on certain calls where it might have been hard to understand so it didn’t even try. Them just says it wasn’t available
LikeLike
Hi Folks, I tested the shared VM with AA in Teams and seeing that the message played — Pl. leave a message……. is coming from Teams and not after trf to the shared vm group. I verified it changing to a normal user mailbox without a greeting and still noticing this message played by Teams ( my conclusion – initial audio message is from Teams and not from mailbox greeting). Is there a way to turn this off.
LikeLike
One more note to the many here in case you run into character limits on the text to speech greeting.
I was using text to speech for the voicemail greeting and tried to set it up using the Set-CsOnlineVoicemailUserSettings command. I ran into an error that stated that there is a 200 character limit – I was at 293.
I tried going into the users voicemail settings via OWA and it also gave me the 200 character limit error.
I decided to see what would happen if I signed in as the voicemail user from the Teams client then ->settings->calls->configure voicemail and guess what? I was able to paste the full 293 characters there and it took it… *shrug*
Hope it helps someone!
LikeLike
Thanks for sharing that
LikeLike
I have an auto attendant setup that will let the caller either press 0 for the operator or 1 to go to a Microsoft 365 Teams enabled group. When we press 1 for the vm the auto attendant attempts to do the transfer but errors out with, “Sorry I couldn’t reach, let me transfer you to the operator.” It’s as if the mailbox never enabled the voicemail option. I tried creating a new M365 Teams group thinking it was just created before the feature was enabled but I get the same error. Any thoughts as to why?
LikeLike
I can’t think of any reasons if it is configured correctly. I take it its cloud voicemail and not Exchange UM on-prem etc.
LikeLike
I worked with Microsoft the end of last week and it appears that there was an issue with the resource account when it was created. The fix was to recreate the account, allowing sufficient time between each step to ensure Exchange online was able to keep up.
LikeLiked by 1 person
Thanks for sharing the solution. Great to know you got it sorted
LikeLike
Could you please let me know, How can we fetch AA and CQ for a shared Voicemail via teams powershell
LikeLike
They seem to allow us to select a Team instead of an O365 group. I tried this and it lets me leave a voicemail but how do I retrieve the message? I don’t think Teams have O365 group email enabled by default. I can’t get the team to show up in outlook under groups and I don’t see the vm on the calls tab in the team? How would I retrieve the message or do I have to scratch this idea and just create a separate group? I’m trying to use the same group I use for the call queue.
LikeLike
As soon as you create a team it creates a group. Members and owners of the team should see the group in outlook as far as I know
LikeLike
When Teams are created, the Outlook group is hidden by default. If you create a Team from a Group, then it would probably work. However, after reading about Voice enabled channels in Teams, it looks like I should just be able to view the voicemail in the channel but it’s not showing up for me.
LikeLike
Sorry. I just re-read your comments. In the post, I created groups to group users for a call queue and used that for voicemail.
Not the group created when I created the team. That’s why mine started with CQ
LikeLike
I deleted my team, created a MS 365 group and then I was able to see it in outlook. I then created a team from that group. The shared VM works fine in the group but it still doesn’t show up on the calls tab on the team channel. Not sure how to get the Calls tab working properly yet.
LikeLike
I’ll do a post or video or both on voice enabled channels. It’s quite easy.
LikeLike
I choose the team channel in my call queue and chose the same team on an AA menu option to send to VM but it doesn’t work. I thought it was easy too lol.
LikeLiked by 1 person
Hi Randy is this video up now
LikeLike
No. But I will
LikeLike
The calls tab is now showing the voicemail. It’s been broke for 2 days and even though I exit the teams app fully several times and restarted the computer, it didn’t help. But now I just hit sign out of teams and signed in as the same user and the voicemails showed up. The toggle for in\out of the call queue is also buggy. It keeps reverting and I have to use the option from settings instead. Also, the call history is not the same as another user so I’m afraid this feature is still a bit buggy. Looking forward to your blog or video on it. Thanks
LikeLiked by 1 person
We verify all functionality using the browser as recommended by Microsoft. Supposedly the browser version will be the most up to date. When making any changes we expect to have to wait a day or two to see the “real” impact in the Teams client. It makes change verification very frustrating.
LikeLike
Creating the call queue from a Teams Channel works great – and then the business Team owner can add and remove agents without a change order to an admin. The big issue with this currently is voicemails – the “read” marks are not shared\universal – so all agents see all voicemails as unread unless they read them personally (so if another agent reads it and deals with it, that’s not reflected to all agents). That might not be a big deal if the agent could delete the voicemail after they handle it, but that’s also not possible from the channel. Deleting voicemails from the Outlook\groups area is also proving problematic for queues created from channels (permissions issues we can’t figure out) – and sometimes the Team doesn’t show up there at all (even if the attribute to display the group in Outlook is set correctly – powershell required if not). This is all creating some chaos in our organization at the moment.
LikeLike
We use voicemails in our current system that are directed to a shared mailbox.
There is automation tied to it that turns those voicemail/emails into tickets in our ticketing system. We want to move to Teams for our Voice Services, but there doesnt seem to be a way to forward the emails from the Team.
Do you know of any possible solutions for this?
LikeLike
You could look at transport rules to forward to another mailbox that’s monitored by the ticketing system. Or power automate/flow
LikeLike
Using Power Automate create a flow that is triggered by “When a new email arrives (V3)”
For this method we are going to “Send” vs. “Forward” the received Voice Mail email to the Team Channel. The “connection” should be set to the service account for both Trigger and Action.
In the subject line (as seen below) enter something descriptive that does NOT contain the word VoiceMail and apply all other settings as indicated.
When the service account receives the Shared Voicemail from the M365 Group the flow will be triggered, a new email will be built from the contents and sent to the Team channel along with the attached audio file.
Promote the service account to the group owner
Once you have confirmed the process works promote the service account to owner of the group and remove yourself, but leave the service account as a member (needed to receive group conversations which in this case will be shared voicemails)
REF: https://regroove.ca/stellark/2021/09/15/redirect-teams-auto-attendant-voicemail-to-a-channel-updated-method/
LikeLike
Hi Randy,
When message is deleted from the M365 group, is it still possible to recover the deleted message?
Thanks,
Alvin
LikeLike
I don’t think there’s an archive or recycle bin
LikeLike
Thank you, Randy.
LikeLike
Hi Randy,
When message is deleted from the M365 group, can you still recover the message?
Thanks,
Alvin
LikeLike
I think this was asked above, but I didn’t see a definitive answer:
How do we give a group of individuals the ability to create/modify an informational message?
An example would be a weather hotline that employees can call into to determine if the office is closed. There are a group of users who would be delegated permission to record this message.
I would think this would be best applied as a M365 group/channel voicemail, but I cannot figure out how the group owners can change the voicemail greeting on the group.
LikeLike