Genesys CTI User Forum

Genesys CTI User Forum => Genesys CTI Technical Discussion => Topic started by: szs5tim on September 26, 2019, 08:12:08 AM

Title: How to Attach/Update UData from VXML played by IRD ?
Post by: szs5tim on September 26, 2019, 08:12:08 AM
Hi guys,

I have a IRD strategy where I use a play application block to play a vxml callflow which is just a grammar based IVR.
The outputs from the grammar menus are saved into variables at each step and I see in the MCP logs that the values are indeed assigned.

I would like to attach these variable values as user data keys so I can take them over in the IRD strategy and continue the routing based on the selection that were made.

Now, I can take over UData attached from IRD using GVP SIP headers into the VXML callflow with the following expression : session.com.genesyslab.userdata[], but I don't know how to attach user data from VXML.

I tried with the Interaction Data block using the PUT method and adding the variables but I cannot see these being attached anywhere.

In multimedia I would use _genesys.ixn.setuData.
What would be an alternative for simple VXML?

I cannot create the routing part also in Composer where I could create a workflow and simply use the User Data block because there is no ORS  configured in the Environment.

Thanks!
Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: borkokrz on September 26, 2019, 09:06:48 AM
Simplest way:

Add following header on top of vxml:

<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml"
[b]xmlns:vg="http://www.voicegenie.com/2006/vxml21-extension"[/b]
xmlns:genesys="http://www.genesyslab.com/vxml/2.0/ext/20020430">

then per example inside block tag add something like this:

      <vg:send async="false" bodyexpr="'[b]key=value[/b]'" contenttype="application/x-www-form-urlencoded"/>
Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: Kubig on September 26, 2019, 09:21:54 AM
You can use namelist parametr within "exit" element of your VXML to post user data as KVP.
Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: szs5tim on September 26, 2019, 10:13:03 AM
@Kubig

As far as I know is only for sub workflows or in a sub call flow when you want to return values to the main call flow.
How would that attach KVPs to my conn id in SIP Server?

When I attach something from IRD and to be able to take it over in VXML I had to configure on SIP Server and the DN where I map Tlib to SIP messages the mapping of User data to SIP Headers.
Since then, I can take over attached data.

Now the question is how to do the same but the other way around, from VXML so I can attach a KVP and retrieve it in IRD with UData['kvp_name'] for example.
None of the above proposals worked.

Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: Kubig on September 26, 2019, 12:37:25 PM
You are wrong. The mapping to the KVP structure is working by default without any further configuration
Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: szs5tim on September 26, 2019, 12:49:56 PM
Well, Kubig,  I tried that.
Even with using a Send Data block without any success.  :(

I added here my Composer project, the IRD strategy and some logs with one example call having conn id: 015002e85d40f10a

https://wetransfer.com/downloads/c217228a594b3396dde0765710120c4620190926124656/77ac420f4c1e57d1bd59b3426c7e64d820190926124656/213ae3

If you can have look I would really appreciate it.  ;D
Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: cavagnaro on September 26, 2019, 05:57:01 PM
Have you configured MCP and SIP server to send attach data?
Can you share MCP logs?


Enviado de meu SM-G9650 usando o Tapatalk

Title: Re: How to Attach/Update UData from VXML played by IRD ?
Post by: szs5tim on October 11, 2019, 07:31:44 AM
At the end it was a mistake I made in the flow.
I used grammars and my GRXML was not correctly generated(oh, eclipse  :o) and the call never passed my SendData block from the VXML.

Once I fixed that, everything worked fine.

Thanks guys!