Play-Listen
The Play-Listen scenario block is a key part of Bright Pattern's conversational IVR. The block enables natural conversation in an automated scenario, using the combination of integrated text-to-speech and speech-to-text technologies, along with integrated chatbots, to "talk" to customers on inbound voice calls and "listen" for their spoken or DTMF (i.e., touch tones) response.
To use this block, your contact center must have a Speech To Text (STT) integration account and a Text to Speech (TTS) integration account.
(Note that for scenarios in which input from the caller is expected in response to a prompt, use the Menu block.)
How It Works
On a call, if the Play-Listen block detects that the caller is talking or entering touch tones on the phone, the voice prompt will stop playing, and one of the following will happen:
- If a DTMF key is detected, the DTMF exit will be taken, leaving the key in the buffer for subsequent DTMF blocks.
- If there is no change in voice detection, the Play-Listen block will take the Timeout exit.
- If a vocal change is detected, the caller's voice data will be fed into the selected transcriber (see below) until the voice changes back to a lower level. The transcription result will be saved into the specified recognized phrase variable (see below) and the Play-Listen block will take the normal exit.
Properties
In this block's properties, you will configure Play-Listen to play a voice prompt for the caller, collect the caller's spoken response or DTMF response, offer bot suggestions to the caller, and route the caller if the block fails.
Prompt to play
This is the prompt that the scenario will play to the caller.
The Play-Listen block uses text-to-speech technology to convert bot response text into speech in a specified language. The prompt will sound like a robot. You have the option to record your own voice segment and upload it to the Prompts list as a .WAV file.
Learn more about managing prompts in this guide's section, Voice Prompts.
Allow interrupting prompt by customer voice
When this checkbox is enabled, if the Play-Listen block detects that a caller is talking at any point while the configured prompt is playing, the prompt will be interrupted; this means the prompt may be interrupted as soon as it begins playing. Note that this setting is unchecked by default and affects the Max timeout setting whether it is checked or unchecked.
Enabling this checkbox may be useful as a subsequent Menu block does not require a second input and a subsequent Collect Digits block no longer requires variable concatenation (i.e., starting from Bright Pattern Contact Center version 5.5.5).
Transcriber
The transcriber is the Speech-to-Text (STT) engine that takes the caller's vocal response and converts it to text, thus producing a text transcription of whatever was spoken.
Select "default" to use the transcriber engine suggested by your service provider, otherwise select one of the STT integration accounts that has been configured for your contact center.
End of phrase silence time
If your contact center uses IBM Watson STT or Google synchronous STT as the transcriber, this setting allows you to configure a specific amount of time (in seconds) that the system waits at the end of a detected spoken sound before exiting the block. The minimum configurable value is 0.5 seconds, the maximum configurable value is 3 seconds, and the default value is 0.8 seconds. Configuring this setting can be useful for contact centers that require customers to read out long strings of digits and/or letters. Note that the sound detection does not apply to DTMF tones.
Speech contexts
An optional list of words or phrases relevant to the context of the call may be provided, such as specialized terms, industry jargon, or brand names. Listed terms have a higher chance of being correctly transcribed, especially when unusual terminology is used or speakers have widely varying pronunciations.
The list may be formatted by separating each word or phrase with a comma:
integrate with [relevant software name], Contraindications, PCR tests
Or by entering them on separate lines:
integrate with [relevant software name]
Contraindications
PCR tests
Note that scenario variables can not be used as terms for speech contexts.
Use smart formatting
If your contact center uses IBM Watson STT as the transcriber, enabling the Use smart formatting checkbox allows the conversion of certain strings into more conventional representations (e.g., automatically converting the word “eight” into the digit “8”). Automatically converted strings include the following: dates, times, a string of digits and numbers, phone numbers, currency values, internet email and web addresses, and so forth.
Recognized phrase
The recognized phrase uses a variable to represent whatever the customer says. In this field, enter the variable that receives the caller's spoken "phrase" (e.g., "user_phrase" or "bot_phrase").
The variable name can be anything you want, as long as you use the same variable name consistently in your scenario. The variable/recognized phrase is set using the Set Variable block.
Confidence
Confidence indicates the speech-to-text service's confidence in its identification of the speakers and the words that are spoken. In this field, confidence is represented by a variable that receives the confidence value from your integrated speech-to-text engine.
As with the recognized phrase variable, you can enter any variable you want here (e.g., "cc"), as long as you use it consistently later.
Your STT engine conveys confidence as a numeric value, where the higher the number (e.g., "0.999") is, the more confident the STT engine is that it has recognized vocals correctly. A low number (e.g., "0.001") shows that the engine has very low confidence in its vocal recognition. For example, if the customer says, "I need a new phone," and the engine hears, "I need a sea foam," the confidence will be likely very low. If confidence is low, the scenario can escalate the call to a real agent.
Max timeout
This setting determines the total amount of time, in seconds, that the scenario waits before having the Play-Listen block take the Timeout conditional exit; the default value is 20 seconds. Max timeout is measured from the point when the prompt is ended or interrupted by the customer if it is allowed.
Notes:
- If the Allow interrupting prompt by customer setting is checked, the max timeout begins counting from the time the prompt is interrupted or finishes playing. The Timeout exit is taken when the defined timeout is reached.
- If the Allow interrupting prompt by customer setting is unchecked, the max timeout begins counting after the configured prompt has finished playing. The Timeout exit is taken when the defined timeout is reached.
Re-use digit from interrupting button in the next block
If the DTMF conditional exit is taken (i.e., DTMF is received as an input), and this checkbox is enabled, the received DTMF code is saved in the buffer and may be used in a subsequent Menu or Collect Digits block.
Conditional Exits
The scenario can exit the Play-Listen block through the DTMF exit, Failed exit, or Timeout exit.
DTMF
Dual-tone multi-frequency (DTMF) refers to telephone touch-tones. If the Play-Listen block detects that the caller is transmitting numeric information (numbers from 0 to 9, as well as symbols # and *) on the phone, it will take the DTMF exit, running through the scenario as specified. Note that when a customer is speaking, if they press a DTMF key, this exit will be taken.
When a DTMF key is pressed, the first DMTF entry will populate the $(playListenDTMF) variable.
To define what the scenario will do once the exit is triggered, drag a scenario block over to the DTMF exit.
In the example shown above, when the DTMF exit is triggered, an internal message is sent to a specified agent, so that the agent knows that touch-tone information was provided via the IVR. Then, the scenario uses the Goto block to go to the Find Agent block.
Failed
The Failed exit is taken when the Play-Listen block has delivered the prompt but has failed to collect a response from the caller.
To define what the scenario will do once the exit is triggered, drag a scenario block over to the Failed exit.
In the example shown above, when the Failed exit is triggered, an internal message is sent to a specified agent, so that the agent knows that conversational IVR didn't get a response from the caller. Then, the scenario uses the Goto block to go to the Find Agent block.
Timeout
If the Play-Listen block does not detect any changes in vocal input or if the call is silent, the block will take the Timeout exit.
To define what the scenario will do once the exit is triggered, drag a scenario block over to the Timeout exit. You may wish to use the Goto block to go to the Find Agent block.
Recommended Reading
Explore Bright Pattern's tutorials to learn more about how to use the Play-Listen block: