This article introduces the eight types of modules and it will link to further articles for more insights. Before getting started, make sure to familiarize yourself with triggers, queues, agents and schedules, as they are often the things with which modules interact. To get an overview how all of this is related, we suggest reading this article: Setting up a call flow with switches.

After introducing these eight modules, this article also gives a few hints as to why it might make sense to sometimes add actions to modules.

Switch Node

You can imagine a Switch Node as a small program that makes numerous decisions based on a set of rules, all within a few milliseconds.

It's like being at an intersection with roads going in different directions to different destinations. Maybe you want to see your grandma? Or perhaps you want to go and buy a new chair? What's triggering your decision? Your grandma called and said she prepared your favorite cake - so are you hungry? Or maybe your back hurts terribly because your old chair broke? Where you go depends on the conditions and their priority at that moment you reach the junction.

The Switch Node obviously has no needs but you can feed it with certain triggers that are comparable to decision points at an intersection. Whatever way the call goes after entering the Switch Node depends on the testing of certain predefined conditions: Is the caller reaching you in or after business hours? From which number is the caller reaching the line? Is an agent enabled? You can define as many conditions as you want and you can even test customer inputs in connection with the Input Reader. This leads us directly to the next module.

Input Reader

With Input Readers, you are able to store the inputs a customer makes. For instance, you ask the customer to select a language or to choose which type of problem they have. This module plays a prompt, stores the selection and it offers a great range of settings and therefore lots of flexibility. Input Readers always work together with a Switch Node which reads the customer's selection, and forwards the call accordingly. Here are a few examples to make it less abstract:

Automatic Call Distribution

Even if you decide against a Switch Node in your call flow or you don't need the Input Reader, you will always need the Automatic Call Distribution (ACD) module. ACDs route a call into the call queue (customers may hear a prompt while waiting), and as it does so it is partially responsible for getting the right agent to be selected to talk to the customer. In the most basic call flow, you will only need to connect this application module with a queue and a phone number and your team can start taking calls.

The selections are themselves defined in the queue settings, but without the ACD you would never get the customer's call to the point of being selected at all. The ACD also defines what's happening to a call that is not answered by one of your agents. You could for instance forward the caller to a 'sorry' prompt. This takes us to the next module type: the Prompt Player

Transfer

This module has two great functionalities. You can either use it to forward calls to a direct line (for instance a desk phone or a mobile) or add the number of your outsourcing partner. So if you just want to set up a direct line to each of your office employee or have an overflow to your outsourcer after a certain time - that's the way to go.

You simply add the target number, it can even be a SIP ID, you can define how long the caller is allowed to wait and if you want the caller can even hear music or an announcement. As the Transfer module works as any other module, it can be integrated into any call flow, either at the beginning, in the middle or at the end.

Watch out - Transfer does not work with Browser Phone!

Prompt Player

Prompt Players are what they seem to be (no hidden features): they simply play an audio file. They don't do anything else, therefore they are usually linked to other module types. The exception is when they end a call, saying good-bye to the customer. Often, Prompt Players will welcome a customer before they are forwarded to the queue, and they are in many cases followed by an ACD (playing the queue wait music).

See also the example implementation in the section Automatic Call Distribution to get to know a used case of prompt players.

Agent Queue Experience

This is a small but useful module that makes it easier for agents working in multiple regions or for multiple brands to recognize a caller's origin. For instance, if an agent picks up the phone, the Agent Queue Experience tells the agent which language the caller speaks. This module is used with the ACD module.

Voice Recording

In case all your agents are busy or a caller reaches your line after business hours, Voice Recording module makes it possible to store any voice message you want the customer to leave. They can easily be set up at the end of any call flow and later be stored in your internal systems.

Simple Menu

A simple menu offers limited options for customers to make a selection. It is the simpler version of an Input Reader and can be used for directly routing calls to another module after a selection was made. Think of it as a simplification of both an Input Reader and a Switch Node. The caller enters a numerical option, and based on this option is routed to one of a few predefined module.

One disadvantage is the lack of a 'barge-in delay'. This means that customers cannot interrupt the prompt by pressing the number of their choice - they always have to wait until the end of the prompt. With Input Readers however, barge-in can be configured.

Actions in modules

A small tip at the end of this article: with every module, regardless which type, you can perform actions. Sometimes you can update a ticket, set a tag, end a call as soon as the call hits an module - this feature can be very useful and in some cases even necessary. Just browse through the possibilities of actions and try them out!