If you set “userdata-map-trans-prefix” to empty value then you lost possibility to pass any User Data to GVP (SIP → GVP direction).
Correct solution is not updating User Data key(s) passed to GVP from routing but attaching new key(s). Reason for this is missing possibility to update User Data when using CTI via SIP Server.
you are partly right, but I can say that all works fine with GVP8.1.7 without userdata-map-trans-prefix I know that older version muset be configured with this option on SIP server side and as I understand the comments above, update KVP from GVP without CTI is possible.
On my test env (GVP 8.1.7 and SIP 8.1.1) update works as follow:
With configured userdata-map-trans-prefix to any string (def. X-Genesys-)
Add attached data from vxml app is possible
Update is partly possible - until the vxml app ends. At the end, is INFO message send with output values like a reason, configured attached data in namelist parameter, etc. BUT, these attach data are not updated,but “only” added. During the run of vxml application update works fine, but the end rewrite it
vxml app has returned values to update on exit block in both examples. From my point of view it seems like SIP server does not map KVP without configured prefix and MCP does not add to custom value any prefix, which can be matched. I do not know if the behavior is only for latest version of GVP, because I have received information from colleague, that in older version it works as expected (ie. with X-Genesys- prefix configured). So, I am little bit confused
Kubig, if this issue still actual for you i’m planing to upgrade mcp to latest version on lab at next week. And then will able to test your scenario. It looks like feature/bug in 8.1.7, now i have 8.1.5 and can test on it if you like.
It is not “critical” for me, I am just testing new version of Genesys components on my lab env. So it is not related to real-life needs or issue. But for wonder, I would like to know how it works and if it is standard designed behavior. My colleague test it on his lab with GVP 8.1.4 and SIP 8.1.0, and it works. This makes me a little confused. According to my test, it seems like strange behavior of SIP, not GVP. But I am not sure of course.
I had a similar issue while testing MSML on GVP 8.1.5 in an URS-centric setup (no cti connector). In fact, it worked as designed.
When SIP Server initiates the INVITE msml to GVP it uses x-Headers ‘X-Genesys-: ’ (if you have the option “userdata-map-trans-prefix” set to X-Genesys-)
From this moment GVP will always add these x-headers in all responses.
As you are using msml, SIP Server sends INFO to GVP and info is passed in the message body
<?xml version="1.0" encoding="UTF-8"?>
Value1
on the (all) response you will always see the X-headers
<gvp:param name=“X-Genesys-”>Value1</gvp:param>
Then GVP can send INFO with several keys in body ( message will also contains all the X-headers) … and if there are no user data in body of INFO then SIP Server will take the values from x-headers which contains old values.
If your are using NETANN then you don’t have this problematic.
So you can
adjust your vxml application that it send in INFO body all the keys you want to see updated (for all subsequent INFO messages).
adapt the exit of your vxml app so that on the BYE you will have X-headers with the updated values.
Maybe play around with the options copyxgenesysheaders to filter user data (?)
Thanks for your input and hints, but you are just partly right. The main problem/issue is in different behavior between version and I am little bit confused what is the properly behavior of it.