This document describes a problem encountered in Cisco Voice Portal (CVP) comprehensive call flow where a 500 internal server error is received, and a solution to the problem is given.
Cisco recommends that you have knowledge of these topics:
- CVP Version 8.5
- Intelligent Contact Manager (ICM)
This document is not restricted to specific software and hardware versions.
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, make sure that you understand the potential impact of any command.
In a CVP comprehensive call flow, a call is received on CVP, CVP sends a Session Initiation Protocol (SIP) INVITE to a third-party User Agent (UA), and the third-party UA rejects the INVITE with a 500 internal server error message. This problem only happens with CVP Version 8.5 and later. The caller hears a prompt message, then silence, and the call is disconnected.
Here is an example of the call flow:
- The caller places a call from the Public Switched Telephone Network (PSTN).
- The Ingress Gateway (IGW) receives the call from the PSTN.
- The IGW sends an SIP INVITE message to CVP via an SIP proxy server.
- CVP sends a New Call request to the ICM.
- The ICM executes the routing script and sends a Voice Response Unit (VRU) label to CVP.
- CVP sends an SIP INVITE message via SIP proxy server to the Voice XML Gateway (VXML GW).
- The VXML GW executes the bootstrap script and sends an HTTP request to CVP.
- CVP sends a Request Instruction to the ICM.
- The ICM cancels the VRU leg and sends an agent label to CVP.
- CVP terminates the VRU leg with the VXML GW.
- CVP sends an SIP INVITE via SIP proxy server to the third-party SIP UA.
- The third-party SIP UA sends the 500 Internal server error message to CVP.
You must collect a packet capture, which is collected from the CVP server via the CLI. Enter the capture start command. In order to stop the capture, enter the capture stop command.
From the packet capture logs, or from the CVP call server logs, the INVITE without a Session Description Protocol (SDP) is seen when CVP sends the INVITE to the third-party SIP UA. Although this is supported by the SIP RFC 3261, the third party UA does not accept the SIP INVITE. If CVP Version 8.0 is used in this call flow, the INVITE is sent with SDP, and the third-party UA accepts the INVITE.
CVP Version 8.5.1 introduced an new property flag (SIP.EarlyOfferSupport ) in the sip.properties file.
By default, the SIP.EarlyOfferSupport has a value of false in the sip.properties file. The file is located at Drive: > Cisco > CVP > conf. If this property value is set to true, CVP uses Early Offer on an outbound call only if the initial caller used Early Offer.
If you set this property value to true and restart the call server, this SIP interoperability issue is resolved; after you set the property value to true, CVP sends an SIP INVITE with SDP to the third-party UA, and the third-party UA accepts it.