In this use case, we want to set up a simple logic in our service workflow to assign the correct on-call agent outside of regular office hours.
PRECONDITIONS
- You require service owner rights to to create and update and share an excel list on Teams.
- A Nimbus service is set up and ready to receive calls.
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. |
Configuration in Nimbus
First we need some Parameters to check on.
Description |
Screenshot in Nimbus |
---|---|
Create these parameters in Nimbus:
|
Create the Workflow
In the Workflow, we want to route the Closed -node from the Check Opening Hours activity to the on-call agent.
💡 The workflow overview below demonstrates the path we are interested in during this Use Case. Other paths and activities are excluded to make it easier to understand.
Description |
Activity |
---|---|
🔍 Behaviour: If the customer presses any key, it will be stored into the parameter. A Power Automate flow can check the parameter and set the OnCallAgent according to a shared list. |
|
🔍 Behaviour: This activity will wait for Power Automate to update the OnCallAgent parameter. If the OnCallAgent parameter is updated within the waiting time defined, the Updated exit will be taken. In case the parameter is not updated by Power Automate within the defined waiting time, the Timeout Reached exit will be taken. |
|
|
Create and Share the On-Call Agent List
KNOWN ISSUE - NO RESULTS FOR “ONCALL = TRUE”
There is a known error in Power Automate that is causing not receiving any results for "OnCall = true'". Instead, when using "OnCall = false'" (which is logically the same), it is working correctly.
In the MS Teams Channel of your service, create a list - in our example "OnCallCagents" - with at least three data columns:
- Title: string, the name of your Agent(s)
- OnCall: boolean (true/false)
- Mobile: string, well-formatted mobile number of the agent
☝ Note that the flow will check ONLY for the first Agent being on call - in this case "Maria". The list is always parsed top to bottom and will consider the first "OnCall = true" Agent, not multiple entries.
Create the Flow to Fill the OnCallAgent Parameter
Now it's time to create the Power Automate flow to look into your Agent table during an incoming call. Here is an overview of the flow:
✅ In the following we will go through this step-by-step. Log into your Power Automate and create a new Flow.
Description |
Settings |
Element |
---|---|---|
Begin the flow with the Nimbus Trigger Events element "GetOnUpdatedTasks" and set the event to "Parameter Updated". |
GetOnUpdatedTasks:
|
|
Add 3 Initialize variable elements to the flow. |
First "Initialize Variable":
💡 We will check on the UpdatedParameterName in the next conditions step. Second "Initialize Variable":
Third "Initialize Variable":
|
|
Add a "Condition" element to the flow. 💡 We only want to go further in the flow if TransferToOnCallAgent Parameter was updated. This happens only if the caller pressed any button (as instructed in the announcement activity of the workflow). |
Condition:
|
|
Add a SharePoint "Get items" element to the flow. 💡 This allows you to access the list with the on-call agents created on the Teams channel.
|
Get items:
|
|
Add a "Set variable" element to the flow and set the OnCallAgentPhoneNumber variable to the Mobile field of the response from "Get items". 💡 As the result of the "Get items" element is a list the flow will automatically add the apply to each loop. We can leave it like that. |
Set Variable: Name = OnCallAgentPhoneNumber Value = items('Apply_to_each')?['Mobile'] |
|
Add a "UpdateTask" from the Nimbus connector to the flow and set the CustomContextParameters with the on call agent number. |
RequestId = RequestId CustomContextParameters:
|
|