cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
4979
Views
1
Helpful
0
Comments
cdnadmin
Level 11
Level 11
This document was generated from CDN thread

Created by: Pedro Rego on 24-02-2013 07:50:41 AM
We have an environment where we need to send a value on a simple variable (value of protocol) into Sip header.

We tried to use a single SIP Transfer with this protocol on Header to a FaxServer.

We saw the manual ConfigurationAdminGuide.pdf
on chapter "Passing Information with SIP Headers" on page 377.

We send this parameter and did not work as expected. Any information was noticed in other side after transfer on SIP header.

How can i send a information through SIP header?

You can explain better if we have use the script showed below on ICM or on CVP tab SIP Header Passing (to ICM)?

"Call-Info~add~<sip:x@y>;parm1=value1"

What kind off script we need use on ICM for do this job?

It necessary use a ICM to parsing this information?

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 24-02-2013 03:24:40 PM
See attached slide showing an example.
Paul

Subject: RE: ADD information on SIP Header INVITE
Replied by: Janine Graves on 24-02-2013 03:48:02 PM
Paul,
How does Studio access the SIP headers?
 

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 24-02-2013 03:56:35 PM
As in attached.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 26-05-2013 01:57:26 PM
Hi Paul,
May I please ask you a question? I need to add a customer Sip header in ICM script. The value for that header is dynamic and stored in the one of ICM Call Peripherial Variable (PV9, for examle).
Is it possible somehow to assign the value of that PV9 to Sip header (Set Variable Call.SipHeader)? I tried to do it but unfortunally without any success.
Any answer or examples how to do it would be much appreciated.
I don't know why, but I don't see any attachements in you previous answers to Janine
Thank you in advance.
Dmitriy.
 
 

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 27-05-2013 04:27:12 AM
Dmitriy,
 
Screen shot attached.  Just use the concatenate function to build the right-hand-side of your set variable element.  BTW, there is a also a "~sub~" operation to do string substitution of part of a header but I don't think it's documented in the Config & Admin Guide.
 
Paul

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 27-05-2013 10:18:49 AM
Hi Paul,
Thank you so much!!! It works! Great solution! I appreciate you for your help. The screenshot is quite understandable.
BTW, your example is exactly what I was looking for. I'm working on IVR-Handoff, so you told me the right idea (also about how and where to add "invoke=true")
Thank you once again. 
 

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 28-05-2013 04:27:50 PM
Hi Paul.
May I please ask you more help with IVR-Handoff? As I understand, you knows well cvp_bootstarp.tcl and bootstrap_ivrhandoff.tcl applications. I'm from Slovakia, and try to implement this IVR-Handoff trick (described in BRKCCT-2030 from Cisco Live London) in production. We have CVP 9.0, UCCE 9.0, 2911 VGW (IOS 15.2.2). That's why I need to know how to modify SIP-Header.
So I configured two ICM scripts - one main for agent selection and the other  one is for checking the transfer and IVR-Handoff (it is a simpliest script that plays just a wav-file, agent transfers calls to that script, after it plays greeting we expect return back to the same agent). So the customer calls to FXO port of VGW, then call must go to CVP/ICM and to agent. During a conversation the agent transfers call to another ICM script, after finishing this script the call must return back to the same agent.
To do this, I applied cvp_bootstrap.tcl at the incoming pots dial-peer, bootstrap_ivrhandoff.tcl was applied the incoming voip dial-peer which is selected for vxml-browser start (which is selected, when the label and the corellation ID is received from ICM). We see that cvp_bootstrap modifies the first SIP INVITE and adds a SIP-Header like this:
IVR-Handoff: 487958002
I successfully send it to ICM, and modify it (thanks to you), So during transfer call my GW receives SIP INVITE with such header :
IVR-Handoff: 487958002;invoke=true
But the caller is not switched to the second IVR script as expected. Agent press transfer, dials a number for the second ICM script (it is CTI Route point). We see second call leg, the customer is put on hold. But then our agent is put on hold as well and that's all. So caller is on hold, and agent is on hold too.
In the debug voice applicaton all I see that bootstrap_ivrhandoff is contacted. It tries to make a shunt call:
May 28 17:44:54.183: //626//TCL :/tcl_PutsObjCmd: CVP_IVRHANDOFF_BSTRP, IVR handoff mode, making shunt call to ingress gateway callback DNIS 487754354
then it says like that:
May 28 17:44:54.187: //-1//AFW_:/AFW_Leg_NewSetupRequest: SetupRequest Failed
May 28 17:44:54.187: //-1//AFW_:/AFW_Instance_DecrRefCount: Object: 0x3071A574, Type: Leg, RefCount: 0
May 28 17:44:54.187: //-1/23A4E78882C3/AFW_:LG-1:/AFW_M_Leg_Free:  
May 28 17:44:54.187: //-1/23A4E78882C3/AFW_:LG-1:/AFW_M_Leg_Free: LEG[-1     ][LEG_INIT(0)][Cause(0)]
May 28 17:44:54.187: //-1/23A4E78882C3/AFW_:LG-1:/decrementDialPeerCallStats: Decrementing call-stat to [-17], dial-peer [1]
May 28 17:44:54.187: //626//Dest:/DestSetup: 
May 28 17:44:54.187: Failed to setup call
May 28 17:44:54.187: //626//Dest:/DestValidatePreemptRequired:  
May 28 17:44:54.187: //626//Dest:/DestPeerPreemptRequired:  
May 28 17:44:54.187: //626//Dest:/DestPeerPreemptRequired: Checking peer [1] preemptSupport[0]
May 28 17:44:54.187: //626//Dest:/DestSetup: Destination setup failed rc(-14)
May 28 17:44:54.187: //626//Dest:/DestSetFailureCause: Change failure cause from 0 to 44
May 28 17:44:54.187: //626//Dest:/DestGetLpcorCorCause:  
May 28 17:44:54.187: //626//Dest:/DestDialPeerRotary: isLpcorBlock=0 lastFailureCause=44
May 28 17:44:54.187: //626//Dest:/DestSetupInitiate:  Dial peer rotary failed 
May 28 17:44:54.187: //626//Dest:/DestSetupInitiate: 
May 28 17:44:54.187:  : before setting failure to featvsa
May 28 17:44:54.187: //626//Dest:/DestSetupInitiate: 
May 28 17:44:54.187:  : after setting failure to featvsa
May 28 17:44:54.187: //626//Dest:/DestResetCallInfo:  
May 28 17:44:54.187: //626//Dest:/DestComplete: peer #:1 IW State IW_STATE_INIT, OB State OB_STATE_INIT
May 28 17:44:54.187: //-1//Dest:/DestStatusFromDiscCause: mapped "no requested circuit (44)"(44) to DEST_NO_RESOURCE(3)
And the caller is not switched to second script.
What may cause such behavior? Do we need to modify smth on tcl application, or can we use them as they are for this feature? Do we need any specific configurations on CVP, ICM. VGW for IVR-handoff? Are there any tricks in scripting (except SIP-header change)?
Any of your help will be much appreciated.
Thank you so much in advance.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 28-05-2013 05:41:11 PM
Have you got an outgoing dial-peer configured on the VoiceXML gateway to route the shunt to the ingress gateway?   Attached doc might be useful.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 29-05-2013 03:37:54 AM
Hi Paul,
 
 
Thank you very much for your fast reply and the document with the description of the required configuration. I've got your idea about the outgoing voip dial-peer. But how to configure that outgoing dial-peer if we have just one Voice Gateway (so Ingress Gateway and VXML Gateway are in the same device)? Is it possible to use just one gateway or for the IVR-Handoff two different gateways are mandatory?
 
If I understand it correctly, the destination pattern for this outgoing dial-peer must be 487......
 
In case of two gateways should I also configure incoming VoIP dial-peer in order to receive shunt call? If yes, is it necessary to configure cvp_bootstrap service on this new incomig dial-peer?
 
 
Here is our current gateway dial-peer and service configuration (please see the attachement).
 
Thank you once again in advance for your help.    

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 29-05-2013 04:56:23 AM
Doesn't really matter whether you have common or separate gateways.  If you're using the same gateway you can just configure a single dial-peer to serve outgoing and incoming as below.   You don't need to configure a service on it as the ingress TCL session has already dynamically registered to receive the shunt call number.
 
dial-peer voice 478 voip
 destination-pattern 478......
 session protocol sipv2
 session target ipv4:10.10.3.170
 incoming called-number 478......
 dtmf-relay rtp-nte
 codec g711ulaw
 no vad
 

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 29-05-2013 01:51:59 PM
Hi Paul,
 
I've just returned from our customer's site. Thanks to you, your explanations and your doc - we successfully implemented the IVR-Handoff feature. I configured the additional voip dial-peer for shunt call, modified our ICM script, as it was explained in your doc and it began working!!! Once again thank you very much for your support and patience. This feature is really useful.
 
I would like to ask one more question about the feature. Now in our UCCE+CVP system it works like that:
1. Agent receives a call.
2. Agent presses Transfer buttoon on CAD or the phone
3. Agent transfers call to Handoff ICM/IVR script. The caller is put on hold by the agent.
4. IVR-Handoff switches the caller to IVR. The agent listens to hold music from GW flash.
5. After IVR script is finished the shunt call leg is disconnected.
6. Caller hears the hold music from CCM. The agent also hears the same music. 
7. If the Agent presses Resume button, he returns to the caller. Otherwise both of them receive MOH.
 
Is this planned behaivior? As far as I understand yes, because it is the Agent who puts the caller on hold at CCM. Am I right? Should the IVR-Handoff disconnect the shunt call and automatically resume the call from hold?
 
Have a nice evening and thank you for you help. I appreciate it ever so much.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 29-05-2013 02:36:57 PM
Great to hear it's working for you and many thanks for the feedback.

The behaviour you observe for both caller and agent should be identical to when an agent makes a consultation call and the far-end hangs up first.   The IVR handoff TCL can only reconnect the caller-agent leg at the gateway; it can't take the call off-hold at the UCM.
 
I can't recall exactly what happens with CAD but when you use the CTIOS desktop, you can alternate back to the caller leg while the consult to IVR is in progress and when the IVR completes, the caller and agent are off-hold and automatically talking again.  The only downside to alternating back is if you want the agent to hear progress messages from the IVR session as it proceeds.
 
Paul

Subject: RE: ADD information on SIP Header INVITE
Replied by: GOPALASRINIVASAN KUPPUSWAMY on 30-05-2013 03:33:54 PM
Paul Tindall:
See attached slide showing an example.
Paul

 
Hi Paul,
There is no slide. Can you please send it.
Thanks,
Gopal.

Subject: Re: New Message from GOPALASRINIVASAN KUPPUSWAMY in Customer Voice Portal (
Replied by: Paul Tindall on 31-05-2013 07:58:34 AM
Gopal,

I don't see your post in the thread.   Can you confirm what specific item you'd like information on?

From: Cisco Developer Community Forums <cdicuser@developer.cisco.com<mailto:cdicuser@developer.cisco.com>>
Reply-To: "cdicuser@developer.cisco.com<mailto:cdicuser@developer.cisco.com>" <cdicuser@developer.cisco.com<mailto:cdicuser@developer.cisco.com>>
Date: Thursday, 30 May 2013 21:34
To: "cdicuser@developer.cisco.com<mailto:cdicuser@developer.cisco.com>" <cdicuser@developer.cisco.com<mailto:cdicuser@developer.cisco.com>>
Subject: New Message from GOPALASRINIVASAN KUPPUSWAMY in Customer Voice Portal (CVP) - General Discussion - All Versions: RE: ADD information on SIP Header INVITE

GOPALASRINIVASAN KUPPUSWAMY has created a new message in the forum "General Discussion - All Versions": --------------------------------------------------------------
Paul Tindall:
See attached slide showing an example.
Paul


Hi Paul,
There is no slide. Can you please send it.
Thanks,
Gopal.
--
To respond to this post, please click the following link: http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/15738362 or simply reply to this email.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 31-05-2013 08:10:06 AM
Hi Paul,
Yesterday we successfully finished IVR-Handoff feature implementation at customer side. Everything works as described at BRKCCT-3030 and your docs.
Thank you so much for support! Well done!
BR,
Dmitriy.
 
 

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 28-06-2013 09:06:55 AM
Hi Paul,

May I please ask you one more question regarding IVR_Handoff feature?

Is it possible send somehow a value of CVP variable to ICM during a transfer stage? For example, an agent receives a call and transfers this call to IVR_Handoff CVP script. When CVP Handoff scripts is executed, it asks the caller to enter some digits (let it be customer number or smth like this). Is it possible to send the digits entered by the caller to ICM and show it on CAD or CTI OS Client?

Thank you in advance for your answer and help.

BR,

Dmitriy.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 28-06-2013 09:33:00 AM
Dmitriy,

You can certainly pass data back the ICM script that is executing the CVP microapps during IVR handoff but unfortunately that won't get the data back to your agent desktop.   You'd have to use a back-end data join through another repository.    If it's a customer ID then the simplest thing would be to collect that on the initial incoming pass through IVR and to send it on the consultative call to the subsequent IVR handoff session rather than collect it then.    I had the view that the most common IVR handoff use case was for collection of personal and sensitive data which you wouldn't want to pass to the desktop anyway.

I did include the ability to pass audio messages back to the agent as a convenience method for some situations when it could replace data but clearly it is fairly limiting what you can realistically do over audio.

Paul

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 28-06-2013 10:10:43 PM
Hi Paul,

Thank you for your quick answer. I agree with your point of view that IVR_Handoff must be used just for cases when the customer enters some secret data (PINs, etc).

We will think about the possibilty to send the customer input to CAD / CTI Client during the first stage of the call (i.e before Agent selection). It definitely works

Have a nice weekend.

BR,

Dmitriy.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 02-07-2013 07:37:18 AM
One other thing that occurs to me that you might want to consider if you&#039;re using CAD is sending messages from CVP to the agent desktop via the CAD IPC mechanism.  This would allow you to set variables at the desktop and raise a notification of the outcome.  I&#039;ve not tried it myself in this scenario but provided you can pass the desktop IP address  &#047; hostname in the call context on the IVR handoff call, CVP will be able to send the IPC UDP message to the right desktop.   Could be quite a neat solution that would only require a CVP custom element to send the CAD IPC message.

Paul

Subject: RE: ADD information on SIP Header INVITE
Replied by: Paul Tindall on 03-07-2013 07:42:36 PM
Custom element attached that will perform a notification pop-up at the specified target Cisco Agent Desktop.   Can easily be modified to perform other meaningful IPC operations such as set variable.

Subject: RE: ADD information on SIP Header INVITE
Replied by: Dmytro Benda on 04-07-2013 07:40:11 AM
Hi Paul,

Thank you for your help and explanations. Now I'm not at our customer side, I'm on business trip for several weeks and can't try this solution for now.

Have a nice afternoon.

BR,

Dmitriy.
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Quick Links