Introduction
This document describes how to troubleshoot a Cisco Customer Voice Portal (CVP) Voice XML (VXML) Server Application badfetch error due to Rest Element Fetch Timeout.
Prerequisites
- Cisco Unified Contact Center Enterprise (UCCE) 11.6
- Customer Voice Portal (CVP) 11.6(1) and 12.0(1)
- Virtualized Voice Browser (VVB) 11.6(1) and 12.0(1)
Requirements
Cisco recommends that you have knowledge of these topics:
Components Used
The information in this document is based on these software and hardware versions:
- CVP 11.6(1) and 12.0(1)
- Virtualized Voice Browser (VVB) 11.6(1) and 12.0(1)
- CVP Call Studio 11.6(1) and 12.0(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. If your network is live, ensure that you understand the potential impact of any command.
Problem
VXML Applications that involve Representational State Transfer (REST) Element sometimes disconnect abruptly and VoiceXML (VXML) Gateway/VVB gives a Bad Fetch error. This is because the REST Element takes more than 10 seconds to respond and there after results in Fetch Timeout.
From CVP VXML Application Log :
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:45.401,Application_Modifier_01,enter,
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:45.401,Application_Modifier_01,exit,done
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:45.417,Rest_Client_01,enter,
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:57.137,Rest_Client_01,exit,Generic
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:57.137,CVP Subdialog Return_01,enter,
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:57.153,CVP Subdialog Return_01,exit,
a.b.c.d.1567542225370.12.v12Main,09/03/2019 15:23:57.153,,end,how,app_session_complete
VVB waited for 10 seconds but the REST Element took 12 seconds to respond so it resulted in Bad Fetch error.
From VVB Engine Log:
%MIVR-SS_VB-7-UNK:[CALLID=FB45C15FCA7811E98F01AA9243D6B848-156718205725753105] VBEventHandler::handleEvent event: error.badfetch: request (http://a.b.c.d:7000/CVP/Server) was timed out, after 10000 milliseconds.
Solution
- Identify why the REST element takes longer to respond in some instances.
or,
- Increase the fetch timeout as a workaround. Steps to achieve this are :
Note: Complete this task while in maintenance window. Also additionally try it in a lab setup before change is commited in production.
1. In Unified Call Studio, right click on the desired project and choose Properties.
2. Click on Call Studio -Root Doc Settings.
3. UnderVoiceXML Propertyenter fetchtimeout, and underValueenter the desired timeout. For example for 60 seconds enter "60s".
4. Deploy the application once again and copy it to the VXML Server.
5. Goto path and click on updateApp.bat.
C:\Cisco\CVP\VXMLServer\applications\<applicationname>\admin