Overview: Say + Gather workflow module (Console)
Console > Workflows > Workflow modules > Overview: Say + Gather workflow module (Console)
This article provides an overview of the Say + Gather workflow module in Console.
In this article
Overview
The Say + Gather workflow module is a tool used for gathering information from customers. With the Say + Gather module, you can prompt a customer for a piece of information (like a phone number, account number, or name) and assign it to a custom variable. You can then use the variable later on in other workflow modules in the workflow.
For example, you could use the Say + Gather module to ask for a customer’s account number. With the account number saved to a variable, you could use it with a Look Up module or a Webhook module to search for the customer’s information in a third-party CRM database like Salesforce.
In the screenshot below, the Say + Gather module is being used to collect an account number that can be used for paying an invoice (an option that can be provided by the Say + Intent module).
In this workflow example, the customer can choose to pay an invoice with a trigger from the Say + Intent module. Then, they’re routed to the Say + Gather module to collect their account number.
The Say + Gather module can collect information from customers through any of the following channels:
Phone (voice or DTMF input)
SMS (text)
Web chat (text)
For example, it’s common to use the Say + Gather module to collect an identifying value like a name, address, pin number, email address, invoice number, or business account number. With that data saved in the workflow, it’s then possible to use a module like the Look Up module or the Webhook module to search for data related to that identifying value.
Continue reading this article to learn more about how the Say + Gather module works.
How it works
The Say + Gather module enables you to collect information from your customers. This enables you to build dynamic workflows that are customized and route based on specific information provided by the customer.
When a workflow reaches the Say + Gather module, it asks the customer for a piece of information. You can configure the Say + Gather module to detect a certain type of information, including:
Address
Correct / Incorrect (yes or no questions)
Credit Card Number
Custom Pattern (by use of regular expression)
Edify Extension
Edify Extension User
Edify User Email
Edify User Name
Email
Location
Number
Person Name
Phone Number
Social Security Number (SSN)
Also, keep in mind that the Say + Gather module gives you the ability to encrypt and/or redact data submitted by the customer. So, for example, if a customer provides their Social Security Number, you can encrypt it so that it's secure from unauthorized access, and you can redact it so that the queue user can’t see it on the interaction feed.
Note: We recommend that you always encrypt and redact sensitive customer data. Best practice is to encrypt and redact everything that you don’t expressly need unencrypted or unredacted.
Once you’ve collected the customer’s data, you have the option to set a variable from the Say + Gather module. For example, if want to ask a customer for their email address to send them an email, you would use two Say + Gather modules:
One to get their consent to send an email (“Do you want to receive an email with a survey?” Yes / No).
One to get their email address if they consented to receive an email.
The Validation and Set Variable sections of the Say + Gather module are where you can do both actions: set that you’re detecting an email from the customer and then assign it to the variable customerEmailAddress.
You can then use the variable collected in the Say + Gather module in the Send Email module. This way, you can make dynamic workflows that adapt to customers’ data.
Text to speech
The Say + Gather module can synthesize speech in 40+ languages and variants. With text to speech, you:
Write a message prompt in the language of your choice.
Define the language in the Language dropdown menu.
Define the voice that will be used to synthesize the text in the Voice dropdown menu.
In the example to the right, the Say + Gather module is configured to recite a message (Good day. What is your email address) in Italian with the voice “Female 4” via text-to-speech
Audio files
With phone calls, instead of using text-to-speech, you can opt to have the system play an audio file for the customer. There are two types of audio files the Say + Gather module can play:
Static audio files (the same audio file plays every time)
Dynamic audio files (a certain audio file plays based on a predetermined condition)
Read more about static audio files and dynamic audio files in the visual breakdown section below.
Visual breakdown
Basic
Label: The Label field is where you define a custom name for the workflow module. This can make it easier to see what the module is doing from the workflow editor workspace and this is how the module is referred to in reporting.
Auto Progress: The Auto Progress toggle sets whether the workflow can ask multiple questions in one prompt to fill multiple variables. For example, if Say + Gather is set to auto progress while asking for a user’s email and phone number, the workflow will gather both pieces of information from a user’s response (if the user’s response contains both the email and phone number). This is a way of asking for more information more naturally.
Phone prompts
The Phone prompt section is where you define the prompts to be used for phone interactions. The fields available to you configure depend on which prompt type you select: Text, Audio, or Dynamic Audio.
Allow Speech: When enabled, the Allow Speech toggle allows the customer to verbally give responses to the prompt. This toggle defaults to 'Disabled'.
Text: The Text phone prompt option indicates that the workflow will recite the message to the customer using text-to-speech functionality.
Play button: The Play button lets you hear how the text to speech will sound to the customer.
Language: The Language menu lets you select the language of the prompt text. The language should match the actual language of the recited text. For example, text written in Italian should have the Language menu set to Italian.
Voice: The Voice menu lets you select the type of voice that will recite the text. Each language has a selection of “Male” (typically masculine, lower pitch) and “Female” (typically feminine, higher pitch) voices to choose from.
Audio: The Audio phone prompt option indicates that the workflow will play an audio file to the customer. Before using this option, though, you need to first add audio files in the Audio Upload workspace in Console (CX > Audio Upload). Once they’re added, then the file options will populate in these menus for you to use.
Audio file selector: The Audio file selector menu is where you choose the audio file to use. This is a list of audio files uploaded in the Audio Upload workspace.
Play / Pause / Volume buttons: You can use the play, pause, and volume buttons to test playback of the audio file.
Dynamic Audio: The Dynamic Audio phone prompt option indicates that the workflow will use dynamic audio. With the dynamic audio file option, you can choose audio files to play based on previous logic in the workflow (like from a Say + Intent module or a Decision module).
A workflow with a webhook retrieving a dynamic audio file to play in a Say + Gather module
For example, in the screenshot to the left, the Webhook module retrieves an audio file via the API Platform based on the inbound phone number. This could be an audio file custom tailored to a specific customer (identified by the inbound phone number).
The webhook can return a variable or an advanced (soundFileId) value that you can provide to the Say + Gather module.
In the Webhook module, you can create a variable for the sound file you want to use.
You can use the variable from the Webhook module to play the dynamic audio file.
Advanced phone prompt settings
There are several advanced settings available to you for phone prompts in the Say + Gather module.
Interrupt Prompt: When enabled, the Interrupt Prompt toggle lets the customer provide an answer to the prompt before the prompt has finished playing.
Only Interrupt Prompt on Match: When enabled, the Only Interrupt Prompt on Match toggle only interrupts the prompt if the customer has provided a valid response. If not, the prompt continues to play.
Allow DTMF: When enabled, the Allow DTMF toggle allows the customer to input responses with the phone’s keypad.
Timeout (seconds): The Timeout (seconds) field defines how many seconds to wait for a response from the customer.
After DTMF input timeout (seconds): The After DTMF input timeout (seconds) field defines how many seconds the module should wait after a DTMF input to proceed.
DTMF Capture Max Length: The DTMF Capture Max Length field defines how many DTMF key presses will be accepted and recognized. For example, if you want to capture a 10-digit account number, you could set this field to “10”. The module would then only capture the first 10 digits provided by the customer and no additional digits.
Messaging prompts
Text: The Text messaging prompt option for messaging interactions is comparably simpler than those for phone interactions. For messaging interactions, you can simply provide text that will be sent to the customer. You can also add multiple prompts that the system will randomly choose (the same way the phone prompts function). Note that whatever is typed into the messaging prompt is exactly what is sent to the customer.
Note: Though the Text prompt appears as a dropdown selector, the only option available is Text.
Timeout (seconds): The Timeout (seconds) field defines how many seconds it takes to wait for a response from the customer.
Buttons
The Buttons section is where you define buttons to appear in web chats. When a customer opens a web chat that’s hooked up to a workflow with a Say + Gather module, the buttons defined in the module are populated for the user (like in the screenshots below).
The customer's web chat view of the Yes / No buttons configured in the module.
The admin's view of Yes / No buttons configured in the Say + Gather module.
Validation
Type: The Type menu is where you set the one type of data that the module considers as “valid”, which is the piece of information that the module is expecting to gather from the customer. If the module gathers the expected piece of data, then the module defines it as a “valid” input. If the module collects something outside of the valid response, then the module marks it as an “invalid” input.
You can configure the Say + Gather module to gather and detect one of the following:
Address
Correct / Incorrect (yes or no questions)
Credit Card Number
Custom Pattern (by use of regular expression)
Edify Extension
Edify Extension User
Edify User Email
Edify User Name
Email
Location
Number
Person Name
Phone Number
Social Security Number (SSN)
Encrypt: The Encrypt toggle allows you to add an additional layer of encryption security to the data being gathered. Other things to know:
Encryption is not connected to the Redact toggle settings. So, your encryption setting doesn’t impact and isn’t related to your redaction settings.
This toggle can be either enabled or disabled.
The toggle defaults to being disabled.
Redact: The Redact toggle allows you to define whether you want the valid, gathered sensitive information to be hidden or not once it’s posted. Other things to know:
Redaction is tied to validation: Redaction is connected to your validation setting. This means that redaction only happens when the customer inputs a valid response. So, if the Say + Gather module is configured with email addresses as the valid input, and the customer enters a phone number input, then the phone number won’t be redacted. This is the case for all invalid inputs from the customer. Once the customer inputs a valid email address, the email address will be redacted because that’s the data configured under your validation settings.
If redaction is enabled, that means you want the data to be hidden, and that means it will be hidden for everyone (i.e. agent, interaction viewers, and customer). So, the agent won’t see the sensitive information in the interaction feed and the customer won’t see it in the web chat client or SMS/MMS messaging.
Redaction is not connected to your Encrypt toggle settings. So, your redaction setting doesn’t impact and isn’t related to your encryption settings.
This toggle can be either enabled or disabled.
The toggle defaults to being disabled.
Set Variable
New Variable Name: The New Variable Name field is where you create the variable name for the valid input gathered from the customer. You can then use the variable later in the workflow.
When creating the variable’s name, you can use any words you need to create a meaningful name. However, remember to use effective, standard variable syntax rules to ensure the system creates a valid variable for you.
This is an optional setting in the module.