Google Dialogflow Virtual Agent Fulfillment for Webex Contact Center
A Node.js sample that wires Google Dialogflow into Webex Contact Center for AI-powered voice self-service: caller context flows from WxCC into a Dialogflow virtual agent, a Cloud Functions webhook fetches account or CRM data, and the result is spoken back to the caller — all without a separate middleware server. Covers both Dialogflow CX (recommended for new projects) and Dialogflow ES (for teams extending existing agents).
Why use this playbook
- Pick the right generation fast: A side-by-side comparison table in the README maps Dialogflow CX vs ES across runtime, dependency footprint, WxCC integration path, and "pick this if…" guidance so you decide before writing a single line.
- Start from working code: Both samples are adapted from official WebexSamples and show the exact request/response shapes WxCC and Dialogflow expect.
- Lighter where it counts: The CX sample uses only the Node.js built-in
httpsmodule — no framework overhead — while the ES sample shows the full Firebase +dialogflow-fulfillmentpattern for teams already on that stack. - Secrets handled safely: All backend API URLs load from environment variables; no credentials are hardcoded.
- Easy to verify locally: Import the bundled WxCC flow JSON files and the mock API URLs let you confirm end-to-end behavior before connecting a real backend.
What it does
- Receives a Dialogflow CX webhook request and returns a
fulfillment_responsewith an account balance fetched from a configurable backend API. - Receives a Dialogflow ES fulfillment request, reads caller context
(
name,email,reason,pin) fromoriginalDetectIntentRequest.payload, performs a CRM lookup, sets Dialogflow output context, and returns a personalized spoken greeting via thedialogflow-fulfillmentSDK. - Includes importable WxCC flow JSON for both variants so you can wire the demo end-to-end in Flow Designer without building flows from scratch.
Preview listing
This App Hub entry was published from an open pull request. Review the change.
Support
Third-Party Tool
Google Dialogflow
Estimated Implementation Time
2-4 hours
Categories
A Node.js sample that wires Google Dialogflow into Webex Contact Center for AI-powered voice self-service: caller context flows from WxCC into a Dialogflow virtual agent, a Cloud Functions webhook fetches account or CRM data, and the result is spoken back to the caller — all without a separate middleware server. Covers both Dialogflow CX (recommended for new projects) and Dialogflow ES (for teams extending existing agents).
Why use this playbook
- Pick the right generation fast: A side-by-side comparison table in the README maps Dialogflow CX vs ES across runtime, dependency footprint, WxCC integration path, and "pick this if…" guidance so you decide before writing a single line.
- Start from working code: Both samples are adapted from official WebexSamples and show the exact request/response shapes WxCC and Dialogflow expect.
- Lighter where it counts: The CX sample uses only the Node.js built-in
httpsmodule — no framework overhead — while the ES sample shows the full Firebase +dialogflow-fulfillmentpattern for teams already on that stack. - Secrets handled safely: All backend API URLs load from environment variables; no credentials are hardcoded.
- Easy to verify locally: Import the bundled WxCC flow JSON files and the mock API URLs let you confirm end-to-end behavior before connecting a real backend.
What it does
- Receives a Dialogflow CX webhook request and returns a
fulfillment_responsewith an account balance fetched from a configurable backend API. - Receives a Dialogflow ES fulfillment request, reads caller context
(
name,email,reason,pin) fromoriginalDetectIntentRequest.payload, performs a CRM lookup, sets Dialogflow output context, and returns a personalized spoken greeting via thedialogflow-fulfillmentSDK. - Includes importable WxCC flow JSON for both variants so you can wire the demo end-to-end in Flow Designer without building flows from scratch.
Preview listing
This App Hub entry was published from an open pull request. Review the change.