Voice Triggers

Voice Triggers

Overview

You can create a voice trigger invoked every time an outgoing, or incoming call, occurs.
The trigger will execute its actions if the defined conditions are met. Here are some of the applications of voice triggers:

  • opening the contact information 

  • displaying Screen Pop-up that provides value-added information

  • integrating with applications like Zendesk, Salesforce, Sugar CRM, Desk, Zoho, Freshworks CRM and Freshdesk

  • integrating with other 3rd party applications like your own CRM

  • automatically starting surveys for agents

Voice triggers are composed of conditions and actions. This section explains how to build conditions and the available actions for the voice channel.

Create a Trigger

To create a new voice trigger:

  1. Click the blue + button  located at the bottom-right corner of the interface, under Tools → Triggers

  1. Choose a trigger name

  2. Select Voice as Channel

  3. Activate Status

  4. Set a description (optional)

  5. Click on Add Trigger

Then you can define conditions and actions as described in the next paragraphs.

Conditions - Voice trigger

After you created a trigger, you need to add its conditions following the below steps:

  1. Click the three dots menu next to the trigger

  2. Click Edit trigger

  3. Go under Conditions & Actions tab

  4. Click the + button to add a new condition.

A condition for a voice channel is constructed by using:

  • fields

    • Queue

    • Call status

    • Call direction

    • Outbound route

    • Agent

  • operators

    • equals

    • not equals

  • value options, based on the chosen field.

You can define one or more conditions and choose whether to apply them using different logical operators.

  • Meet all these conditions: the overall condition will be true only if all the conditions are true (AND conditions).

When choosing a queue, the trigger will be activated only when interactions pass through that specific queue.

  • Meet any of these conditions: the overall condition will be true if at least one of the conditions is true (OR conditions). 

Trigger will be activated if interactions pass through that specific queue OR that outbound route.

Remember that if for example you transfer a call to a route or to a queue, the created trigger can be invoked (instead if you transfer the call directly to a internal number, the trigger is not activated)

 

Moreover, it is possible to specify more complex conditions by using both types: in this case, the result is true if both conditions are true (AND conditions).
In this example, the overall condition is true if the call is in the Support or Sales queue and the call is answered.

The condition will always return true if you do not define any condition. In this case, the specified actions will always be executed.

You can use the following fields and operators to build condition statements:


Queue

If you select the Queue field, you can build the condition using the below operators and values:

Operators:

  • Equals to

  • Not equal to

Values:

  • Voice queues (inbound)

  • Queue campaigns (outbound)


Call Status

If you select the Call Status field, you can build the condition using the below operators and values:

Operators:

  • Equals to

  • Not equal to

Call status condition can be used when call direction is equal to inbound.

Values:

  • Ring: the call is ringing

  • Answer: the call is answered

  • Hangup: the call is dropped after being answered

  • Reject: the Agent hangs up a call in the queue without answering it

  • Abandon: the Caller hangs up a call in the queue before being answered

  • Timeout: the call is not handled due to the timeout

  • NosuchNumber: the called number is non-existent

  • Busy: the called number is busy

  • NoAnswer: the call is not answered

  • Congestion: the call has not been handled due to congestion

  • AgentReject (Preview method): the agent accepts a call and, before the customer answers, the agent hangs up

  • AMD (Answer Machine Detection): the system detects that an Answering Machine is answering the call


Call Direction

If you select the Call Direction field, you can build the condition using the below operators and values:

Operators:

  • Equals to

  • Not equal to

Values:

  • Inbound

  • Outbound


Outbound Route

If you select the Outbound Route field, you can build the condition using the below operators and values:

Operators:

  • Equals to

  • Not equal to

Values:

  • Contexts, from the list of outbound routes


Agent

If you select the Agent field, you can build the condition using the below operators and values:

Operators:

  • Equals to

  • Not equal to

Values:

  • Agents, from the list of all the available agents

This option is only available for Queue and Outbound calls


How to combine conditions correctly

Based on type of call, you can combine conditions in AND (meet all conditions) or in OR (meet any of conditions) to make the trigger work correctly.

TIP:
If you place one of these rules (queue/outbound route/agent) the second rule inserted in meet all conditions should only be a call status.
If instead, you need to use 2 applications such as queue and outbound route, you should use any of the conditions

 

 

Example of compliant conditions in AND

• Queue + Call status
• Outbound route + Call status (answered or hangup)
• Agent + Call status

Example of non-compliant conditions in AND

• Queue + Outbound route (both cannot occur at the same time)
• Queue + Agent
• Queue + Call status answered + call status abandoned (a call status cannot be answered and abandoned at the same time)
• Outbound route + Call status abandoned (this status is related always to a queue)

Type of agent's involvement

Compliant Actions

Type of agent's involvement

Compliant Actions

Agent involved in the call

Motion Bar (Popup, CTI URL, Window App)
JScripty
Browser (Popup, CTI URL)
Voicebot
Integrations
URL Forward
Contacts Manager
Script

Agent not involved in the call

Integrations
URL Forward
Contacts Manager
Script

Triggable actions can be classified into two categories: actions related to calls where agent is involved or where agent is not involved.
When agent is involved all actions are compliant in trigger configuration, while if agent is not involved you can only use Integration, URL Forward, Contact Manager and Script as compliant actions.


Scenario
Conditions Queue equal to Support AND Call Status equal to Abandon

Agent not involved on call flow ↴

You can insert as action only one of these: Integrations / URL Forward / Contacts Manager / Script

In this list, you can see the compliant actions that you can insert to activate the trigger correctly, based on the type of call and the conditions entered.

Type of call
1° Condition
 
2° Condition =
Call Status
Compliant Actions
INBOUND -
Voice Queues
Queue
Name of chosen
inbound queue
+
Timeout
Abandoned
Integrations
URL Forward
Contacts Manager
Script
Queue
Name of chosen
inbound queue
+
Hangup
Ring
Answer
Reject
AgentReject
Motion Bar
JScripty
Browser
Voicebot
Integrations
URL Forward
Contacts Manager
Script
OUTBOUND - Queue Campaigns (Motion Bull)
Queue
Name of chosen
outbound queue
+
Hangup
Ring
Answer
Reject
AgentReject
Timeout
Abandoned
Exclusive conditions
for the dialer:
NoSuchNumber
Busy
NoAnswer
Congestion
AMD
Motion Bar
JScripty
Browser
Voicebot
Integrations
URL Forward
Contacts Manager
Script
OUTBOUND ROUTE
Route
Name of chosen
outbound route
+
Hangup
Answer
Motion Bar
JScripty
Browser
Voicebot
Integrations
URL Forward
Contacts Manager
Script

Actions - Voice trigger

Voice trigger actions are functions executed when the defined voice trigger conditions are true.

Actions can be related to 3 different moments:

  • before customer-agent contact (for instance before agent's answer)

  • during call

  • after call

It's important to choose conditions in the right way, because for example if you insert a condition like call status abandoned, you can't place action involving agent (e.g. jscripty) while an action like webservice can be inserted in every moment, depending on the related API (Salesforce only after call).

In the following section you find a list of actions that can be used:

  • Motion Bar

    • Popup

    • CTI URL

    • Windows App

  • Contacts Manager

  • Browser

    • Popup

    • CTI URL

  • JScripty

  • URL Forward

  • Voicebot

  • Script

 

Motion Bar

Motion bar action is used to notify the Omnichannel Motion Phonebar to perform actions like: display screen popup, execute windows application or open a URL in a web browser.

Agents must be logged in the Motion Phonebar for the Motion Phonebar actions to run.

There are 3 types of Phonebar actions:

Popup

Popup action is used to display a customizable screen popup for agents logged in the Phonebar. You must first create a template (Tools → Templates) with the information you want to be displayed for agents. You can also use standard and custom variables in your template to customize the displayed content based on the values of the variables set during the call flow. 

Custom variables must be defined under Tools → Variables, then you can set the values in the dialplan or in IVR project.

The screenshot shows an example of a template used to show information about the call and the caller.

Important: Please note the variable name must be lowercase (e.g. {{variable_name}} )

Moreover, you can select an Auto close option by choosing among these possible values: Never, the popup does not close automatically, Hangup, the popup gets automatically closed when an ongoing call is hangup, Delay, the popup gets closed after a configurable timeout in seconds.

This update works only from 5.2.0 Phonebar version

image-20240229-133006.png


CTI URL

CTI URL action is used to open a specified URL in a browser New Tab or New Window (Location).  
It can be used to open a website, your custom CRM url or integrate with any other web application.
You can use standard or custom variables in the URL query string to pass information to the web application that can be useful for processing its logic:

  • If the Event Variables field is set to Yes, the string in the URL field is merged with all the available interaction type values (pay attention that it add to the URL string the complete variables list: it is not recommended unless for evaluation purposes).

  • If the Event Variables field is set to No (suggested value), only the variables inserted in the URL field are used.

 

In the following example, variables in bold are Motion standard variables and those red are custom variables:

  http://ip-address/cti/index.html?CALLID={{uniqueid}}&CALLER={{calleridnum}}&QUEUE={{queue}}&ORDER={{ordernum}}&STATUS={{orderstat}}

Important: Please note the variable name must be lowercase (e.g. {{variable_name}} )

 

TIP:
Remember to set the Event Variables to No

Note: if the Agents use the WebRTC bar the Motion Bar trigger Action will not work (e.g. use the Browser Popup action to display notifications)

Windows App

Windows App action is used to execute or open a windows application with the specified arguments in the agent desktop.

You can use standard or custom variables to pass custom information in the arguments.

Contact Manager

The Contact Manager action is used to search a contact in a specific Contact Manager List and displays the contact's information to the Agents on the XCALLY Motion Omni Desktop Interface.

In case of new Contact, this action will create a new entry in the Contacts Manager.

Below the steps of Contact Manager trigger:

  1. Add a New Action and choose the Contact Manager type

2. Select the list from where the Contacts must be searched:

  1. Select the search fields in the Contact Manager:

In the Standard Fields:

In the List Fields or in the Global Fields:

4. Define if you would like to create Contact Automatically:

Indicate whether the contact must be created (if it is not already in the List).

  • Yes, the Contact will be always created in the List (if it is not already there). You can choose in which field to insert the Customer number (phone, mobile, fax).

  • No, if the Contact does not exist in the List, a new Contact tab (filled with the phone number) will be displayed and the Agent will be able to decide whether to add the new contact in the list or to discard it by simply closing the tab. 

5. Define if you would like to Ignore dialer contact Id

Indicate whether the system must ignore the dialer contact Id, when calls are generated with Motion Bull.