Taccol 2008
Taccol 2008
Intelligence (CCAI)
Contact Center Enterprise
Jose Adolio
Senior Technical Consulting Engineer
TACCOL-2008
#CiscoLive
CCAI: Contact Center Artificial Intelligence
VVB: Virtual Voice Browser
VRU: Interactive Voice Response
ICM: Intelligent Contact Management
SS: SpeechServer
NLSML: Natural Language Semantics Markup
Acronyms Language
VAV: Virtual Agent Voice
NLP: Natural Language Processing
ML: Machine Learning
CVP: Customer Voice Portal
VXML: Voice Extensible Markup Language
TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 3
• Traditional Contact Center Call
• What is Contact Center Artificial
Intelligence (CCAI)
• Cisco CCAI Virtual Agent Voice (VAV)
TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Traditional
Contact Center
Call
Traditional Contact Center Call
1) Switch Leg
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
Traditional Contact Center Call
2) VRU Leg
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 7
Traditional Contact Center Call
3) Agent Leg
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
Interactive Voice Response (VRU) Leg
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 9
Traditional Contact Center Call
1) Switch Leg
2) VRU Leg
3) Agent Leg
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 10
Interactive Voice Response (VRU) Leg
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
What is Contact
Center Artificial
Intelligence
(CCAI)
What is Contact Center Artificial Intelligence (CCAI)
• CCAI is a platform that uses conversational AI that can simulate human conversation.
• Cisco CCAI uses Google Dialogflow integration to accomplish Virtual Agent Voice
implementation.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
Cisco CCAI
Virtual Agent
Voice (VAV)
Cisco CCAI Virtual Agent Voice (VAV)
• Cisco CCAI Virtual Agent Voice (VAV) enables the IVR platform to integrate your on-prem
components with cloud-based speech services.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
Cisco CCAI Virtual Agent Voice Components
2. VVB / SpeechServer
4
3. Cloud Connect
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
Cisco CCAI VAV
Message Flow
Cisco CCAI Virtual Agent Voice Message Flow
There are three key events that happens during the implementation and usage of Cisco
Virtual Agent Voice.
• Token Request
• Welcome Prompt
• Dialog
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
Token Request
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
Welcome Prompt
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 20
Dialog
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
Cisco Virtual Agent Voice Message Flow
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
Token Request
Token Request - SpeechServer
SpeechServer token request to CloudConnect
154: May 07, 09:06:05.644 -0400 %SpeechServer-INFO: Fetching Default Cloud Connect Management
Config....
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
Token Request - SpeechServer User Authentication
CloudConnect logs show the token request and user authentication provided By SpeechServer
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
Welcome
Prompt
VAV Application - VVB Rendering
VVB Initiated Execution of VXML application with VAV call Studio Element and start using Speech Server for
Text to Speech processing
%MIVR-SS_VB-7-UNK:[CALLID=01938B80000100000000001A038512C6-171442335648121607] Fetch:
http://198.18.133.13:7000/CVP/en-
us/../Server?callid=01938B80000100000000001A038512C6&_ani=%2B15125650756&application=VAV1&
_dnis=6021
%MIVR-SS_VB-7-UNK:[CALLID=01938B80000100000000001A038512C6-171442335648121607] Fetch:
http://198.18.133.13:7000/CVP/Server?audium_root=true&calling_into=VAV1&session_id=198.18.133.13.
1714423356528.32652.VAV1
%MIVR-SS_VB-7-UNK:[CALLID=01938B80000100000000001A038512C6-171442335648121607] Using
Speech Server for Text to Speech processing
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
VVB Request SpeechServer To Create Client
Session
• [CALLID=9E6FF8800001000000000076038512C6-16946152297054680]
DialogServicesAdapterImpl :: Switched to Orch mode
• [CALLID=9E6FF8800001000000000076038512C6-16946152297054680] Creating
Channel for UH
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 28
SpeechServer Creates A Client Session And
Initiates The Request To Cloud Services Universal
Harness.
%SpeechServer-DEBUG: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]:Received request from VVB, Input mode= dtmf voice, Barge-In=
false, Fragment size=1020Bytes.
%SpeechServer-DEBUG: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]: createClient...
%SpeechServer-DEBUG: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]:Initiating request towards UH
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 29
SpeechServer Initiates Session Configuration
%SpeechServer-DEBUG: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]:initializing with config: com.cisco.language=en-US,
com.cisco.codec=ULAW, [email protected],
com.cisco.projectId=, com.cisco.secureLogging=false,
com.cisco.sessionId=9E6FF8800001000000000076038512C6-16946152297054680,
com.cisco.initialAudio=Hello, com.cisco.grammarString=nlp@dialogflow,
com.cisco.outputAudioSupport=true, confidence.level=0.4, inputmodes=dtmf voice
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 30
VAV Welcome Prompt
Event call welcome prompt is sent to CCAI DialogFlow Virtual Agent Voice via Orchestrator and
Connector
%SpeechServer-INFO: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:Fetching Welcome Prompt
orgId: "ab299abf-2b3f-47b1-9b7b-5a592f63510b"
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 31
Google Sends Response Via Google Connector
And Cisco CCAI Cloud Services.
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:Response from Server: inferInsightResponse {
virtualAgentResult {
prompts {
text: "Welcome to Cisco System Travel Agency. How can we help you?“
audio_content: "RIFF\233\250\000\000WAVEfmt
\022\000\000\000\a\000\001\000@\037....
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
SpeechServer Sends Response To VoiceBrowser
And VoiceBrowser To VXML Server.
154: Sep 13, 10:27:11.608 -0400 %SpeechServer-INFO:
[CALLID=9E6FF8800001000000000076038512C6-16946152297054680]:Fulfillment Response
received for Welcome Prompt.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 33
NLSML Response - VVB
Speech Server sends the CCAI Dialogflow Virtual Agent Voice response to the VVB
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:transformResponse:Creating NLSML output format..
%SpeechServer-INFO: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:NLSML response generated.
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:transformResponse:NLSML Output is <?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
"virtualAgentResult": { "nlu": { "replyText": [ "Welcome to Cisco System Travel Agency . How
can we help you?
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 34
NLSML Response - Play Prompt
VVB Plays the response from the SpeechServer to the caller
%MIVR-SS_VB-7-UNK:[CALLID=01938B80000100000000001A038512C6-171442335648121607]
processResponseResult NLSML Received
%MIVR-SS_VB-7-UNK:[CALLID=01938B80000100000000001A038512C6-171442335648121607]
AudioTraverser:handleMixedAudio Created normal prompt
%MIVR-SS_VB-7-UNK:[CALLID=01938B80000100000000001A038512C6-171442335648121607]
Play: Stream[java.io.ByteArrayInputStream@180f2e0]
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
VoiceBrowser Requests SpeechServer To Create
A Client Session.
312930: Sep 13 10:27:11.625 EDT %MIVR-SS_VB-7-
UNK:[CALLID=9E6FF8800001000000000076038512C6-16946152297054680] playAndRecognize
Listen:
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 36
Dialog
SpeechServer - Create Client Connection
VoiceBrower request SpeechServer to create a client session and initiates the request to Cloud
Services Universal Harness.
%SpeechServer-INFO: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:Received request from VVB, Input mode= voice, Barge-In= true,
Fragment size=1020Bytes.
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]: createClient...
%SpeechServer-INFO: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:Initiating request towards UH
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 38
SpeechServer Initiates Session Configuration
%SpeechServer-DEBUG: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]:initializing with config: com.cisco.language=en-US,
com.cisco.codec=ULAW, [email protected],
com.cisco.projectId=, com.cisco.secureLogging=false,
com.cisco.sessionId=9E6FF8800001000000000076038512C6-16946152297054680,
com.cisco.initialAudio=, com.cisco.grammarString=nlp@dialogflow,
com.cisco.outputAudioSupport=true, confidence.level=0.4, inputmodes=voice
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 39
SpeechServer – Transcript Received
Transcript received from CCAI Virtual Agent Voice of what understood the caller said
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:OrchestratorStreamingImpl:buildInsightRequestConfig:clientId: "9d24df38-
d762-495c-aae2-21cda94690a1“
orgId: "ab299abf-2b3f-47b1-9b7b-5a592f63510b“
conversationId: "01938B80000100000000001A038512C6“
role: CALLER…
requestType: VIRTUAL_AGENT
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 40
SpeechServer – Transcript Received (Cont.)
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:Response from Server: inferInsightResponse {
recognition_result {
alternatives {
transcript: "I would like to book a flight"
}
…
message_type: "END_OF_SINGLE_UTTERANCE"
response_event: EVENT_END_OF_INPUT
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 41
SpeechServer - NLSML Response
Speech Server sends the CCAI Dialogflow Virtual Agent Voice response to the VVB
%SpeechServer-INFO: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]:NLSML response generated.
%SpeechServer-DEBUG: [CALLID=9E6FF8800001000000000076038512C6-
16946152297054680]:transformResponse:NLSML Output is <?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
<input mode="speech">{
"virtualAgentResult": {
"nlu": {
"replyText": [ "Sure, I can help you booking you flight ticket right away.“ ]
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
SpeechServer Sends Response To VoiceBrowser
And VoiceBrowser To VXML Server
%SpeechServer-INFO: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:Fulfillment Response received from the server
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:OrchestratorResponseHandler:onNext
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:transformResponse:Creating NLSML output format..
%SpeechServer-DEBUG: [CALLID=01938B80000100000000001A038512C6-
171442335648121607]:OrchestratorResponseHandler:onCompleted
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 43
VoiceBrowser Plays The Prompt
%MIVR-SS_VB-7-UNK:[CALLID=9E6FF8800001000000000076038512C6-
16946152297054680] processResponseResult NLSML Received
%MIVR-SS_VB-7-UNK:[CALLID=9E6FF8800001000000000076038512C6-
16946152297054680] playAndRecognize done.
%MIVR-SS_VB-7-UNK:[CALLID=9E6FF8800001000000000076038512C6-
16946152297054680] AudioTraverser:handleMixedAudio Created normal prompt
%MIVR-SS_VB-7-UNK:[CALLID=9E6FF8800001000000000076038512C6-
16946152297054680] Play: Stream[java.io.ByteArrayInputStream@120b96e]
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
Logs to Collect
Cisco Virtual Voice Browser SpeechServer
1. On the Cisco VVB Serviceability page, select Trace -> Configuration.
2. On the trace configuration page, select the Speech Server Service and click Go
3. Make sure to check the boxes Debugging to XDebugging3 and click Save
Note: Increasing the Speech Server traces should be done with caution during production hours.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 46
Logs To Collect
• Cloud Connect
C:\Cisco\CVP\VXMLServer\Applications\<APP Name>\Logs\ActivityLog
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 47
Common
Troubleshooting
Scenarios
Problem
When the customer calls, they listen to error message will be played to the
caller(error.wav)
Cause
SpeechSever Service Is Down While VVB/Engine Service Is Up or Token
Request failed.
Google’s
VXML Server VVB (Engine) Speech Server
DF/ASR/TTS
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 49
Logs
MIVR Logs
%MIVR-SS_VB-7-UNK:[CALLID=10Zju] GRPCClient::setErrorOccured::Error Occured In
GRPC
%MIVR-SS_VB-7-UNK:[CALLID=10Zju] WFStreamingGatewayDialogServicesAdapterImpl:
No response recieved from DF
%MIVR-SS_VB-7-UNK:[CALLID=10Zju] WFStreamingGatewayDialogServicesAdapterImpl:
End of getInitialAudio
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 50
Solution
Make sure SpeechServer service is running and follow token
request troubleshooting.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 51
Problem
Customer call fails and CVP Call Studio Application throws the following
error:
Configuration error Failed to get/set Token with Cloudconnect PublisherIP
Cause
Certificate exchange was not done properly.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 52
Logs
MIVR Logs
SpeechServer Logs
Solution
1) Customer using Self-Signed certificates, CloudConnect and VVB Tomcat need to be exchanged.
2) Customer using CA Signed certificates, Root, Intermediate needs to be the same between
CloudConnect and VVB.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 53
Problem
When the customer calls, they listen to error message will be played to the
caller(error.wav)
Cause
Communication Issue With DialogFlow
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 54
Logs
dialogflow.googleapis.com][message_string=Recognition Service
:sessionId=<101921NTMxYWEzNjI0MDY4NjBiOTM0ZjY1ZGYxZTA3NDkzNTE>,projectId=<cisc
oss-dev-9gkv>::Error from DF]: Server has caught an exception
%CCBU_12_5_SpeechServer-3-EXCEPTION_INFO:
%[][build_type=rel][exception=com.google.api.gax.rpc.UnavailableException:
io.grpc.StatusRuntimeException: UNAVAILABLE: Unable to resolve host
dialogflow.googleapis.com
Caused by: java.net.UnknownHostException: none: Name or service not known
Solution
1) Verify network connectivity from VVB to Cloud Services. Refer to CCE Features Guide for
the Prerequisites
2) Check DNS resolution.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 55
Problem
Customer calls but VAV results come back empty.
Cause
VAV is unable recognition what the customer is trying to do.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 56
Logs
%CCBU_12_5_SpeechServer-7-SS_DEBUG: {Thrd=Thread-482410}
Recognition Service :sessionId=<53A9C3FED74E11EEAC3891417314901A-
170933059176661872>,projectId=<nttd-bpo-evl-tpa-cva-prd-
1022>::transformStreamingASRResponse:NLSML Output is <?xml
version="1.0" encoding="UTF-8" standalone="yes"?>
<input mode="speech">{"transcript":"","language_code":"en-
us","full_json":"
Solution
To help the Virtual Agent recognize the user utterance, configure phrase hints in the VAV
element of the CVP Call Studio Application
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 57
Problem
Customer calls but VAV is unable to recognize their messages.
Cause
VAV failed to recognition due to no audio received.
Logs
%SpeechServer-DEBUG: [CALLID=DD7DC564DCF511EE8BCEDEB6C57B850F-
170994854076115536]:Response from Server: inferInsightResponse {
virtualAgentResult {
TAC Tip
prompts {
Use the command “utils network capture” to
text: "Sorry I didn\'t get that." get a PCAP from VVB and troubleshoot the RTP
packets between CUBE, VVB/SpeechServer
and Google DialogFlow
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 58
Conclusion
1. Always check status of SpeechServer Service TAC Tip
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 60
• Artificial intelligence (AI) is one of the most exciting technological
innovations of the modern age.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 61
Complete Your Session Evaluations
Earn 100 points per survey completed and compete on the Cisco Live
Challenge leaderboard.
#CiscoLive TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 62
• Visit the Cisco Showcase
for related demos
TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 63
Walk-In Labs
TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 64
LABCCT-2002 Contact Center VPN-less Agent
Desktop – Finesse
TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 66
Breakouts and BRKCCT-2027 Contact Center Enterprise (CCE)
Labs Digital Channels Integration Powered by Webex
Connect
TACCOL-2008 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 67
Thank you
#CiscoLive
Q&A