Introduction
本文描述如何排除呼叫丢包故障,当呼叫人是在Customer Voice Portal (CVP)时礼貌回拨配置的队列。
Prerequisites
Requirements
Cisco 建议您了解以下主题:
- CVP呼叫服务器
- CVP语音扩展标记语言(VXML)服务器
- CVP呼叫工作室应用程序
- VXML网关
Components Used
本文档中的信息基于以下软件版本:
- CVP 10.5(1)
- CVP呼叫工作室10.5(1)
The information in this document was created from the devices in a specific lab environment.All of the devices used in this document started with a cleared (default) configuration.如果您的网络实际,请保证您了解所有命令的潜在影响。
在CVP礼貌回拨配置,在原始呼叫人告诉后,并且,当呼叫人在队列等待代理程序呼叫丢包时。
Troubleshoot
步骤1.从在CVP VXML服务器的CallbackWait和CallbackQueue应用程序收集ActivityLogs。您能找到这些注册目录:
C:\Cisco\CVP\VXMLServer\applications\CallBackWait\logs\ActivityLog\and C:\Cisco\CVP\VXMLServer\applications\CallBackQueue\logs\ActivityLog\。
步骤2.查找在CallbackQueue ActivityLogs的坏呼叫。您能搜索查找的错误或的warnig坏呼叫请求特定时间戳。
片断CallbackQueue ActivityLogs :
10.85.137.68.1469202885038.5788.CallbackQueue_custom,07/22/2016 11:59:24.656,Queue1,element,warning,A session has timed out after 3 minutes. This is most likely caused by a start of call class or action element at the top of the callflow not completing before the voice browser's fetch timeout occurred. To resolve it ensure this class executes in a timely manner or run it in the background. Session timeouts may also occur under high load or if there are issues with a load balancer or voice browser.
10.85.137.68.1469202885038.5788.CallbackQueue_custom,07/22/2016 11:59:24.656,Queue1,custom,Callback_Leave_Queue,ELEMENT_ENTRY
10.85.137.68.1469202885038.5788.CallbackQueue_custom,07/22/2016 11:59:24.656,Queue1,custom,Callback_Leave_Queue,ELEMENT_EXIT
10.85.137.68.1469202885038.5788.CallbackQueue_custom,07/22/2016 11:59:24.656,,end,how,app_session_complete
10.85.137.68.1469202885038.5788.CallbackQueue_custom,07/22/2016 11:59:24.656,,end,result,timeout
第3.步。正如你在ActivityLogs看到,找到警告消息,表明会话有超时。这在VXML网关日志报告作为badfetch错误。
步骤4.从VXML服务器收集Tomcat日志。您能找到Tomcat登陆目录C:\Cisco\CVP\VXMLServer\Tomcat\logs
java.lang.NullPointerException
at org.apache.coyote.http11.InternalNioOutputBuffer.flushBuffer(InternalNioOutputBuffer.java:240)
at org.apache.coyote.http11.InternalNioOutputBuffer.endRequest(InternalNioOutputBuffer.java:128)
at org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:1586)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1022)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1600)
您在Tomcat服务器日志看到,有空指针例外在NIO (无阻塞输入-输出)。
Note:NIO是用于密集输入-输出(I/O)操作的JAVA Application Programming Interface (API)的一收藏。
第5.步。检查CVP VXML服务器和CVP VXML网关之间的网络连通性。在多种情况下,当此Tomcat错误报告时VXML网关和CVP VXML服务器用不同的子网。
Step 1. 保证fetchtimeout被配置对最小数量60秒。如果未配置fetchtimeout,请遵从这些步骤。
- 添加VoiceXML属性fetchtimeout到根文件。
- 在汇总呼叫工作室,请用鼠标右键单击在期望项目并且选择属性。
- 选择在呼叫工作室-根源文档设置。
- 在VoiceXML属性下请输入fetchtimeout和在值下输入期望超时。例如对于60秒请输入60s
步骤2.修改Tomcat server.xml文件包括"错误”的useSendfile=。 您在C:\Cisco\CVP\VXMLServer\Tomcat\conf\目录里能找到此文件。
例如:
<Connector port="7000" useSendfile="false" redirectPort="7443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxHttpHeaderSize="8192" executor="tomcatThreadPool" acceptCount="1500"/>
<!-- A "Connector" using the shared thread pool-->
<!-- <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> -->
<!-- Define a SSL HTTP/1.1 Connector on port 8443 This connector uses the JSSE configuration, when using APR, the connector should be using the OpenSSL style configuration described in the APR documentation -->
Note:这是Tomcat问题和没归因于CVP产品。欲了解更详细的信息参考CSCus07896。
第3.步。寻址信息包延迟,当使用不同的子网,有推荐更换Windows注册表键, TcpAckFrequency到1。
Note:此推荐是解决网络问题(若有)使用另外子网的CVP解决方案的。欲了解更详细的信息参考CSCuq07550。