SIP 'FROM' Header

Version 1
    This document was generated from CDN thread

    Created by: ROBERT GREGORY on 16-03-2012 02:37:19 PM
     
    Given a call which is received via SIP at a Cisco router IOS Version 12.4(15)XZ2
    and is thereafter directed to an embedded AIM-CUE module which triggers a VXML
    script, is is possible to retrieve the SIP "From" header of the call within the VXML
    script?
     
    The utility of retrieving the SIP "From" header is
    that it (in our case and typically in others) contains the presentation-format calling party information (that is, the
    name and/or physical address of the caller). A
    variety of documented methods (such as "session.telephone.com.cisco.handoff.proto_headers['From']" and
    "session.com.cisco.proto_headers['From']) simply do not work and instead cause VXML
    script execution to terminate and a Cisco-supplied "We're having technical
    difficulties" message to be played to a caller.


    If it isn't possible to retrieve the raw SIP "From" header via a called VXML document, is there any other way to obtain the same information fragment? Is any alternate method documented somewhere?





    =================



    <?xml version="1.0"
    encoding="UTF-8"?>
    <vxml version="2.0" xmlns="http://www.w3.org/2001/vxml">
    <form><block>
     <var name="ani"   expr="session.telephone.ani" />
     <var
    name="dnis"  expr="session.telephone.dnis" />
     <var name="rdnis"
    expr="session.telephone.rdnis" />
     <var name="luri" 
    expr="session.connection.local.uri" />
     <var name="ruri" 
    expr="session.connection.remote.uri" />
     <var name="redir"
    expr="session.connection.redirect" />
     <var name="aai"  
    expr="session.connection.aai" />
     <var name="hos"  
    expr="session.handoff_string" />


     <!-- Any of these four VARs will generate an error
    -->
     <!-- <var name="hdnis"
    expr="session.telephone.com.cisco.handoff.dnis" /> -->
     <!-- <var
    name="hprof" expr="session.telephone.com.cisco.handoff.proto_headers['From']"
    /> -->
     <!--
    <var name="hdrf"  expr="session.com.cisco.proto_headers" />
    -->
     <!-- <var name="mfrom" expr="session.mail.headerinfo"
    /> -->

     <submit next="http://a.good.address/logcallend.php"
    method="post" enctype="multipart/form-data" namelist="ani dnis"
    />
     </block></form>
    </vxml>

    Subject: RE: SIP 'FROM' Header
    Replied by: Yaw-Ming Chen on 16-03-2012 03:19:36 PM
    variety of documented methods (such as "session.telephone.com.cisco.handoff.proto_headers['From']" and
    "session.com.cisco.proto_headers['From']) simply do not work and instead cause VXML
    One of for outbound one is for in bound.

    The document is mentioned is programming guide ?
    http://www.cisco.com/en/US/docs/ios/voice/vxml/developer/guide/refgde1.html

    example on progarmming guide

    <submit next="http://Hotel-X/Reservation/servlets/getInfo" method="post"
    namelist="session.com.cisco.proto_headers['To']
    session.com.cisco.proto_headers['From']
    session.com.cisco.proto_headers['Subject']
    session.com.cisco.proto_headers['X-ReferenceNumber']/>

    Do do have "deb voip app" log ?

    Thanks

    Subject: RE: SIP 'FROM' Header
    Replied by: ROBERT GREGORY on 16-03-2012 04:24:04 PM
    The relevant part of the AIM-CUE trace appears below. I notice the portion which reads " EXCEPTION:com.cisco.app.ApplicationException: Voice Browser exit with error; nested exception is: com.cisco.voicebrowser.VBEvent: error.semantic: Error in eval(): var hdrf=(session.com.cisco.proto_headers['From']);; nested exception is:
    undefined: The undefined value has no properties."

    Again, the IOS version is 12.4(15)XZ2  and the CUE version is 7.1.1.


    ============================

    4315 03/16 16:02:14.611 DSSP LWRE 0 Received UDP packet on 172.24.19.246:5060 ,source 172.24.19.245:5060
    SIP/2.0 200 OK
    Via: SIP/2.0/UDP 172.24.19.246:5060;branch=z9hG4bKPENMXtvrHXbkJbl1X2iUdw~~10235
    From: <sip:79@172.24.19.246>;tag=cuec0082fe5
    To: <sip:79@66.114.83.17>;tag=1E0292A0-E3E
    Date: Fri, 16 Mar 2012 20:02:14 GMT
    Call-ID: F7981B4F-687711E1-8B02CB8C-17AE5845@172.24.19.245
    CSeq: 4107 SUBSCRIBE
    Content-Length: 0
    Contact: <sip:79@172.24.19.245:5060>
    Expires: 180

    --- end of packet ---

    4315 03/16 16:02:26.388 DSSP LWRE 0 Received UDP packet on 172.24.19.246:5060 ,source 172.24.19.245:56991
    INVITE sip:28@172.24.19.246:5060 SIP/2.0
    Via: SIP/2.0/UDP 172.24.19.245:5060;branch=z9hG4bKB3F3857
    Remote-Party-ID: "WASHINGTON   DC" <sip:202241492Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG TASK_ABORTED:Application task aborted: Application=App[name=frontdesk,type=Cisco Script Application,id=5,desc=frontdesk,enabled=true,max=5,valid=true,optional=[cfgVars=[Lcom.cisco.wfapi.util.WFNameValuePair;@14041404,privilegeType=2,last.modified=133186418@172.24.19.245>;party=calling;screen=no;privacy=off
    From: "WASHINGTON   DC" <sip:2022414928@66.114.83.17>;tag=47D5DC20-343
    To: <sip:28@172.24.19.246>
    Date: Fri, 16 Mar 2012 20:02:26 GMT
    Call-ID: C9683515-6ED911E1-998CCB8C-17AE5845@172.24.19.245
    Supported: 100rel,timer,resource-priority,replaces
    Min-SE:  1800
    Cisco-Guid: 3378929669-1859719649-2575747980-397301829
    User-Agent: Cisco-SIPGateway/IOS-12.x
    Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER

    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.app.ApplicationException: Voice Browser exit with error; nested exception is:
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION: com.cisco.voicebrowser.VBEvent: error.semantic: Error in eval(): var hdrf=(session.com.cisco.proto_headers['From']);; nested exception is:
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION: undefined: The undefined value has no properties.
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wf.subsystems.voicebrowser.dialog.VoiceBrowserDialogImpl.run (VoiceBrowserDialogImpl.java:489)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.app.impl.ApplicationManagerImpl$TaskImpl$ActionImpl.run (ApplicationManagerImpl.java:6268)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.app.impl.ApplicationManagerImpl$TaskImpl.doInterruptible (ApplicationManagerImpl.java:6077)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wf.subsystems.voicebrowser.dialog.VoiceBrowserDialogImpl.invoke (VoiceBrowserDialogImpl.java:380)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wf.steps.voicebrowser.VoiceBrowserStep.execute (VoiceBrowserStep.java:312)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.obj.WFBeanStep.executeImpl (WFBeanStep.java:123)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.obj.WFStep.execute (WFStep.java:162)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.obj.WFWorkflowTask.executeStep (WFWorkflowTask.java:466)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.engine.core.WFEngineWorkflowTask.executeStep (WFEngineWorkflowTask.java:115)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.app.impl.WFWorkflowAppDebugTaskWrapper.executeStep (WFWorkflowAppDebugTaskWrapper.java:382)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.obj.WFWorkflowTask.execute (WFWorkflowTask.java:332)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.engine.core.WFEngineWorkflowTask.execute (WFEngineWorkflowTask.java:70)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.app.impl.WFWorkflowAppDebugTaskWrapper.execute (WFWorkflowAppDebugTaskWrapper.java:702)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.engine.core.TaskManager.runTaskNormally (TaskManager.java:291)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.engine.core.TaskManager.runTask (TaskManager.java:246)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.wfframework.engine.core.TaskManager$RunnableTask.run (TaskManager.java:432)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.executor.impl.ParallelExecutorImpl$WorkOrder.run (ParallelExecutorImpl.java:283)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:com.cisco.executor.impl.WorkerPool$Worker.run (WorkerPool.java:398)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION:java.lang.Thread.run (Thread.java:777)
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION: nested stack trace is:
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION: com.cisco.voicebrowser.VBEvent: error.semantic: Error in eval(): var hdrf=(session.com.cisco.proto_headers['From']);; nested exception is:
    Mar 16 16:02:26 localhost j9:   ERROR ccn ManagerAppl DBUG EXCEPTION: undefined: The undefined CSeq: 101 INVITE
    Timestamp: 1331928146
    Contact: <sip:2022414928@172.24.19.245:5060>
    Expires: 180
    Allow-Events: telephone-event
    Max-Forwards: 69
    Content-Type: application/sdp
    Content-Disposition: session;handling=required
    Content-Length: 274
    v=0
    o=CiscoSystemsSIP-GW-UserAgent 1927 8270 IN IP4 172.24.19.245
    s=SIP Call
    c=IN IP4 172.24.19.245
    t=0 0
    m=audio 17788 RTP/AVP 0 101 19
    c=IN IP4 172.24.19.245
    a=rtpmap:0 PCMU/8000
    a=rtpmap:101 telephone-event/8000
    a=fmtp:101 0-16
    a=rtpmap:19 CN/8000
    a=ptime:20

    --- end of packet ---

    Subject: RE: SIP 'FROM' Header
    Replied by: Yaw-Ming Chen on 16-03-2012 04:51:06 PM
    I have consulted with VXML developer, was told " I have never seen this problem before. The problem sounds like on CUE. Thank"

    Thanks

    Subject: RE: SIP 'FROM' Header
    Replied by: ROBERT GREGORY on 16-03-2012 05:33:19 PM
    Thanks... but what is the best next step: demonstrating how the problem appears in IOS as well, or tracking down a CUE bugfix first?  smug

    Subject: RE: SIP 'FROM' Header
    Replied by: Yaw-Ming Chen on 16-03-2012 06:10:39 PM
    If you think is IOS Voice Gateway VXML related you need to open SR with Developer Services contract
    If it just a IOS issue you can just open a normal TAC SR.

    In the mean while I suggest you collect "deb voip app" and "deb voip ccapi inout" post here, someone will take a look. But as you know this is best effort support.

    Thanks