Overview

This flow showcases how data is passed between Webex Contact Center and DialogFlow ES for processing customer interactions. It provides a foundational flow where data is exchanged with DialogFlow ES for natural language processing and automated agent fulfillment. The integration with DialogFlow enables the bot to understand customer intents and take appropriate actions based on the conversation. Additionally, the flow includes error handling to ensure a smooth customer experience, even when unexpected conditions arise.

Prerequisites

Ensure that the following requirements are met in the Webex Contact Center Management Portal before implementing this flow:

  • A Google DialogFlow ES agent with relevant intents for the conversation.
  • Create entry points, queues, teams, and entry point mappings.
  • Enable Webhook Fulfillment in DialogFlow ES and use the sample node.js code in the inline editor.
  • Cisco Text-to-Speech (TTS) is enabled for generating custom messages dynamically. Upload static audio files if custom audio prompts are used instead of Cisco Text-to-Speech (TTS).

Flow breakdown

The following table describes the various flow elements involved in the call process, detailing the actions and responses that occur during each stage.

Flow element

Description

Customer initiates contact The call is received by Webex Contact Center.
Data is passed to DialogFlow ESA custom greeting, which includes customer details such as name and reason for calling, is sent to the DialogFlow ES bot for processing.
Bot interaction with DialogFlowDialogFlow processes the input and responds based on configured intents.
Music in queueWhile the bot processes the request, the customer is placed in a queue with hold music.
DisconnectThe interaction ends once the dialog is completed.

Flow activities

The following table describes the sequence of flow activities involved in this flow template.

Flow activity

Description

Start

This activity marks the beginning of the flow. It's triggered when a new call is received.
Set LanguageThe flow uses a Set Variable activity to configure the language code (en-US) for the entire interaction. This ensures all voice interactions align with the caller's language preference.
Custom GreetingThis activity passes customer details such as name, email, and reason for calling to the DialogFlow ES bot. The greeting is dynamically generated using Cisco Text-to-Speech (TTS). Example data passed:
  • customerName: Jane Doe
  • customerEmail: customer@email.com
  • customerReason: Bookings

Queue to Agent

If the interaction requires escalation, the customer is placed in a queue, and hold music is played using the defaultmusic_on_hold.wav file.
Play MusicMusic is played while the caller waits in the queue. The flow uses Cisco’s default hold music but can be customized by uploading different music files.

Disconnect

This activity disconnects the call once the flow is complete, ensuring a seamless end to the interaction.

Flow specifics

The flow JSON used in this example contains variables and activities essential for interaction handling, error processing, and communication between Webex Contact Center and DialogFlow. The key variables used include:

Flow variable

Description

Global_FeedbackSurveyOptIn

Tracks whether the customer opts in for a post-call survey.
customerNameCaptures the customer's name for personalization.
customerEmailCaptures the customer’s email.
customerReasonRecords the reason for the customer's call.
Global_LanguageConfigures the default language (en-US).

Global_VoiceName

Determines the voice used for text-to-speech.

Additional resources

For more information on this integration, see the Working with Data on Google DialogFlow ES with Webex Contact Center video.

Refer to Webex Contact Center Developer Documentation and DialogFlow ES Documentation for further guidance.

Developer support

For any support regarding this integration, open a ticket with the Webex Contact Center Developer Support team through the Webex Developer Portal.

For further discussions, visit the Webex Contact Center APIs Developer Community.