CVP 4.0(2) bootstrap.vxml

Answered Question

Hi,

I have a working CVP 3.1 system that I'm migrating to CVP 4.0(2).

I upgraded my 2811 GW/GK to IOS 12.4(6)T and applied the config that was OK in CVP 3.1. I uploaded new .tcl and .vxml files from the distribution and reloaded the router so they are active with new code.

The switch leg worked fine. If I changed my ICM script to return a label on the CVP routing client for one of my phones, the phone rang.

If I inserted a "Send to VRU" node it dropped the call, and I could see from the gateway trace (debug on application vxml error) that it was trying to call my Call Server with undefined://undefined:undefined/cvp/VBservlet.

I managed to get it working by hacking the bootstrap.vxml to define the things that should have been filled in the above URL:

PROTOCOL

HOST

PORT

making the script look a bit like the bootstrap.vxml on CVP 3.1. Here are my edits:

<!--<var name="PROTOCOL" expr="getValue('PROTOCOL')"/> -->

<var name="PROTOCOL" expr="'http'"/>

<!--<var name="PORT" expr="getValue('PORT')"/> -->

<var name="PORT" expr="'8000'"/>

<!--<var name="PRIMARY" expr="getValue('HOST')"/> -->

<var name="PRIMARY" expr="'isn-vxml'"/>

<!--<var name="CALL_DNIS" expr="getValue('DNIS')"/> -->

<var name="CALL_DNIS" expr="session.telephone.dnis"/>

isn-vxml is defined through the ip host table.

I had to define the DNIS a different way as above - I could see the error in the CallServer that DNIS was a mandatory argument.

My question is this.

I assume that the CallServer is supposed to be passing the values like PORT, PROTOCOL etc in to the bootstrap.vxml file when it calls it, but mine obviously is not and I don't know what I should have done to make this work.

Things are definitely different with CVP 4. ;-)

Regards,

Geoff

I have this problem too.
0 votes
Correct Answer by janbyron about 9 years 5 months ago

Hi Geoff,

Those variables get set in bootstrap.tcl. It sounds to me like bootstrap.vxml is getting invoked directly instead of via bootstrap.tcl. Check:

1. That the incoming voip dial-peer on the VRU leg is invoking the service attached to bootstrap.tcl.

2. Turn on "debug voip application script" and "debug voip application tcl" and make sure you see bootstrap.tcl getting invoked. The debugs should show a handoff to bootstrap.vxml with all those parameters.

-janet

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (1 ratings)
Loading.
jwolfeld Sat, 06/30/2007 - 15:24

Geoff,

You didn't mention whether you upgraded the CVP Call Server as well to the 4.02 level. If not, then that's your problem. CVP 4 gateway scripts work with CVP 4 Call Server software and vice versa. If you HAVE upgraded, then clearly the upgrade didn't work as intended, and you should open a TAC case.

Jeff,

Thanks mate. You make a good point, and it forced me to go and check. I do have the patch installed. I wish it were that easy.

The Call server machine is a new install of Windows 2003 server. I had saved the VB config from my 3.1 install to a directory on another drive, and then ghosted it. But this is a clean W2003 partition. I installed CVP 4.0(1) from the CD, and then installed 4.0(2) which I downloaded from Cisco.com.

I have an OAMP server, a Call Server, a VXML server and a Studio machine (also running Support Tools, SysLog and an SNMP trap receiver).

All 4 machines have been built afresh, with CVP 4.0(1) installed and then the patch 4.0(2) applied.

As far as upgrading goes, "upgrading" a CVP 3.1 Combo box to a CVP 4.0(2) Call Server is a bit of a misnomer since it's really a brand new install - the only thing carried over are the VB settings through the utility.

Regards,

Geoff

Correct Answer
janbyron Sat, 06/30/2007 - 16:19

Hi Geoff,

Those variables get set in bootstrap.tcl. It sounds to me like bootstrap.vxml is getting invoked directly instead of via bootstrap.tcl. Check:

1. That the incoming voip dial-peer on the VRU leg is invoking the service attached to bootstrap.tcl.

2. Turn on "debug voip application script" and "debug voip application tcl" and make sure you see bootstrap.tcl getting invoked. The debugs should show a handoff to bootstrap.vxml with all those parameters.

-janet

Ah !!! (Slaps forehead). Thanks for your analysis.

The trace indeed revealed that those parameters were not being passed. For example:

Handing off Legs [237 ] to new-call with args=72CDDD42.26B211DC.80B9E2D3.DB30C2BF

Actually I had the dial peers right but "show flash" revealed my silly error.

I had failed to update the bootstrap.tcl from my Solar Winds TFTP_Root repository into which I had dutifully copied all the files from the 4.0(2) install directory Cisco\CVP\OpsConsole\GWDownloads

And the IOS command

#show call application voice bootstrap

showed that I had a very old version (2.0 - 2.1) from 2002.

Well, that was fun and I learnt a few things. All is well now and ip host table has been cleaned up.

Thanks Janet for pointing me in the right direction.

Regards,

Geoff

Wei,

Actually you don't need anything in the ip host table, if I understand this correctly.

bootstrap.tcl says:

#23 Sep 2006 : Extract originating IP address from an incoming H323 call and use

#that as the call server to which the IVR leg will be sent. This makes

#the H323 method consistent with the SIP method. cvpserverhost now

#no longer needs to be specified for an H323 call.

#

Oh my, that was written by Janet Byron. ;-)

Regards,

Geoff

Actions

This Discussion