Virtual Agent

The Virtual Agent activity provides a real-time conversational experience for your contact center customers. You can add a Virtual Agent to the call flow to handle customer queries in the conversational format. The Virtual Agent is powered by Google’s Dialogflow capabilities. When a customer speaks, the Dialogflow matches the customer conversation to the best intent in the Virtual Agent. Further, it assists the customer as part of the Interactive Voice Response (IVR) experience.

Before you use a Virtual Agent:

  1. Set up a Dialogflow agent. For more information on building a Dialogflow agent in the Google Cloud, see Build an agent.

    Note

    Include Hello as a training phrase in the preferred language for the Dialogflow agent to start a conversation with the caller. You can add this training phrase in the default welcome intent or in any other intent of the Dialogflow agent. For more information, see Intents.

    Depending on the way you set up the Dialogflow agent, you can use the Virtual Agent activity to handle different kinds of use cases.

  2. Configure a Virtual Agent in Control Hub. For more information, see Configure Cisco Webex Contact Center Virtual Agent.

The following sections enable you to configure the Virtual Agent activity:

General Settings

Parameter

Description

Activity Label

Enter a name for the activity.

Activity Description

(Optional) Enter a description for the activity.

Conversational Experience

Parameter

Description

Virtual Agent Choose a Virtual Agent in Control Hub.

The Virtual Agent powers the natural language conversation as part of the IVR experience with the caller.

Make Prompts Interruptible

Enables the customers to interrupt the Virtual Agent to make new requests or end the call.

Override Default Language & Voice Settings

Use this toggle button to override the language and voice settings that are configured in Global_Language and Global_VoiceName variables. This parameter is enabled by default.

Input Language

Indicates the language that the customer uses while speaking to the Virtual Agent. This field appears only if you enable the Override Default Language & Voice Settings toggle button.

Note

If the input language that Google supports is not available in the Input Language drop-down list, disable the Override Default Language & Voice Settings toggle button. Include the Set Variable activity before the Virtual Agent activity in the flow.

Configure the Set Variable activity as follows:

  • Set the variable to Global_language.

  • Set the variable value to the required language code (for example, fr-CA). For more information on the languages, see the Google Language reference page.

Virtual Agent voice deployments in Webex Contact Center support only languages with the recognition model as an enhanced phone call(see Supported voices and languages that are available with Dialogflow Essentials (ES) (see Language reference).

Output Voice

The default value is Automatic. When the value is Automatic, the Dialogflow chooses the voice name for a given language. Ensure that the voice name configured is as per the chosen language.

Note

If the output voice name that Google supports is not available in the Output Voice drop-down list, disable the Override Default Language & Voice Settings toggle button. Include the Set Variable activity before the Virtual Agent activity in the flow.

Configure the Set Variable activity as follows:

  • Set the variable to Global_VoiceName.

  • Set the variable value to the required output voice name code (for example, en-US-Standard-D). For more information on the supported voices and languages, see the Google Supported voices and languages page.

For more information on Text to Speech voices, see Supported voices and languages.

Variable Passing

The optional parameters in the Virtual Agent activity can contain personally identifiable information (PII). Webex Contact Center sends these parameters to the Google Dialogflow as variables to implement advanced conversational logic with the bot.

Optional Parameters

Parameter

Description

Key-Value

The Key-Value parameter allows you to enter a variable name and the associated value. You can enter variable values by using the double curly braces syntax.

For example, if you want to return the account balance of a customer based on the ANI, the key and value can be:

Key: ANI

Value: {{NewPhoneContact.ANI}}

To add a variable parameter, click Add New. This adds a row where you can enter the respective key-value pair.

The contact center sends these parameter values to the Google Dialogflow as a JSON value in the request.query_param.payload object. The system parses and handles this JSON in the fulfillment application. The system reaches this application through the webhook that is configured in the Dialogflow. For more information, see Fulfillment.

Advanced Settings

Advanced Settings
Parameter

Description

No-Input Timeout

Indicates the amount of time that the Virtual Agent waits for customer input (voice or DTMF).

The default value is 5 seconds. The value can range 1–30 seconds.

Max No-Input Attempts

Indicates the number of times the Virtual Agent waits for customer input (voice or DTMF).

The default value is 3. The value can range 0–9.

When the maximum number of attempts elapse, the Virtual Agent exits, with the output variable ErrorCode set to the value max_no_input.

Inter-digit Timeout

The amount of time that the Virtual Agent waits for the next DTMF input from the customer before the Virtual Agent moves on in the conversation flow.

The default value is 3 seconds. The value can range 0–30 seconds.

Terminator Symbol

The character that the customer can enter to indicate the end of input. The Terminator Symbol can be either # or * depending on the configuration.

Termination Delay

Enables the Virtual Agent to complete the last message before the activity stops and moves on to the next step in flow.

For example, if you want the Virtual Agent to indicate something to the caller before the system escalates the call to an agent, consider the time it takes to complete the final message before escalation. The value can range 1–30 seconds.

Speaking Rate

Indicates the rate of speech. Increase or decrease the numeric input to maintain the ideal rate of speech and control the output speaking rate.

Valid values for the numeric input are in the range of 0.25 to 4.0 words per minute (wpm). The default value is 1.0 wpm.

Volume Gain

Indicates the increase or decrease in volume output. Increase or decrease the numeric input to maintain the ideal volume of output speech.

Valid entries for the numeric input are in the range of –96.0 decibels to 16.0 decibels (dB). The default value is 0.0 dB.

Enable Conversation Transcript

Enables the Desktop to display the transcript of the conversation between the Virtual Agent and the customer. The raw transcript is also available through a dynamic URL. You can use this URL to extract specific sections from the transcript using an HTTP request.

Output Variables

These variables store the output status of the event that occurs during the conversation between the Virtual Agent and the customer.

Output Variables

Output Variable

Description

VVA.LastIntent

Stores the last intent that is triggered by the Virtual Agent before moving to the Escalation or Handled intent.

VVA.TranscriptURL

Stores the URL that points to the transcript of the conversation between the Virtual Agent and the customer.

Note

Use the Parse activity to extract the parameters from the Virtual Agent transcript.

VVA.ErrorCode

Stores the status code whose value depends on the outcome of the conversation between the Virtual Agent and the customer. This variable holds one of the following values:

  • no_error: Indicates that the Handled and Escalated outputs had no errors.

  • max_no_input: Indicates that the customer didn't have any input errors within the specified Max No-Input Attempts.

  • term_char_without_input: Indicates that the customer pressed the termination key without any input (spoken or by key press). The terminator symbol can be either # or * depending on the configuration.

  • system_error: Indicates any other error in the system. For example, Dialogflow error, network issue, and so on.

Note

To play a custom audio message to notify customers of an error, flow developers must include a Play Message activity (before disconnecting the call) in the flow. For more information on the Play Message activity, see Play Message.

Outcomes

Indicates the output paths for the Virtual Agent that occurs based on the outcome of the conversation between the Virtual Agent and the customer.

  • Handled: The Dialogflow takes this path if the system triggers the Handled intent.

  • Escalated: The Dialogflow takes this path if the system triggers the Escalation intent.

For more information on the intents in the Dialogflow, see Intents.

Error Handling

Indicates the output path of the Virtual Agent that is based on the error that occurs during the conversation between the Virtual Agent and the customer.

Error: The flow takes this path in any error scenarios.

If there is an error, the contact center does not play any audio message to notify the customer of the error, by default. The flow developer can configure a Play Message activity either generically or based on the error code as described in the Output Variables section.

Note

The functionality of the output paths depends on the configuration and the flow that is defined by the administrator.