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

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

'CVP Subdialog Start' and or 'ReqICMLabel' How and when

In my ICM script I have all the nodes to invoke CVP, including one "Set Variable" node which sets my global variable user.microapp.ToExtVXML to

I understand that audium will automatically create a session variable "ani" and "WorkingHours" in CVP (thanks Geoff).

The  Element Specifications for CVP guide states the following for 'ReqICMLabel':

"The ReqICMLabel element allows a Call Studio script to pass caller input, Call Peripheral Variables, and External Call Context (ECC)
variables to an ICM script. The ReqICMLabel must be inserted into a Call Studio script as a decision element. In Call Studio, the
returned ICM label contains a result, which can be used by other elements in the same application, such as the Transfer or Audio
After the ReqICMLabel exits its done path, you can retrieve the values set by the ICM script by selecting the Element Data tab for the
ReqICMLabel element. The element data value is {Data.Element.ReqICMLabelElement.result}. ReqICMLabelElement is the name of
the ReqICMLabel element in the Studio script. The default name for this element is ReqICMLabel_<n>. For example, if you changed
ReqICMLabel to GetICMLabel, the value returned from ICM would be {Data.Element.GetICMLabel.result}, where result is the
variable of the ReqICMLabel element that contains the ICM label.

So now lets say that I want to pass from ICM to CVP Call.PeripheralVariable5;
so I would do this:
Set user.microapp.ToExtVXML to concatenate("application=Main;ani=",Call.PeripheralVariable4,";WorkingHours=",Call.PeripheralVariable5).
then through the means of 'CVP Subdialog Start', two Sessions will be created in CVP: "ani" and "WorkingHours".
Then I can read variable "WorkingHours" in CVP and use it for whatever.

Now lets says I want to pass from CVP to ICM a CVP variable called "Operator" to ICM Call.PeripheralVariable6.
Do I use the 'CVP Subdialog Return' or 'ReqICMLabel'?

Using 'CVP Subdialog Return' I guess I would use:

FromExtVXML0 = {Data.Session.Operator} or {Data.Session.Operator.value}

Using 'ReqICMLabel' I guess I would use:
callvar6 = Operator (something like this ReqICMLabel.callvar6 = {Data.Session.Operator} or {Data.Session.Operator.value})

So when do I use the 'ReqICMLabel'?
Can I use it instead of 'CVP Subdialog Return'?
Is the 'ReqICMLabel' only to get data from ICM or is it also to send?
Am I any close to understanding how this works?



Re: 'CVP Subdialog Start' and or 'ReqICMLabel' How and when

So when do I use the 'ReqICMLabel'?
Can I use it instead of 'CVP Subdialog Return'?
Is the 'ReqICMLabel' only to get data from ICM or is it also to send?
Am I any close to understanding how this works?


1. Never

2. No

3. Don't know or care

4. No.

That node is a special node - I could never really understand what Cisco thought this would be used for - it's pretty bizarre. But it is really designed for a non-ICM CVP (what they call CVP StandAlone) that needs to integrate (yeah, it's getting weird) with ICM.

It's of no use to you - don't waste time with it. Others may have different opinions.

Just pass the data back in FromExtVXML[]. I can't remember the syntax - {Data.Session.Foobar} sounds right; but you never type it, you just click on the {} button, select the session variable and press paste tag.

Don't forget that you can also use Caller Input - in fact, as you probably know, you must pass something back there (that's what the red star means in Studio). You could put a bunch of stuff in there as name=value pairs and pull it apart in ICM using find() and substring().

It's all there - don't make it too complex.

If you can indicate a problem with the FromExtVXML[] array I'll help you solve it. You are almost there.



New Member

Re: 'CVP Subdialog Start' and or 'ReqICMLabel' How and when

You're right; far from understanding it!!! 

thanks for the prompt reply, I appreciate it.