Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Cisco Employee

ReqICMLabel node failing to make route request from standalone CVP app to ICM

Hello. I have a standalone CVP application containing a reqICMLabel node which seems to be failing to make a route request when executed. I've tested two scenarios; in the first I am providing a dnis and in the second I am leaving the dnis unspecified and have built a dialed number "NA" and associated it with the Routing Client for my CVP. In both cases I am monitoring the VRU PIM and not seeing any route requests being sent. 

When the DNIS is specified the reqICMLabel node seems to not recognize the dnis even though it is being set in the activity logs. Those logs are here:

2.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,newcall,
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,ani,NA
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,areacode,NA
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,exchange,NA
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,dnis,ewt
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,uui,NA
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,iidigits,NA
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,,start,parameter,_dnis=ewt
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:24.387,CVP Subdialog Start_01,enter,
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:31.887,CVP Subdialog Start_01,exit,done
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:31.887,ReqICMLabel_01,enter,
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:31.887,ReqICMLabel_01,custom,doDecision,- The callGuid or DNIS is null.
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:31.887,ReqICMLabel_01,exit,error
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:02:31.887,Copy_of_Audio_01,enter,
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:03:15.356,Copy_of_Audio_01,exit,
10.122.23.189.1406152944387.5.VIVR_RBS,07/23/2014 15:03:15.356,,end,how,hangup

 

In the second scenario when the DNIS is not specified the reqICMLabel node is failing with a null pointer exception:

 

2.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,newcall,
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,ani,NA
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,areacode,NA
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,exchange,NA
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,dnis,NA
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,uui,NA
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,,start,iidigits,NA
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:23.968,CVP Subdialog Start_01,enter,
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:27.765,CVP Subdialog Start_01,exit,done
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:27.765,ReqICMLabel_01,enter,
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:27.765,ReqICMLabel_01,element,error,A custom element encountered an exception.
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:27.765,ReqICMLabel_01,exit,
10.122.23.189.1406153843968.11.VIVR_RBS,07/23/2014 15:17:27.765,,element,error,

 

My VRU PIM is up and the routing client is active. I'm using VRU type 10 for this. Wondering if this should be a different VRU type? - update, just found a bit of documentation that specifies no network VRU needs to be configured for standalone CVP PIMs, so i guess this isn't the issue.

 

Thanks!

Brad

 

Everyone's tags (2)
2 ACCEPTED SOLUTIONS

Accepted Solutions

is your VXML server is

is your VXML server is Standalone?

are you using CVP self service tcl application for this?

can you post your call server logs for this?

 

regards,

Chintan

Hi,i think you are trying to

Hi,

i think you are trying to get this by putting URL in internet explorer for VXML pages.

i know it will be easy to test vxml operation, but not all can be tested or serverd like this.

when i checked this, i saw complex url composed by VXML gateway and requested to VXML server.

url=http://192.168.50.6:7000/CVP/Server?application=Test1&callid=FD691D0000010000000000D10532A8C0&session.connection.remote.uri=sip:23006@192.168.50.5&session.connection.local.uri=sip:291@192.168.50.1:5060&var1=291&tclversion=CVP_9_0_1_0_0_0_671&vxmlversion=CVP_9_0_1_0_0_0_671

 

and this variables arrives on your VXML serevr as session variable:

 

192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,ani,sip:23006@192.168.50.5
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,areacode,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,exchange,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,dnis,sip:291@192.168.50.1:5060
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,uui,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,iidigits,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,tclversion=CVP_9_0_1_0_0_0_671
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,callid=4B35538000010000000000D20532A8C0
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,vxmlversion=CVP_9_0_1_0_0_0_671
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,var1=291

 

and eventually i get response as:

<vxml version="2.0" application="/CVP/Server?audium_root=true&calling_into=Test1&session_id=192.168.50.6.1405762674781.2.Test1" xml:lang="en-US">
<form id="audium_start_form">
<block>
<assign name="audium_vxmlLog" expr="''"/>
<assign name="audium_element_start_time_millisecs" expr="new Date().getTime()"/>
<goto next="#start"/>
</block>
</form>
<form id="start">
<block>
<prompt bargein="true">ICM fetch successful. Label is 6111111111</prompt>
<assign name="audium_vxmlLog" expr="audium_vxmlLog + '|||audio_group$$$' + 'initial_audio_group' + '^^^' + application.getElapsedTime(audium_element_start_time_millisecs)"/>
<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog"/>
</block>
</form>
</vxml>
 
so my suggestion to you is try using actually testcall, or for a URL that represents proper request, not only dnis and application.
 
call id will be genrated by gateway for the call, and CVP selfservice is the important because it takes care of all this things.
 
regards
Chintan
 
10 REPLIES

Brad,Since you have a DNIS,

Brad,

Since you have a DNIS, your first error "The callGuid or DNIS is null" would imply that the cause is the lack of a call GUID. I'm not sure how you would go about resolving that, perhaps someone else here can answer.

-Jameson

-Jameson

is your VXML server is

is your VXML server is Standalone?

are you using CVP self service tcl application for this?

can you post your call server logs for this?

 

regards,

Chintan

Cisco Employee

Hi, Christian. The VXML

Hi, Chintan. The VXML server is running in standalone and there is a call server built and connected to my VRU PIM with only the ICM service enabled.

 

Right now I'm just invoking the application via my browser for testing purposes and setting the input values via queryString values. All of my other node are accepting query string inputs and returning the expected values except for the reqICMlabel node. For example the URL through which I invoke my application to set the dnis is http://10.122.23.189:7000/CVP/Server?application=VIVR_RBS&_dnis=ewt.

 

I have an audio node that is set to return "Your DNIS is:{CallData.DNIS}" as an audio item. The VXML being returned to my browser by that node is below. You can see where the dnis is being returend accurately by this node. 

 

<vxml xmlns="http://www.w3.org/2001/vxml" version="2.1" application="/CVP/Server?audium_root=true&calling_into=VIVR_RBS&session_id=10.122.23.189.1406832057264.43.VIVR_RBS">
<form id="audium_start_form">
<block>
<assign name="audium_vxmlLog" expr="''"/>
<assign name="audium_element_start_time_millisecs" expr="new Date().getTime()"/>
<goto next="#start"/>
</block>
</form>
<form id="start">
<block>
<prompt bargein="true">
<audio src="prompt">Errot ICM Label</audio>
<audio src="prompt">Your DNIS is:ewt</audio>
<audio src="prompt">Your ANI is: NA</audio>
<audio src="prompt">Your UUID is: NA</audio>
</prompt>
<assign name="audium_vxmlLog" expr="audium_vxmlLog + '|||audio_group$$$' + 'initial_audio_group' + '^^^' + application.getElapsedTime(audium_element_start_time_millisecs)"/>
<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog"/>
</block>
</form>
</vxml>
 

If you have configured/added

If you have configured/added your VXML server as stanalone, you can not do ICM look up.

as there no connection with call servers ICM service.

 

you have to use normal vxml server, where you defined primary and secondary call server.

 

i know it bit tricky but:

"standalone self service" is different terminology than "CVP standalone vxml server"

a normal vxml server also can do "stand alone CVP self service", and in this case you can use reqICMlabel node.

 

i hope you are getting what i want to convey.

 

regards

Chintan

Cisco Employee

Hi, Chintan. I thought you

Hi, Chintan. I thought you were on to something there, but went back and checked and realized that while I originally built it as a standalone, when I added the call server I went back and changed it to a normal VXML server (non- standalone). Just to be sure, I implemented my script in a comprehensive mode CVP that has been up and running for a while and am seeing the exact same errors.

I can't find anything about this in documentation, but the "null pointer exception" I'm getting (in two different environments now) makes me think that there is something that needs to be configured on the icmReqLabel node that I missed. When I added that icmReqLabel node I did not add or modify any of the default settings. The only value that is set by default is the timeout value. None of the call variables or FromVXMLVariables are being set.

 

hi brad,it will be helpful,

hi brad,

it will be helpful, if you can share your CVP call server logs, with VXML application logs and post your OAMP config here.

looks like something is misconfigured.

have you assigned primary call server to vxml server in OAMP?

did you do save and deploy? do you see unapplied config in your OAMP control center?

 

this are the basic configuration that you can check on.

 

regards

Chintan

Cisco Employee

Hi, Chintan. There is nothing

Hi, Chintan. There is nothing being logged in the call logs, as it seems like it's failing before it gets to that point. The VXML server logs, which I hadn't looked at yet, did seem to indicate something similar to what the activity logs in the application were saying. In both places it mentions the need for a guid, or a "callguid". I'm setting the dnis and the ani successfully in the url by specifying the _dnis=&_ani= parameters, but I've tried to set a "guid" or a "uuid" a bunch of different ways and haven't had any luck.

I'm also not understanding how this guid value could be needed, as from what I understand this is a value set by ICM in comprehensive mode calls and used in comprehensive call flows. For my standalone app the call does not hit ICM first, and therefore could not have a call guid to provide.

There is a call server built in oamp, the pim is connected to my PG, this VXML server is configured to use that call server as its primary call server, and I have restarted both devices since configuring.

Cheers, 

brad 

 

 

Hi,i think you are trying to

Hi,

i think you are trying to get this by putting URL in internet explorer for VXML pages.

i know it will be easy to test vxml operation, but not all can be tested or serverd like this.

when i checked this, i saw complex url composed by VXML gateway and requested to VXML server.

url=http://192.168.50.6:7000/CVP/Server?application=Test1&callid=FD691D0000010000000000D10532A8C0&session.connection.remote.uri=sip:23006@192.168.50.5&session.connection.local.uri=sip:291@192.168.50.1:5060&var1=291&tclversion=CVP_9_0_1_0_0_0_671&vxmlversion=CVP_9_0_1_0_0_0_671

 

and this variables arrives on your VXML serevr as session variable:

 

192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,ani,sip:23006@192.168.50.5
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,areacode,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,exchange,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,dnis,sip:291@192.168.50.1:5060
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,uui,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,iidigits,NA
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,tclversion=CVP_9_0_1_0_0_0_671
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,callid=4B35538000010000000000D20532A8C0
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,vxmlversion=CVP_9_0_1_0_0_0_671
192.168.50.6.1405762796554.3.Test1,07/19/2014 15:09:56.554,,start,parameter,var1=291

 

and eventually i get response as:

<vxml version="2.0" application="/CVP/Server?audium_root=true&calling_into=Test1&session_id=192.168.50.6.1405762674781.2.Test1" xml:lang="en-US">
<form id="audium_start_form">
<block>
<assign name="audium_vxmlLog" expr="''"/>
<assign name="audium_element_start_time_millisecs" expr="new Date().getTime()"/>
<goto next="#start"/>
</block>
</form>
<form id="start">
<block>
<prompt bargein="true">ICM fetch successful. Label is 6111111111</prompt>
<assign name="audium_vxmlLog" expr="audium_vxmlLog + '|||audio_group$$$' + 'initial_audio_group' + '^^^' + application.getElapsedTime(audium_element_start_time_millisecs)"/>
<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog"/>
</block>
</form>
</vxml>
 
so my suggestion to you is try using actually testcall, or for a URL that represents proper request, not only dnis and application.
 
call id will be genrated by gateway for the call, and CVP selfservice is the important because it takes care of all this things.
 
regards
Chintan
 
Cisco Employee

Hi, Chintan. Got it! I had a

Hi, Chintan. Got it! I had a hunch for a while that I needed to provide that callid parameter, but I couldn't guess as to what the name of the query string was that I needed to provide in the URL. Seeing your connection string from your test gave it to me; "callid". So simple, but it's always referred to as "guid" or "uuid" in the logs so I couldn't get to the correct string. Now that I add that string the reqICMLabel is succeeding and returning a label to my browser. I'm still not quite sure what the requirements are for my app to generate that string, but so far it seems to accept anything I can put in there and work.

I'm using the URL: 

http://10.122.23.189:7000/CVP/Server?application=VIVR_RBS&_dnis=ewt&_ani=1004&callid=111111

And my vxml response looks good:

<vxml xmlns="http://www.w3.org/2001/vxml" version="2.1" application="/CVP/Server?audium_root=true&calling_into=VIVR_RBS&session_id=10.122.23.189.1407869762151.31.VIVR_RBS">

<form id="audium_start_form">
<block>
<assign name="audium_vxmlLog" expr="''"/>
<assign name="audium_element_start_time_millisecs" expr="new Date().getTime()"/>
<goto next="#start"/>
</block>
</form>
<form id="start">
<block>
<prompt bargein="true">
<audio src="prompt">Your ICM Label Is LabelSuccess11111</audio>
<audio src="prompt">Your DNIS is:ewt</audio>
<audio src="prompt">Your ANI is: 1004</audio>
<audio src="prompt">Your UUID is: NA</audio>
</prompt>
<assign name="audium_vxmlLog" expr="audium_vxmlLog + '|||audio_group$$$' + 'initial_audio_group' + '^^^' + application.getElapsedTime(audium_element_start_time_millisecs)"/>
<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog"/>
</block>
</form>
</vxml>
 
Thanks for your help!
 
Brad 

yes i also realized that you

yes i also realized that you put anything there and it will work.

glad that it worked.

 

regards

Chintan

 

~please rate if helpful and mark correct
215
Views
5
Helpful
10
Replies
CreatePlease to create content