Target Webex Connect Configuration¶
Overview¶
This document defines the target state IVR design using Webex Connect Flow Designer, including modernized call flows, AI-powered self-service, omnichannel integration, and enhanced customer experience capabilities.
Webex Connect Platform¶
Platform Architecture¶
┌─────────────────────────────────────────────────────┐
│ WEBEX CONNECT CLOUD PLATFORM │
├─────────────────────────────────────────────────────┤
│ │
│ ┌────────────────────────────────────────────┐ │
│ │ Flow Designer (Visual Development) │ │
│ │ • Drag-and-drop interface │ │
│ │ • Pre-built nodes and connectors │ │
│ │ • Real-time testing │ │
│ │ • Version control │ │
│ └──────────────────┬─────────────────────────┘ │
│ │ │
│ ┌──────────────────▼─────────────────────────┐ │
│ │ Flow Execution Engine │ │
│ │ • Multi-channel support (voice, chat, │ │
│ │ email, SMS, social) │ │
│ │ • Scalable cloud infrastructure │ │
│ │ • Real-time analytics │ │
│ └──────────────────┬─────────────────────────┘ │
│ │ │
│ ┌──────────────────▼─────────────────────────┐ │
│ │ Integration Services │ │
│ │ • Pre-built connectors (CRM, databases) │ │
│ │ • REST API calls │ │
│ │ • Webhooks │ │
│ │ • AI/NLU (Dialogflow CX) │ │
│ └────────────────────────────────────────────┘ │
│ │
│ ┌────────────────────────────────────────────┐ │
│ │ Media Services │ │
│ │ • Google Cloud TTS (40+ voices) │ │
│ │ • Speech recognition (Google ASR) │ │
│ │ • Audio file management │ │
│ │ • DTMF collection │ │
│ └────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘
Key Capabilities¶
Visual Development:
✅ Drag-and-drop flow builder
✅ 100+ pre-built nodes
✅ Real-time flow testing
✅ Instant deployment (no downtime)
✅ Version control and rollback
AI/NLU Integration:
✅ Google Dialogflow CX integration
✅ Intent recognition
✅ Entity extraction
✅ Context management
✅ Multi-turn conversations
Omnichannel:
✅ Voice, chat, email, SMS, social
✅ Unified flow design across channels
✅ Channel-specific capabilities
✅ Seamless channel switching
Analytics:
✅ Real-time flow metrics
✅ Path analysis
✅ Error tracking
✅ A/B testing support
✅ Custom dashboards
Target Flow Architecture¶
Flow Inventory (Target State)¶
| Flow Name | Purpose | Channels | Complexity | Priority |
|---|---|---|---|---|
| Main_Entry_Flow | Primary routing with AI | Voice, Chat | High | P0 |
| Sales_Flow | Sales inquiries | Voice, Chat, SMS | Medium | P1 |
| Support_Flow | Technical support | Voice, Chat, Email | High | P0 |
| Billing_Flow | Billing and payments | Voice, Chat | Very High | P0 |
| Account_Balance_Flow | Self-service balance | Voice, Chat, SMS | Medium | P1 |
| Payment_Flow | Secure payment processing | Voice | Very High | P0 |
| Order_Status_Flow | Order tracking | Voice, Chat, SMS | Low | P2 |
| Virtual_Agent_Flow | AI-powered self-service | Voice, Chat | High | P0 |
| After_Hours_Flow | Non-business hours | Voice, Chat | Low | P2 |
Flow 1: Main Entry Flow (Enhanced)¶
Design Philosophy¶
Old Approach (Avaya):
└─ Static menu with 6 options
└─ DTMF only
└─ No personalization
└─ Slow CRM lookup (2-3 seconds)
New Approach (Webex):
└─ AI-powered intent recognition
└─ Natural language + DTMF
└─ Dynamic personalization
└─ Fast API calls (<500ms)
└─ Predictive routing
Enhanced Call Flow¶
[Call Arrives] → Entry Point: Main_TF
│
▼
[Parallel Processing]
├─ Capture ANI/DNIS
├─ Async CRM lookup (non-blocking)
└─ Detect language preference
│
▼
[Smart Greeting]
├─ Known VIP → "Welcome back, [Name]. How can I assist you today?"
├─ Known Customer → "Hi [Name], what can I help with?"
└─ Unknown → "Welcome to [Company]. How can I help you?"
│
▼
[AI Intent Recognition]
"You can say things like:
• Check my order
• Make a payment
• Talk to sales
• Or, tell me what you need"
│
├─ Customer speaks naturally ──► [Dialogflow CX]
│ │
│ [Intent Detected]
│ │
│ ┌────────────────────────────────┼────────────────┐
│ │ │ │
│ ▼ ▼ ▼
│ "Check order" "Make payment" "Talk to sales"
│ │ │ │
│ └─► Order_Status_Flow Payment_Flow Sales_Queue
│
├─ Customer presses DTMF ──► [Traditional Menu]
│ "Press 1 for Sales, 2 for Support, 3 for Billing"
│
└─ No input/Confused ──► [Escalate to Virtual Agent]
"I can help you with:
• Order status
• Make a payment
• Account questions
What would you like to do?"
Flow Designer Visual Representation¶
┌─────────────────────────────────────────────────┐
│ MAIN_ENTRY_FLOW (Canvas View) │
├─────────────────────────────────────────────────┤
│ │
│ [Start] ───► [Set Variables] │
│ ├─ ANI │
│ ├─ DNIS │
│ └─ Timestamp │
│ │ │
│ ▼ │
│ [HTTP Request: CRM Lookup] │
│ (Async, timeout: 1s) │
│ │ │
│ ▼ │
│ [Condition: Customer Found?] │
│ ├─ Yes ──► [Variable: cusName]│
│ └─ No ───► [Variable: cusName=""]
│ │ │
│ ▼ │
│ [Play Message: Greeting] │
│ "Welcome..." │
│ │ │
│ ▼ │
│ [Dialogflow Node] │
│ Agent: main-agent-cx │
│ Timeout: 10s │
│ │ │
│ ┌────────────┼────────────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ [Intent: [Intent: [Intent: │
│ Sales] Support] Billing] │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ [Queue [Queue [Queue │
│ Contact] Contact] Contact] │
│ │
└─────────────────────────────────────────────────┘
Node Configuration Examples¶
HTTP Request Node (CRM Lookup):
{
"nodeType": "httpRequest",
"nodeName": "CRM_Customer_Lookup",
"config": {
"method": "GET",
"url": "https://api.salesforce.com/services/data/v52.0/query",
"headers": {
"Authorization": "Bearer {{global.sf_token}}",
"Content-Type": "application/json"
},
"queryParams": {
"q": "SELECT Id, FirstName, LastName, Account_Tier__c FROM Contact WHERE Phone = '{{flow.ani}}'"
},
"timeout": 1000,
"errorHandling": "continue",
"outputVariable": "customerData"
}
}
Dialogflow CX Node:
{
"nodeType": "dialogflowCX",
"nodeName": "AI_Intent_Recognition",
"config": {
"projectId": "company-contact-center",
"agentId": "main-ivr-agent",
"location": "us-central1",
"languageCode": "en-US",
"inputAudio": "{{call.audioStream}}",
"sessionId": "{{call.sessionId}}",
"timeout": 10000,
"outputs": {
"intent": "{{dialogflow.intent}}",
"confidence": "{{dialogflow.confidence}}",
"parameters": "{{dialogflow.parameters}}"
}
}
}
Queue Contact Node:
{
"nodeType": "queueContact",
"nodeName": "Route_To_Sales",
"config": {
"queueId": "sales_main_queue",
"priority": "{{customerData.Account_Tier__c == 'VIP' ? 'highest' : 'normal'}}",
"cadVariables": {
"customerId": "{{customerData.Id}}",
"customerName": "{{customerData.FirstName}} {{customerData.LastName}}",
"intent": "{{dialogflow.intent}}",
"confidence": "{{dialogflow.confidence}}"
},
"estimatedWaitTime": true,
"callbackEnabled": true,
"callbackThreshold": 120
}
}
Flow 2: Virtual Agent Flow (AI-Powered)¶
Conversational AI Design¶
Dialogflow CX Agent Structure:
Main IVR Agent
├─ Page: Welcome
│ ├─ Intent: check_balance
│ ├─ Intent: make_payment
│ ├─ Intent: order_status
│ ├─ Intent: speak_to_agent
│ └─ Intent: billing_question
│
├─ Page: Balance_Inquiry
│ ├─ Collect: account_number (entity: @account)
│ ├─ Webhook: get_balance
│ └─ Response: "Your balance is ${balance}"
│
├─ Page: Order_Status
│ ├─ Collect: order_number (entity: @order_number)
│ ├─ Webhook: get_order_status
│ └─ Response: "Your order ${order} ${status}"
│
└─ Page: Escalate_To_Agent
└─ Hand off to live queue with context
Intent Examples:
Intent: check_balance
Training Phrases:
- "What's my balance"
- "How much do I owe"
- "Check my account balance"
- "Balance inquiry"
- "Do I have a balance due"
Parameters:
- account_number (optional, extracted if mentioned)
Action:
- If account_number provided: Query immediately
- Else: Ask "What's your account number?"
- Then: Call balance API
- Finally: Speak result
Intent: make_payment
Training Phrases:
- "I want to make a payment"
- "Pay my bill"
- "Process a payment"
- "Pay what I owe"
Parameters:
- payment_amount (optional)
- payment_type (optional: full/partial)
Action:
- Authenticate customer
- Get amount due
- Offer full or partial payment
- Transfer to secure payment flow
Intent: order_status
Training Phrases:
- "Where is my order"
- "Track my package"
- "Order status"
- "When will my order arrive"
Parameters:
- order_number (required)
Action:
- Collect order number if not provided
- Query order system
- Speak status and tracking info
- Offer SMS tracking link
Intent: speak_to_agent
Training Phrases:
- "I want to speak to someone"
- "Representative"
- "Agent"
- "Let me talk to a person"
- "This isn't working"
Parameters: None
Action:
- Acknowledge request
- Ask for category (sales/support/billing)
- Transfer to appropriate queue with context
Conversation Flow Example:
System: "Hi, how can I help you today?"
Customer: "I need to check when my order will arrive"
System: [Intent: order_status detected]
"I can help you track your order.
What's your order number?"
Customer: "ORD-123456"
System: [Entity extracted: order_number = "ORD-123456"]
[Webhook call to order API]
[Response received]
"Your order ORD-123456 was shipped on October 28th
via UPS. The tracking number is 1Z999AA1 and it's
scheduled to arrive by October 31st.
Would you like me to send the tracking link to
your phone via text message?"
Customer: "Yes please"
System: [Intent: confirm_sms]
[Send SMS with tracking link]
"Done! I've sent the tracking link to your phone
ending in 0100.
Is there anything else I can help you with?"
Customer: "No, that's all"
System: "Great! Thanks for calling. Have a wonderful day!"
[End call]
Flow 3: Enhanced Billing and Payment¶
Billing Flow Architecture¶
[Entry from Main Flow]
│
▼
[Billing Menu - AI Enhanced]
"I can help you with:
• Check your balance
• Make a payment
• Explain charges
• Payment arrangements
Or, just tell me what you need"
│
├─ Natural Language ──► [Dialogflow: Billing Agent]
│ │
│ [Intent Routing]
│ │
│ ┌───────────────────────┼───────────────────┐
│ │ │ │
│ ▼ ▼ ▼
│ Balance Payment Billing Agent
│ Inquiry Processing (Live Queue)
│
└─ DTMF Fallback ──► [Traditional Menu]
"Press 1 for balance..."
Self-Service Balance Inquiry (Enhanced)¶
[Start Balance Inquiry]
│
▼
[Authentication - Simplified]
Option 1: ANI match + Last 4 SSN
Option 2: Account number + ZIP code
Option 3: Email + DOB
│
▼
[API Call: Get Balance]
Endpoint: Salesforce Billing API
Response Time: <500ms (vs 800ms Avaya)
│
▼
[Intelligent Response]
├─ No balance due ──► "Great news! Your account has a
│ zero balance. Your next bill will
│ be generated on [date]."
│
├─ Balance current ──► "Your current balance is $150.00
│ due on October 31st."
│ [Offer payment option]
│
├─ Past due ─────────► "Your account has a past due balance
│ of $150.00. To avoid service
│ interruption, please make a payment
│ today. Press 1 to pay now or press 2
│ to discuss payment arrangements."
│
└─ Credit balance ───► "You have a credit of $25.00 on your
account. This will be applied to your
next bill."
Secure Payment Processing (PCI-Enhanced)¶
[Payment Flow Start]
│
▼
[Customer Authentication]
Multi-factor options (faster than Avaya)
│
▼
[Get Amount Due]
API call to billing system
│
▼
[Payment Amount Selection]
"Your balance is $150.00.
Say 'full amount' to pay $150
or say 'other amount' to pay a different amount
or press 1 for full, 2 for other"
│
├─ Full amount ──► Set amount = $150.00
├─ Other amount ─► [Collect Custom Amount]
│ "How much would you like to pay?"
│ [Speech: dollars and cents recognition]
│
▼
[Payment Method Selection]
"How would you like to pay?
• Credit or debit card
• Bank account
• Saved payment method"
│
├─ Saved method ──► [List saved methods]
│ "Card ending in 1234"
│ "Bank ending in 5678"
│ "Which one?"
│
└─ New method ────► [Secure Payment Collection]
│
▼
[PCI-Compliant Node]
┌────────────────────────┐
│ • DTMF masking enabled │
│ • Recording paused │
│ • Tokenization active │
│ • Secure MPP │
└────────────────────────┘
│
▼
[Collect Card Number]
"Enter your 16-digit card number"
│
▼
[Collect Expiration]
"Enter expiration as MM YY"
│
▼
[Collect CVV]
"Enter the 3 or 4 digit security code"
│
▼
[Payment Gateway API]
POST /tokenize-and-charge
{
"amount": 15000,
"card_token": "[SECURE_TOKEN]",
"customer_id": "[ID]"
}
│
┌────────┴────────┐
│ │
▼ ▼
[Success] [Declined]
│ │
▼ ▼
[Confirmation] [Decline Handling]
"Payment of "Your payment was
$150 processed declined.
Confirmation: Reason: [reason]
CONF123456
Press 1 to try
Receipt sent another card
to your email" Press 0 for billing
specialist"
│
▼
[Offer Receipt Options]
"Press 1 for SMS receipt
Press 2 for email
Press 3 to end call"
│
▼
[Send Receipt]
├─ SMS: Link to receipt
├─ Email: PDF attached
└─ Both: If requested
│
▼
[Post-Payment Options]
"Would you like to:
• Save this card for future (Press 1)
• Set up auto-pay (Press 2)
• Return to main menu (Press 3)
• End call (Press 0)"
PCI Compliance in Webex Connect:
PCI-DSS Controls:
├─ Webex Connect is PCI Level 1 certified
├─ Secure payment nodes (pre-certified)
├─ Automatic DTMF masking
├─ Encrypted data transmission
├─ Tokenization via payment gateway
├─ No storage of card data
├─ Audit logs for all transactions
└─ Annual compliance validation
Implementation:
[Use Secure Input Node]
├─ Type: payment_card
├─ Masking: automatic
├─ Recording: auto-pause
├─ Tokenization: gateway
└─ PCI scope: reduced
Flow 4: Omnichannel Self-Service¶
Unified Flow Across Channels¶
Same Flow, Multiple Channels:
├─ Voice: Text-to-Speech prompts
├─ Chat: Text-based interaction
├─ SMS: Shortcode commands
└─ Email: Structured responses
Example: Order Status Flow (Omnichannel)
Voice Channel:
System (TTS): "What's your order number?"
Customer (Speech): "ORD-123456"
System: [Webhook to order API]
System (TTS): "Your order was shipped on October 28th..."
Chat Channel:
Bot: What's your order number?
Customer: ORD-123456
Bot: [Webhook to order API]
Bot: Your order ORD-123456 was shipped on Oct 28th via UPS
Tracking: 1Z999AA1
Expected delivery: Oct 31st
[Track Package] [Get SMS Updates] [Main Menu]
SMS Channel:
Customer: ORDER ORD-123456
System: [Webhook to order API]
System: Order ORD-123456:
Status: Shipped (Oct 28)
Carrier: UPS
Track: 1Z999AA1
ETA: Oct 31
Track: bit.ly/track123
Channel-Specific Optimizations¶
Voice:
├─ Concise prompts (< 15 seconds)
├─ Natural language understanding
├─ Barge-in enabled
└─ Escalation to agent easy
Chat:
├─ Rich media (images, buttons)
├─ Quick reply options
├─ Persistent conversation history
└─ Proactive suggestions
SMS:
├─ Ultra-concise (160 char focus)
├─ Shortcode commands
├─ Link-based actions
└─ Automatic threading
Email:
├─ Detailed responses
├─ Attachments supported
├─ HTML formatting
└─ Template-based responses
Advanced Features¶
1. Predictive Routing¶
AI-Enhanced Routing:
├─ Customer history analysis
├─ Intent prediction
├─ Sentiment detection
├─ Best agent matching
Implementation:
[Dialogflow Sentiment Analysis]
│
├─ Positive sentiment ──► Standard routing
├─ Neutral sentiment ───► Standard routing
└─ Negative sentiment ──► Priority queue
Escalate to senior agent
Supervisor notification
2. Proactive Outreach¶
Outbound IVR Campaigns:
├─ Payment reminders
├─ Appointment confirmations
├─ Service notifications
└─ Survey requests
Flow Design:
[Trigger: Scheduled or Event]
│
▼
[Dial Customer]
│
├─ Answer ──► [Play Message]
│ [Collect Response]
│ [Process Action]
│
├─ No Answer ──► [Leave Voicemail]
│ [Schedule Retry]
│
└─ Busy ───────► [Schedule Retry]
3. A/B Testing¶
Test Scenarios:
├─ Menu wording variations
├─ Different voice/persona
├─ Prompt length optimization
└─ Self-service vs agent routing
Implementation:
[Entry Point]
│
▼
[Randomizer Node]
│
├─ 50% ──► Flow Variant A (Current)
└─ 50% ──► Flow Variant B (New)
│
▼
[Analytics Tracking]
├─ Completion rate
├─ Average duration
├─ Customer satisfaction
└─ Self-service success
After 1000 calls each:
└─ Winner deployed to 100%
4. Real-Time Personalization¶
Dynamic Flow Adaptation:
├─ Customer tier (VIP fast-track)
├─ Call history (skip known info)
├─ Time of day (different greetings)
├─ Previous interactions (context aware)
└─ Predictive needs (proactive offer)
Example:
Known VIP calling during past-due period:
├─ Skip main menu
├─ Direct to VIP billing specialist
├─ Context: "I see you may have questions about
│ your recent invoice. Let me connect you with
│ a specialist who can help."
└─ Agent receives: Full account context, payment history
Analytics and Optimization¶
Real-Time Flow Analytics¶
Dashboard Metrics:
├─ Active flows (current count)
├─ Flow completion rate
├─ Average flow duration
├─ Error rate by node
├─ Path analysis (most common routes)
├─ Containment rate (self-service success)
├─ Escalation points (where customers give up)
└─ A/B test results
Alerts:
├─ Error rate > 5% → Alert dev team
├─ Completion rate < 60% → Review flow
├─ API timeout > 2s → Check integration
└─ Containment drop > 10% → Investigate
Flow Optimization Insights¶
Webex Connect provides:
├─ Heat map (which nodes most used)
├─ Drop-off analysis (where customers abandon)
├─ Average time per node
├─ Error frequency per node
└─ Conversion funnel visualization
Use for:
├─ Identify bottlenecks
├─ Optimize prompts
├─ Improve error handling
├─ Streamline flows
└─ Increase self-service success
Migration Improvements Summary¶
Capability Enhancements¶
| Feature | Avaya (Current) | Webex Connect (Target) | Improvement |
|---|---|---|---|
| Development Time | 2-3 weeks per change | Hours to same day | 10-20x faster |
| AI/NLU | Limited ASR, no NLU | Dialogflow CX integrated | Advanced AI |
| Deployment | Manual, requires downtime | Instant, zero downtime | 100% uptime |
| Testing | Production-like env needed | Built-in sandbox | Easier testing |
| Analytics | Batch reports (24hr delay) | Real-time dashboards | Real-time insights |
| Omnichannel | Voice only | Voice + digital | Multi-channel |
| Personalization | Limited | Dynamic, AI-powered | Highly personalized |
| Integration | Custom SOAP | Pre-built connectors + REST | Faster, easier |
| Scalability | Fixed capacity | Auto-scaling cloud | Unlimited scale |
| Cost Model | Per-port licensing | Consumption-based | More flexible |
Performance Targets¶
| Metric | Current (Avaya) | Target (Webex) | Improvement |
|---|---|---|---|
| IVR Containment Rate | 35% | 50% | +43% |
| Average IVR Duration | 2min 15sec | 1min 45sec | -22% |
| IVR Abandonment | 18% | <10% | -44% |
| Self-Service Success | 68% | 80% | +18% |
| API Response Time | 2.3 seconds | <500ms | -78% |
| Development Cycle | 2-3 weeks | 1-2 days | -90% |
| Customer Satisfaction | 3.⅖ | 4.⅖ | +31% |
Best Practices for Webex Connect¶
Flow Design Principles¶
✅ Do:
├─ Keep flows simple and focused
├─ Use descriptive node names
├─ Add comments for complex logic
├─ Implement comprehensive error handling
├─ Test thoroughly before deployment
├─ Use variables for reusable values
├─ Version control your flows
└─ Monitor analytics continuously
❌ Don't:
├─ Create overly complex flows
├─ Hardcode values (use variables)
├─ Skip error handling
├─ Deploy without testing
├─ Ignore analytics insights
├─ Forget to document changes
└─ Make changes during peak hours
Prompt Design Guidelines¶
Effective Prompts:
✅ Concise (< 15 seconds)
✅ Clear and specific
✅ Actionable (tell user what to do)
✅ Natural language
✅ Appropriate tone
Poor Prompts:
❌ Too long (> 30 seconds)
❌ Ambiguous or confusing
❌ Technical jargon
❌ Robotic or unnatural
❌ Wrong tone for context
Error Handling Strategy¶
Implement Multiple Levels:
├─ Graceful degradation
│ └─ If API fails, continue with reduced functionality
│
├─ Clear error messages
│ └─ "We're having trouble accessing that information..."
│
├─ Alternative paths
│ └─ Offer agent transfer if self-service fails
│
├─ Automatic retries
│ └─ Retry failed API calls (with exponential backoff)
│
└─ Escalation
└─ After 3 failures, route to agent with context
Implementation Roadmap¶
Phase 1: Foundation (Weeks 1-2)¶
Setup Activities:
☐ Provision Webex Connect tenant
☐ Configure authentication and SSO
☐ Set up development environment
☐ Create naming conventions
☐ Establish version control
☐ Configure integrations (APIs, Dialogflow)
☐ Upload audio prompts
☐ Create template flows
Phase 2: Core Flows (Weeks 3-6)¶
Build Priority:
1. Main Entry Flow (with AI)
2. Sales Flow
3. Support Flow
4. Account Balance Flow
5. Order Status Flow
For each flow:
☐ Design in Flow Designer
☐ Implement nodes and logic
☐ Configure integrations
☐ Test in sandbox
☐ User acceptance testing
☐ Deploy to production
☐ Monitor and optimize
Phase 3: Advanced Flows (Weeks 7-8)¶
Complex Implementations:
1. Billing Flow (with payment)
2. Virtual Agent (AI-powered)
3. Omnichannel flows
4. Proactive outreach
Special considerations:
☐ PCI compliance validation (payment)
☐ AI training and tuning (virtual agent)
☐ Cross-channel testing (omnichannel)
☐ Campaign setup (proactive)