In this Use Case, we are going to create a Nimbus workflow and Power Automate flow which will do the following:
- Check the Opening Hours when a call is received. If it is out-of-hours, divert to a Teams voicemail Service.
- If a Teams voicemail is left, the voicemail is transcribed and distributed to Agents via group email.
- When the group email is received, Power Automate triggers to collect the voicemail transcription.
- Power Automate will check who the on-call Agent is from a SharePoint list.
- Send the transcription of the call to the on-call Agent.
PRECONDITIONS
- A "Teams Voice" License applied to your Service, so outbound PSTN Calls can be made. This license is applied via Microsoft PowerShell script and runs with enant Admin privileges.
- Power Automate "Premium". → See Nimbus Power Automate Connector preconditions.
- SharePoint (for creating and storing “On-call Agent ” lists.
- 3rd party SMS sender such as Twilio or Azure Communication Services.
INC Icon Legend Accordion
Show Icon Legend
💡 = A hint to signal learnings, improvements or useful information in context. | 🔍 = Info points out essential notes or related page in context. |
☝ = Notifies you about fallacies and tricky parts that help avoid problems. | 🤔 = Asks and answers common questions and troubleshooting points. |
❌ = Warns you of actions with irreversible / data-destructive consequence. | ✅ = Intructs you to perform a certain (prerequired) action to complete a related step. |
Create the Workflow
- Go to Configuration > Workflows and click “Create New”.
- Select the Workflow type Audio/Video and click “Next”.
- Give your workflow a name that is easy to identify in a large list of workflows.
- Pick the Organization Unit determining where your workflow is going to be placed.
Add Routing to the Workflow
- Start with the “Accept” activity.
- Then add a “Check Opening Hours” activity.
-
From the Closed option, add a “Transfer” Workflow Activity.
💡Don't forget to route other Opening Hour cases too so your Workflow has no possibility to get stuck when the Opening Hours calendar changes. -
In the “Transfer” activity, set the destination as “External”, and enter the PSTN number of a Teams Auto Attendant.
💡This is why your Service requires a “Teams Voice” license in order to make calls. -
Select “Leave Nimbus”.
Prepare the Teams Auto Attendant
✅ You will need to have a Teams Auto attendant with PSTN number set up. → See Set up a Microsoft Teams Auto attendant | Microsoft Learn for more details details.
- Navigate in Teams Admin Centre > Auto Attendant admin page.
-
Select the Auto Attendant, and amend the call flow details.
- Add an optional greeting.
- Under Call Routing select Redirect Call
- Select Voicemail
- ⮑ This enables an selection where you can specify an office 365 group to receive the voicemail
- ENSURE TRANSCRIPTION IS ENABLED

Configure Outlook settings
Configure Outlook settings
✅ Ensure the account that is accessing the Outlook Mailbox in Power Automate, is subscribed to the Voicemail
- Using the relevant account, go to and log into https://outlook.office.com/mail
-
Select “Go to Groups”
- Select the Group that you are routing the voicemails to (same as when you prepared Auto Attendant above)
-
Select “Settings”
- Ensure the User is set to “Receive all emails and events”
Prepare the SharePoint On-Call List
Prepare the SharePoint On-Call List
- In SharePoint, Create a list for your “On-call Agents”.
- Add columns labelled
Mobile
,sendsms
. - Important: Both the
Mobile
column andsendsms
must be of type “text”. - Add the following data:
- The Agent's name to the
title
column, - Their mobile number to the
mobile
column, - … and yes/no to determine if they should receive an sms message in the
sendsms
column.
- The Agent's name to the

Create the Power Automate Flow
- Create a new Automated clow flow.
- Select “When a new email arrives (V3) ” action
- in the outlook action select the mailbox that the voicemails are being routed to for the TO filter
- and a subject filter of “Shared Voicemail” and Folder “Inbox”
- Add 2 Initialize Variables steps,
- Name
messagetext
, type = String - Name
standby numbers
, Type = array
- Name
- Add an HTML to text action. and add the Body of the email as the content
- Add a Set Variable action, Name = messagetext, value = OUtput from the HTML to Text action.
- Add a SharePoint Get Items action Select the site address, and List name of the List you created.
- Define the Filter Query of
sendsms eq ‘yes’
- Define the Filter Query of
- Add an Apply to Each action, and add an “Append to Array” variable,
-
Name
= standby numbers -
Value
= Mobile from the sharepoint get action
-
- Add an Apply to each Action, and add your sms sender, ( in this example we will use Twilio)
- Set your “From Phone Number” , to be the number you wish the SMS to be sent from
- Add the “To Phone Number", as the output from the Apply to each.
- Set the text as the
messagetext
variable