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

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. And see here for current known issues.

New Member

Way to check the value of Call.user.microapp.FromExtVXML[0], in ICM

Hi,

I am trying to troubleshoot a problem where CVP is sending the ICM the following

Call.user.microapp.FromExtVXML[0]

Call.user.microapp.FromExtVXML[1]

Call.user.microapp.FromExtVXML[2]

Call.user.microapp.FromExtVXML[3]

In ICM, if I do an IF expression to check if CVP is passing a specific value to ICM, the check consistently fails.

I can see what CVP is putting out to ICM in CVP's DebugLog and ActivityLog from the VXML application.

Is there a way in ICM to see what values ICM is getting from CVP for these variables?

Which ICM trace would hold the value?

Thanks

Purush

PS - I have ICM 8.0.3 with CVP 8.0.1 (Comprehensive with H.323/GK).

Everyone's tags (4)
2 ACCEPTED SOLUTIONS

Accepted Solutions

Way to check the value of Call.user.microapp.FromExtVXML[0], in

The hard way is to dig through the pim logs.  The easy way is to set it to a PV and send it to the CTIOS desktop and then look in the desktop to see what shows up.

david

Green

Re: Way to check the value of Call.user.microapp.FromExtVXML[0],

Yes, it's a bummer you cannot change the number of elements an array variable has.

You may be able to solve this as follows (haven't tried myself). You do need a maintenance window though because your CVP apps are not going to work while you do this.

1. Create a new array variable with a different name (say user.ZZ), but the right number of array elements of the right size.

2. Go through all your scripts (use the Find function in Script Editor) and change

Call.user.microapp.FromExtVXML[0] to Call.user.ZZ[0]

Call.user.microapp.FromExtVXML[1] to Call.user.ZZ[1].

3. Now delete all the old scripts that contained FromExtVXML

4. Force the complete expunge of these Scripts with the Deleted Objects tool

5. Delete the ECC variable FromExtVXML and really delete it.

5. Change the name of Call.user.ZZ to Call.user.microapp.FromExtVXML. You would not have to further edit your scripts.

Regards,

Geoff

9 REPLIES

Way to check the value of Call.user.microapp.FromExtVXML[0], in

The hard way is to dig through the pim logs.  The easy way is to set it to a PV and send it to the CTIOS desktop and then look in the desktop to see what shows up.

david

Bronze

Way to check the value of Call.user.microapp.FromExtVXML[0], in

First you will need to get the ExpandedCallVariableID from your FromExtVXML element. Once you get that value you can substitute it in the query below where you see xxxx. You'll also want to set the correct date/time and ANI filter for your call. You can change that ANI Filter to whatever you choose. Unfortunately I'm not in front of a system so I can't test this query but it should do the trick.

declare @bd DateTime

declare @ed DateTime

set @bd = '2011/11/29'

set @ed = '2011/11/30'

select * from Route_Call_Variable as RCV

left outer join Route_Call_Detail as RCD on RCD.RecoveryKey = RCV.RCDRecoveryKey

where

RCD.DateTime between @bd and @ed

and RCD.ANI = '7045551212'

and RCV.DateTime between @bd and @ed

and RCV.ExpandedCallVariableID in (xxxx)

and RCV.ECCValue is not NULL

order by RCD.DateTime

New Member

Way to check the value of Call.user.microapp.FromExtVXML[0], in

Hi - I haven't tried this method yet.

Thanks anyways.

Appreciate the input !

-Purush

New Member

Way to check the value of Call.user.microapp.FromExtVXML[0], in

I found out why we are not seeing values for Call.user.microapp.FromExtVXML[2] and Call.user.microapp.FromExtVXML[3].

In ICM, we have the Call.user.microapp.FromExtVXML ECC variable set to array size of 2. (That explains why [0] and [1] are working).

Is there any straight forward way to change the array size to 4?

Way to check the value of Call.user.microapp.FromExtVXML[0], in

No, there's no way to update the array size, you will have to delete and create a new one.

david

New Member

Way to check the value of Call.user.microapp.FromExtVXML[0], in

Deleting it is going to be ugly, with all the production ICM scripts still referring to the old variable. Yikes.

Thanks anyways.

-Purush

Green

Re: Way to check the value of Call.user.microapp.FromExtVXML[0],

Yes, it's a bummer you cannot change the number of elements an array variable has.

You may be able to solve this as follows (haven't tried myself). You do need a maintenance window though because your CVP apps are not going to work while you do this.

1. Create a new array variable with a different name (say user.ZZ), but the right number of array elements of the right size.

2. Go through all your scripts (use the Find function in Script Editor) and change

Call.user.microapp.FromExtVXML[0] to Call.user.ZZ[0]

Call.user.microapp.FromExtVXML[1] to Call.user.ZZ[1].

3. Now delete all the old scripts that contained FromExtVXML

4. Force the complete expunge of these Scripts with the Deleted Objects tool

5. Delete the ECC variable FromExtVXML and really delete it.

5. Change the name of Call.user.ZZ to Call.user.microapp.FromExtVXML. You would not have to further edit your scripts.

Regards,

Geoff

New Member

Re: Way to check the value of Call.user.microapp.FromExtVXML[0],

Thanks Geoff. I am contemplating the same thing.

Other choice I am thinking is, to use the working variables

Call.user.microapp.FromExtVXML[0] and

Call.user.microapp.FromExtVXML[1] and use string parsing to extract data from CVP.

Right now, for sake of convenience, I am trying to use [0], [1], [2] and [3] each for different values from CVP.

I guess, I can concatenate the values in my Studio App and keep using [0] and [1] and parse out the values using a delimiter in ICM.

Long run, I would definitely like to free up these extra two variables, for future.

Thanks

Purush

Green

Way to check the value of Call.user.microapp.FromExtVXML[0], in

Absolutely. If there is enough length in your existing element you can pass a structured string and pull it apart in your ICM script with the find() function.

Regards,

Geoff

1355
Views
5
Helpful
9
Replies
CreatePlease login to create content