Check Activities

This page lists all Workflow activities that checking on an existing service status, e.g. by service queue availability or Opening Hours, queue position, or based on a previously stored Parameter values. 

💡Note that activities below are listed in alphabetical order, which is not necessarily the order of their intended use.

 

Availability-based Routing

Availability-based Routing

Availability-based Routing

Description

Allows to route the call based on overall Service availability, considering MS Teams Presence – and in extension the Nimbus User State of all relevant Service Users.

Required Predecessor None - can work even without accepting a call (e.g. to check ahead, then Accept, Transfer or Disconnect immediately)
License
Advanced Routing Enterprise Routing  Contact Center
Modalities Audio / Video Instant Messaging Email External Task

Common Properties

Configurable Properties Description
Service

Allows to select the target Service (within your tenant) for which the availability check and routing is performed for.


💡Usage notes: 

  • Leaving this at "Current Service" will dynamically check the status of the Service currently using this workflow. This allows for multiple Services to re-use this same workflow with an "Availability-based Routing" step necessary adaptions.
  • You can also use this workflow step multiple times within the same workflow check on different Services simultaneously, e.g. to achieve an availability-based escalation and routing routine.
Current Availability                  
(Exit conditions)

The activity has 3 exits based on the current overall team status (look-ahead). The availability depends on the User assignment type of your Service.

🤔 How can I determine the User Assignment Type?

INC User Assignment Types

Each Nimbus Service can be of a different User Assignment Type that determines how Users are associated to this Service:

  • MS Teams-based: Directly tied to the Team itself in MS Teams, determined during Service Provisioning. Users get automatically added and synced to a Nimbus Service.
  • Skill-based: Applies for manually created Services via Nimbus Service Administration. Requires skill-assignment to Users you manually assign to the Service from within your Tenant directory.
  • None: Primarily used for IVR or first-level redirection Services. This Service has no Users and is therefore primarily configured by any Administrator.

☝ Important to know: The User Assignment Type setting is fixated when a Service was either provisioned via MS Teams or manually created via Service Administration, e.g. either for Customer IVR or User skill-based task distribution purposes. A switch between MS Teams-based and Skill-based Services is not possible due to how individual Users are configured and how related Nimbus Features operate.

 

Team owners can access Distribution Service Settings and inspect the "User Assignment Type". 

 
 

INC Service availability legend

Availability, as signaled in Nimbus … for MS Teams-based services … for skill-based Services
No One Available All users are inactive in Nimbus – or active in but "offline" in MS Teams.

No users are online in MS Teams or available within the Service's Distribution Policy requirement.

 

In Time Available All active users are not available “in time”, e.g. "DND/Away/Busy" or handling another Nimbus task. No users in the 1st Distribution Policy level are available, but User in the following distribution levels are available or become available “in time”, e.g. “DND/Away/Busy" or handling another Nimbus task.
Directly Available At least 1 user is available (MS Teams presence set "available") and also set to "Active" in Nimbus.

At least one user in the 1st Distribution Policy is available and ready to take a task.

 

🔍Design Notes … for MS Teams-based services … for skill-based Services
Nimbus UI controls

The "Active" toggle in the Nimbus UI determines user participation per service (team).

Active toggle

In addition to the “Active” toggle, MS Teams presence-related settings also affect availability. → See note below.

The Duty States selector determines participation for all skill-based services simultaneously.

Duty State selection

In addition to the “Active” toggle, MS Teams presence-related settings also affect availability. → See note below.

MS Teams presence-related service settings

You can adjust Distribution Service Settings to include / exclude users from the availability count, based on their MS Teams presence.

Adjusting Teams presence distribution behavior in the Service Settings tab

🔍Visit User States for a full explanation on how MS-Teams presence relates to other Nimbus task-distribution factors.

 
 

Audio / Video

Current Availability               
(Exit conditions)

Precondition: Task Parallelization is enabled for at least 1 user in the Service. 

 

With preconditions met, the Service availability changes as follows:

Service Availability (Exit condition) MS Teams-based Service Skill-based Service
In Time Available
  • All conditions from “Common Properties” apply 
    AND
  • …also shown when a User has max number of tasks assigned and they are all Parked.
Directly Available
  • All conditions from “Common Properties” apply 
    AND
  • …also shown when a User has a Parked task and still has the capacity to handle a new Audio/Video task.

 

 
 

Instant Messaging

Current Availability                  
(Exit conditions)

Precondition: Task Parallelization is enabled for at least 1 user in the Service. 

 

With preconditions met, the Service availability changes as follows:

Service Availability (Exit condition) MS Teams-based Service Skill-based Service
In Time Available
  • All conditions from “Common Properties” apply 
    AND
  • …also shown when a User has at at least one task Parked.
 
 

Email

Current Availability                  
(Exit conditions)

Precondition: Task Parallelization is enabled for at least 1 user in the Service. 

 

With preconditions met, the Service availability changes as follows:

Service Availability (Exit condition) MS Teams-based Service Skill-based Service
In Time Available
  • All conditions from “Common Properties” apply 
    AND
  • …also shown when a User has at at least one task Parked.
 
 

External Task

Current Availability                  
(Exit conditions)

Precondition: Task Parallelization is enabled for at least 1 user in the Service. 

 

With preconditions met, the Service availability changes as follows:

Service Availability (Exit condition) MS Teams-based Service Skill-based Service
In Time Available
  • All conditions from “Common Properties” apply 
    AND
  • …also shown when a User has at at least one task Parked.
 
 

Check Opening Hours

Check Opening Hours

Check Opening Hours

Description Performs a check on the current Opening Hours calendar applied to the service and exits accordingly.
Required Predecessor None - can work even without accepting a call (e.g. to Transfer to Service, Accept Conversation or Disconnect Conversation immediately)
License
Advanced Routing Enterprise Routing  Contact Center
Modalities Audio / Video Instant Messaging Email External Task

Common Properties

Configurable Properties Description

None

Will exit based on currently active Opening Hour rule currently in effect for your General Service Settings.

  • Exits match the period types of opening hours (open, closed, holiday, special 1-4), allowing you to branch out your workflow accordingly.
  • If no opening hours are defined the "default" exit on this activity is taken.

🔍 Notes on Opening Hours:

  • If no opening hours calendar is defined in your General Service Settings, the "Default" exit in your activity is taken.
  • Once created, an Opening Hour calendar must have a default opening state (e.g. "Closed") assigned. 
  • If both primary and secondary opening hours are defined in your General Service Settings, precedence rules apply:
 Click here to learn more...

☝ General recommendation: The safe bet is to handle all exits on your workflow activity, as you you may lose tasks otherwise.

Ensure to handle all cases in your activity 
 
 

Audio / Video

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Instant Messaging

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Email

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

External Task

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Check Parameter

Check Parameter

Check Parameter

Description Allows to check and react on system Fields and custom Parameters.
Required Predecessor None - responds to parameters updated during Trigger Events.
License
Advanced Routing Enterprise Routing  Contact Center
Modalities Audio / Video Instant Messaging Email External Task

Common Properties

Configurable Properties Description
Parameter Type

Offers a choice between:

Custom Type

🔍 Dependent on the "parameter type" selected:

  • A list of Nimbus Fields and Parameters
  • Custom Parameter of the following type:
    • Context--> $(CustomContextParameters.<Name>)
    • Customer Field --> $(Customer.CustomFields.<Name>)
    • Customer Telephone --> Numbers $(Customer.TelNumbers.<Name>)
Name

✅ Only shown when "parameter type" = Custom is selected. 

Allows you to define the a name used for the parameter. This name must match the dynamic value when using the Nimbus Microsoft Power Automate Connector.              
💡 Note that the parameter name depends on your "Custom Type" choice above, e.g. $(Customer.CustomFields.YourExampleName)

Checks (Regex Validation)

Allows to define one or many Regular Expressions checks on the "parameter type / name" chosen above.

☝ Checks will be performed in your defined order. The first valid check will determine the activity exit. Any further matching expressions are ignored.

Regular Expressions cannot be empty. By default ".*" will allow anything as a parameter content = Parameter is present.

No Match

Taken when none of the provided Regular Expressions matches.

Not Set

Taken when either criteria applies:

  • Parameter value is "null", empty or the parameter does not exist.
  • Also takes this exit if the activity is turned off.
Check 1.....n

Check if the value of the parameter matches one of the Regex validations. 

💡 By default 1 "Check 1" exit is defined and required. Up to 10 can be defined each with individual node exits. 

 

The following criteria applies:

  • Reading direction of Checks 1…n from “left to right”.
  • Exits the on the first successful validation node.
 

💡Tip: If you need to handle more parameters, You can also chain several "Check Parameter" activities.

 
 
 

Audio / Video

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Instant Messaging

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Email

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

External Task

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Get Available Users

Get Available Users

Get Available Users

Description Performs a lookahead-check on the users / Agents available in a Nimbus service and stores the value in a Parameter.
Required Predecessor None
License
Advanced Routing Enterprise Routing  Contact Center
Modalities Audio / Video Instant Messaging Email External Task

Common Properties

Configurable Properties Description
Service

Can either be the "Current Service" – e.g. in workflows used by multiple services – or a specific service.

Custom Parameter

✅ Requires at least one Parameter to be defined and available as selectable "placeholder" under the same Organization Unit (or higher up to Tenant level).

🔍 This activity stores output into a custom Parameter for processing, which can then be used within the same workflow (e.g. a " Check Parameter " activity). Note that the parameter's default value is being overwritten once it passes through this activity.

Once this activity is reached, it checks the number of available users of the specified Service:

  • For MS Teams team-based Services all available team members are considered.
  • For Contact Center Services only available users in thefirst Distribution Policy level are taken into consideration.

→ For more information, read our pages on Service Type and the according User assignment method.

 
 

Audio / Video

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Instant Messaging

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Email

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

External Task

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Get Queue Position

Get Queue Position

Get Queue Position

Description Performs a lookahead-check on the (potential) queue position in a Nimbus service and stores the value in a Parameter.
Required Predecessor None - responds to parameters updated during Trigger Events.
License
Advanced Routing Enterprise Routing  Contact Center
Modalities Audio / Video Instant Messaging Email External Task

Common Properties

Configurable Properties Description
Service

Can either be the "Current Service" for workflows commonly used by multiple services or a specific service.

Custom Parameter

✅ Requires at least one Parameter to be defined and available as selectable "placeholder" under the same Organization Unit (or higher up to Tenant level).

🔍 This activity stores output into a custom Parameter for processing, which can then be used within the same workflow (e.g. a " Check Parameter " activity). Note that the parameter's default value is being overwritten once it passes through this activity.

Once this activity is reached, it checks the number of available users of the specified Service

  • If the call was already added in queue (-→ "Queue Task" activity) the current position is saved into the parameter.
  • If call was not added, the queue length +1 of the selected "Service" is saved into the parameter.

💡 By default this activity does not create a "visible" outcome. We recommend to follow up with a "Check Parameter" activity and route your customers according to the queue position value (e.g. add further announcement, voicemail, play music activities).

INC Modality-independent queue length

🔎Design Note: Nimbus does not distinguish the queue length by modality.

Learn more…

💡Example: Let's assume there are 10 Audio/Video, 2 Emails and 1 Instant Messaging (IM) tasks in the queue.
Let's focus on the IM Task, which appeared most recently in the queue.
⮑ When querying the queue position of the IM task, the value returned will be 13.
⮑ When another task enters the queue - regardless of modality - it gets position 14.

With 2 users available to handle all modalities, this setup would work as planned, as every task gets treated equally. However there can be situations when your users can handle only certain modalities within a service that supports several or all modalities. This can create bottlenecks in the task distribution that Nimbus cannot anticipate.

🔎Analysis: For Nimbus, task modality does therefore not matter when retrieving the queue position. The IM Task on position 13 will move up the queue eventually over time, but may get stuck at position 1, as no user is available to handle the chat. Other modality tasks may get handled earlier – e.g. due to users being available that can handle that modality. Another case could be that other tasks (even in the same modality) have a higher Priority set.

🤔Why is it solved like that? The quick answer: simplicity and consistency. The Nimbus UI will always list all pending tasks in the queue equally, matching what “queue” related workflow activities will return. This is assuming the most-popular use case where all your users can handle all modalities.

However, in a use case scenario where users are specialized on handling certain modalities, estimating queue length would depend on additional factors such as…

  • … the current availability of “modality-capable” users within your service.
  • … being able to gauge the “average” task handling time.

→ Nimbus therefore delivers the actual, “more pessimistic” task position instead of making assumptions on potentially available users. This is done to not mislead customers with a positive queue position that may still result in long waiting times.

🤔How can I improve my queue estimate precision? 

Most of our customers prefer using separate services per modality as “task silos”, which also leads to clearer task distribution to a dedicated user pool, separate Nimbus Reporting of sessions, dedicated access with Portal Roles and easier to manage KPI adjustments and other specific Service Settings.

→ If you do not want to split up your services, another approach could be to work with Task Priority by specifically targeting certain modality tasks with a higher or lower priority. This can be achieved with the Nimbus Power Automate Connector.

→ You can also use the Nimbus Power BI Template and OData Feed to draw data and make adjustments to your workforce and service configuration.

 
 
 
 
 

Audio / Video

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Instant Messaging

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Email

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

External Task

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Wait for Parameter

Wait for Parameter

Wait for Parameter

Description Adds a wait time to the workflow to allow external systems to update a previously defined Parameters.
Required Predecessor None
License
Advanced Routing Enterprise Routing  Contact Center
Modalities Audio / Video Instant Messaging Email External Task

Common Properties

✅ Condition: The Nimbus Power Automate Connector "Update Task" Flow Action needs to be involved for this activity to detect parameter changes. 

💡Parameter Update Check: Upon entering the activity, a comparison against the default value of the Parameter is made:

  • When the Parameter already differs from the default OR gets updated anywhere within the specified “Max Waiting Time”, the "Updated" exit is taken.
  • When the "Max Waiting time" is reached, the "Timeout Reached" exit is taken, regardless of any (later) parameter updates.
  • When the activity is disabled the "Max Wait time" will be ignored and the "Timeout Reached" exit is taken immediately upon reaching this activity.

☝ Note: Any change is considered as an update - without validation. A follow-up "Check Parameter" activity is therefore strongly recommended to validate the output with Regular Expressions.

 
Configurable Properties Description
Parameter Type

Currently locked to previously "Custom Parameters". To be defined and available as selectable "Custom Type" parameter.

Custom Type

🔍 Dependent on the "parameter type" selected:

  • A list of Nimbus Fields and Parameters
  • Custom Parameter of the following type:
    • Context --> $(CustomContextParameters.<Name>)
    • Customer Field --> $(Customer.CustomFields.<Name>)
    • Customer Telephone --> Numbers $(Customer.TelNumbers.<Name>)
Name

✅ Only shown when "parameter type" = Custom is selected. 

Allows you to define the a name used for the parameter. This name must match the dynamic value when using the Nimbus Power Automate Connector.
💡 Note that the parameter name depends on your "Custom Type" choice above, e.g. $(Customer.CustomFields.YourExampleName)

Max Waiting Time

Maximum wait time to 

  • Default: 5 seconds
  • Max: 1 mins
  • Min: 1 sec

 💡When "Max Wait time" is reached (or this activity is disabled), the "Timeout Reached" exit is taken.

Play Announcement (optional)

Plays an announcement during the wait time. Default: disabled

  • TTS / resource
  • preview of music

Note: The announcement is not being played, if the parameter value already has been updated from its default. In this case the “Updated” exit is taken immediately, as there is no point in playing an announcement anymore.

Announcement Type
  • Text-to-Speech (with Language Select & Text Field)
  • Audio Resources.

✅  Audio resources can be added via Configuration > Resources 

Add Parameters            
(Toggle)

Will allow the use of Custom Parameters and System Fields and Parameters in the "Prompt Text" Field. 

 

 💡 Note that with this option enabled the will "Preplay" feature is disabled as parameters are dynamically resolved during a call.

Prompt Language Allows to select the locale / voice to use when using the Text-to-Speech engine.
Prompt Text

✅   Only shown when Announcement Type = Text to Speech is selected. 

  • Allows you to add text to the box that will be read in the prompt language / locale.
  • The announcement can be a mixture of text and Custom Parameters and System Fields and Parameters.
  • Announcements will be generated on-the-fly and cached if continuously re-used.
 
 

Audio / Video

INC WF Properties remark

No specific behaviors for this modality. “Common Properties” apply.

 
 

Table of Contents