3.4 - Switch Nodes

Daria Skvortsova
Daria Skvortsova
  • Updated

Switch nodes serve as decision junctions in call flow. They redirect calls based on conditions
that you define with the help of triggers.

The Use Case:

Consider the following scenario using the triggers we discussed in the previous article:

  1. The Switch node checks if a specific holiday/non-work date is marked in the calendar. If yes, the call is routed to a "sorry" audio player (or Text to Speech).
  2. If no special dates are marked, the Switch node verifies if the call is made during business hours. Calls outside of these hours are also directed to the "sorry" audio (or Text to Speech).
  3. If the call is during business hours, the Switch checks how many calls are already waiting in the queue. If a maximum of one call is waiting, the call is directed to the platform's welcome message and then to the Automatic Call Distribution. If more than 1 call waits, the "sorry" prompt (or Text to Speech) is played.

As a reminder, find the abstract flow diagram. Remember, we represent one Switch node in three different decision points to make it more visible:



Setting Up Switch Nodes Module in babelforce Manager App

A Switch node is one of the more complex call modules as it requires a logical approach. It also demands a full understanding of Triggers and call modules. It consists of Routing Rules and an After-flow.

Routing Rule: Defines which path a call will take based on trigger conditions. If a trigger is true, the call will be guided to a defined call flow module. For instance, a 'Holiday calendar' trigger might check for special dates, directing calls to the "sorry" prompt module. The example abovde does not only check for a special holiday calendar, it also checks whether the opening hours are given and it ensures that no more than 1 call is waiting.

After-flow: It can be seen as the fallback route if none of the trigger conditions in the routing rules are met. For instance, if none of the conditions like holidays or business hours are true, the After-flow might be set to play a generic message like "Sorry, no one is available to take your call." This After-flow, as in all call modules, is just another call module.

Step-by-step explanation

  1. Navigate to IVR call-flows > Call flows.
  2. Click 'Add' at the top right.
  3. Name your module and select 'Switch node' as the type.
  4. Open the Switch node and go to the Settings tab.
  5. Click the + icon to add a Routing rule.
  6. Define the priority (higher numbers indicate higher priority. This means a routing rule with a high priority is executed before one with a lower priority. Routing rules with the same priority are executed randomly).
  7. Choose an After-flow (which is the call module which the customer should be forwarded to, next, if this rule is true). Alternatively, create a new call module.
  8. Select an existing Trigger. Alternatively, a new one can be created.
  9. Save the routing rule.
  10. Add additional Routing rules if needed by repeating the steps above.
  11. Specify the Switch's general After-flow. This is not necessary but highly recommended. 

Building the use case

Let's put together the Switch node routing rules for our use case. Below you see the three routing rules. They have a Prio (priority), a Module and a Trigger. By the end of this section this is how your Switch node should look like:

We already created the three triggers in a previous section.

Make sure you also have your Audio Players or alternatively, your Text to Speech Modules set up.

  1. one playing or reading out the sorry prompt (3.0 - Sorry no one available - try later - goodbye)
  2. one playing or reading out the other welcoming the customer (1.1 - Welcome - agents enabled).
  3. the last one informing that no agent is enabled (1.2 - Welcome - no agent enabled).

Before we build the first routing rule, remember: order of the routing rules matters. The rule with the highest priority will run first. This is important. Imagine we would first check how many calls are waiting in the queue before checking the opening hours or holidays! What would happen in this case?

Exactly, the call would always enter the queue, even when the service is closed - at least as long as no more than 1 other person is waiting.

Therefore, starting with the "Holiday Check" is most sensible. Every time a call reaches the Switch, it first checks whether any exceptional opening hours have been defined.

And this is how the routing rule should look like:


What the trigger does:

  • If the trigger determines that today is a recognized holiday, the After-flow '3.0 - Sorry no one available - try later - goodbye' gets activated, and the caller hears this prompt.
  • If today isn't a holiday, the system doesn't stop. It checks the next rule in line, depending on priority.

Now, continue building the other two rules. After the holiday comes the Outside Business Hour check. Remember, the order is defined by the priority.

Finally, add the after flow. Remember, it is a fallback in case none of the triggers is met. In this use case, it is more than that: if there is no global after flow, the call will never reach an agent because the routing rules only test the negative cases and direct the call to a ‚sorry‘ prompt. Only if none of the routing rules applies, the call will be forwarded to an agent through the default after flow of the Switch Node module.

What happens if no after flow is added? In this case, the call would end automatically


Now that you went through everything you surely agree: setting up a Switch node is easy, but let's sum it up:

  1. Order is Key: The sequence in which triggers get checked can influence the call experience. Always keep the customer's journey in mind when defining priorities.
  2. Fallbacks are Essential: Always set a default After-flow. If a call doesn't meet any set conditions, this ensures it still gets processed in a defined manner.

In the next tutorial, you will learn how the Switch node is connected to the call flow.


Was this article helpful?




Please sign in to leave a comment.