I am facing an issue where same IVR is keep playing even I transfer to different IVR. Below is the scenario.
I dial call to IVR01 (12345678) having IVR profile name ‘IVR01_OldIVR’.
From IVR01, I transfer call to an agent.
From Agent Desktop (Not WDE/IWS, Its custom phone), Agent transfer call to route point 50004 where routing strategy has loaded
In routing strategy we are DOING TRoute to other IVR DID/RP (IVR02). Note: Note: The DID is created with same name with RP, and as per Genesys design .. RP get the preference where in strategy we are targeting GVP Place group having Voice Treatment Port DN and as RP is with same name as DID, The IVR profile reference got.
When routing transfer to DID/RP, ‘IVR01’ is playing instead of ‘IVR02’.
From SIP logs, I see that GVP-Session-Data keep having the IVR01 profile name and not updating IVR Profile after transfer to IVR02.
Any idea which option can help to update GVP-Session-Data ?
I can see that CTI Connector have value ‘copy-originatingleg-headers=X-Genesys-GVP-Session-Data’, and description in document is ‘The CTI Connector shall copy all headers matching the configured list of prefixes on to other call legs towards MCP and agent’.
Can this option cause GVP-SESSION-DATA not to update ?
RM is sending INVITE to CTI Connector and when CTI Connector ask call info data from IVR Server then IVR Server passing the old DNIS to CTI Connector and CTI Connector pass DNIS info to RM where RM selecting the IVR Profile as per DNIS.
DNIS remain same through out the call unless I update DNIS so CTI Connector will have update DNIS when transfer to different IVR.
I’ve tried to use RouteTypeOverwriteDNIS in my TROUTE function where i am calling different IVR DID but it give Event error in SIP Server
What I’ve read in documentations that AttributeDNIS can’t be update as its a read-only parameter.
However, from documentation ‘Voice Platform Solution 8.1 Integration Guide’ I found that you can instruct CTI Connector to use script ID from URS to use as DNIS. Below is the steps to do it.
[b][i]If your switch cannot supply the DNIS for the incoming call, you
must configure CTI Connector to fetch the script ID from URS.
CTI Connector uses the value of this key as the DNIS in the
INVITE to Resource Manager for IVR Profile selection:
In URS, define the key-value pair for the script ID:
Key—Define the key name that you will match in the CTI
Connector application. The default is scriptidkeyname.
Value—Define the value that matches the DNIS used to
select the desired IVR Profile in Resource Manager.
In the CTI Connector Application object, set the following
options in the IVRSC section:
Fetch Script ID from URS—Enter 1 to enable CTI
Connector to fetch the defined key from URS.
Script Id Key Name—Enter the key name as defined in
URS. CTI Connector sends this key to retrieve the value for
the script ID.[/i][/b]
Btw,history-info wont help as CTI connector have option GetDNISFromIServer and value is ‘true’. As per below description, CTI Connector get DNIS from history-info only when GetDNISFromIServer configured as ‘false’. I can’t make it false as other IVR using this design.
GetDNISFromIServer
Default Value: False
Valid Values: True, False
Display Name in Genesys Administrator: Fetch DNIS from IServer
Changes Take Effect: After restart
Specifies whether CTI Connector needs to get the DNIS value that is required
to map an IVR Profile from the IVR Server. Set this option to true only for
integration with IVR Server in Behind mode—required for TDM integrations,
optional for carrier-connected (if CTI flagging is disabled). For other IVR
Server mode integrations, leave this option set to the default false, so that CTI
Connector obtains the DNIS from the history-info or to header of the INVITE
message (the default behavior).
I think if I use ‘Fetch Script ID’ solution that will work as CTI Connector check UData by ‘Fetch Script ID’ and if not found data then send sendCallInfoReqtoIServer to get Call data from IVR Server.
I am attaching the DNIS in script name variable (that define in CTI Connector) but still CTI Connector show User Data for (Fetch Script ID Key-value) is empty!!! ???
I have followed the below, and it fixed the issue.
If your switch cannot supply the DNIS for the incoming call, you
must configure CTI Connector to fetch the script ID from URS.
CTI Connector uses the value of this key as the DNIS in the
INVITE to Resource Manager for IVR Profile selection:
In URS, define the key-value pair for the script ID:
Key—Define the key name that you will match in the CTI
Connector application. The default is scriptidkeyname.
Value—Define the value that matches the DNIS used to
select the desired IVR Profile in Resource Manager.
In the CTI Connector Application object, set the following
options in the IVRSC section:
Fetch Script ID from URS—Enter 1 to enable CTI
Connector to fetch the defined key from URS.
Script Id Key Name—Enter the key name as defined in
URS. CTI Connector sends this key to retrieve the value for
the script ID.
Now CTI Connector considering Script Id as DNIS to send info to RM for IVR selection