Variables can be used in the execution of an automation to store information or to read data from external sources. During a conversation, variables can be created, updated, or overridden.
Automation Designer enables you to see, add and use custom or system variables.
You can manage custom or system variables in Automation Designer’s “Variables” side panel [1]:
Custom Variables
Custom variables are designed by the users.
They can be used on the components as reading operations and can be created or updated:
- "Ask” component: create/update variable.
- "Execute Action” component: create/update and read variables.
- "Split Flow" component: read variables.
- "Escalation” component: create ringGroup and endConversation variable.
- "Say” component: create endConversation variable, if selected.
- All components containing a “Message” field: read variables.
As seen above, all components with messages can reference a variable; this means that in the “Message” field of all of these components, you can use variables to feed information into your flow, as shown in the following example:
In this case, the value that is being referenced in variable1 will be replaced during execution, so if variable1 = abc, the message will be "Value is abc. Number to use?".
Note: When a variable is referenced and has no value, it is assumed that its value is equal to its name. Example: "Value is variable1. Number to use?"
System Variables
System variables are dynamic variables that change during an automation’s execution process.
The system variables are fixed, i.e., they are predetermined and prespecified by our internal teams and should not be overridden. They can be used on the components as reading operations.
Variable | When is it set? | Type |
businessHours | Set at the beginning | fixed |
callerId | Set at the beginning | fixed |
accountId | Set at the beginning | fixed |
interactionId | Set at the beginning | fixed |
escalate_ring_group | Defined on the “Escalation” component (it is dependent on the definition of this component) | Only appears after an “Escalation” component |
intentConfidence | Set in each turn of the conversation* | Yes |
sentiment | Set in each turn of the conversation* | Yes |
utterance | Set in each turn of the conversation* | Yes |
endInteraction | Defined on “Say” or “Escalation” component (it is dependent on the definition of these components) | Only appears after an “Escalation” component or a “Say” component if selected. |
* These values are adjusted each time the VA receives an utterance from the user.