none
OCS inbound call fails if INVITE has a "route" header

    General discussion

  • I have an endpoint registered to my home grown SIP server. I have an Office Communications Server 2007 R2 Version: 3.5. I configured OCS as my next hop sip proxy. I have a user registered to this OCS via office communicator. I configured my SIP server in OCS's authorized hosts list.

    I wanted to make a call from the endpoint registred to my sip server to the OC user. So after I receives INVITE from the caller, I put OCS's IP, port and transport in the top route header in the INVITE message (so that my stack knows how to route the message) and send the INVITE to OCS.

    The issue I'm having is that after OCS receives this INVITE request, somehow it doesn't think this request falls into its application domain and therefore tries to route the call according to the host part of the request-uri. (instead of routing it to the registered OC user)

    Appended below is the "analyzed log" from OCS. As you can see, OCS received an incoming INVITE from my call server. The request-uri is "INVITE sip:hwong@ocs2.myCompany.com". Then, As you can see from the log, OCS somehow resolved the "ocs2.myCompany.com" host name (it’s actually the Domain Controller) and tries to send the INVITE via TLS to the Domain Controller. For sure the call will fail from there.

    I did some temporary workaround and removed the route header in my INVITE message sent to OCS, then the call worked!

    So, my question is, do you guys know how to let OCS treat my INVITE properly so that the call can be routed to a registered MOC user? Am I missing some very important routing related field? I did tried to look at OCS's debug log and saw the "routedByApplication" field was false in the failed scenario and its value true in an successful OC to OC call.

    In below message log, OCS's IP is 192.168.50.111 and Domain Controller's IP is 192.168.50.10
    =============================================
    TL_INFO(TF_PROTOCOL) [1]0F30.1AD0::01/23/2010-00:25:00.303.000530a1 (SIPStack,SIPAdminLog::TraceProtocolRecord:SIPAdminLog.cpp(122))$$begin_record
    Instance-Id: 000037EF
    Direction: incoming
    Peer: 10.47.17.103:53891
    Message-Type: request
    Start-Line: INVITE sip:hwong@ocs2.myCompany.com SIP/2.0
    From: "bob" <sip:3809-a@janus.com>;tag=ea331e09
    To: "hwong@ocs2.myCompany.com" <sip:hwong@ocs2.myCompany.com>
    CSeq: 1 INVITE
    Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,NOTIFY,MESSAGE,SUBSCRIBE,INFO
    Content-Type: application/sdp
    User-Agent: X-Lite release 1103k stamp 53621
    Route: <sip:192.168.50.111:5060;transport=TCP;lr>
    Via: SIP/2.0/TCP 10.47.17.104:5060;branch=z9hG4bK-d8754z-2046ed2901026e57-1---d8754z--0
    Contact: "outbound" <sip:10.47.17.104:5060;transport=tcp>
    Max-Forwards: 69
    Content-Length: 371
    Message-Body: v=0
    o=- 5 2 IN IP4 10.33.24.106
    s=CounterPath X-Lite 3.0
    c=IN IP4 10.33.24.106
    t=0 0
    m=audio 55588 RTP/AVP 107 0 8 101
    a=fmtp:101 0-15
    a=rtpmap:107 BV32/16000
    a=rtpmap:101 telephone-event/8000
    a=sendrecv
    m=video 17568 RTP/AVP 115 34
    a=fmtp:115 QCIF=1;CIF=1;I=1;J=1;T=1
    a=fmtp:34 QCIF=1;CIF=1
    a=rtpmap:115 H263-1998/90000
    a=rtpmap:34 H263/90000
    a=sendrecv
    $$end_record
    TL_INFO(TF_DIAG) [1]0F30.1AD0::01/23/2010-00:25:00.318.00054474 (SIPStack,SIPAdminLog::TraceDiagRecord:SIPAdminLog.cpp(144))$$begin_record
    LogType: diagnostic
    Severity: information
    Text: Response successfully routed
    SIP-Start-Line: SIP/2.0 100 Trying
    SIP-Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    SIP-CSeq: 1 INVITE
    Peer: 10.47.17.103:53891
    Data: destination="Unknown"
    $$end_record
    TL_INFO(TF_PROTOCOL) [1]0F30.1AD0::01/23/2010-00:25:00.318.00054494 (SIPStack,SIPAdminLog::TraceProtocolRecord:SIPAdminLog.cpp(122))$$begin_record
    Instance-Id: 000037F0
    Direction: outgoing;source="local"
    Peer: 10.47.17.103:53891
    Message-Type: response
    Start-Line: SIP/2.0 100 Trying
    From: "bob" <sip:3809-a@janus.com>;tag=ea331e09
    To: "hwong@ocs2.myCompany.com" <sip:hwong@ocs2.myCompany.com>
    CSeq: 1 INVITE
    Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    Via: SIP/2.0/TCP 10.47.17.104:5060;branch=z9hG4bK-d8754z-2046ed2901026e57-1---d8754z--0;received=10.47.17.103;ms-received-port=53891;ms-received-cid=FCE00
    Content-Length: 0
    Message-Body: –
    $$end_record
    TL_ERROR(TF_CONNECTION) [1]0F30.1AD0::01/23/2010-00:25:01.317.00054954 (SIPStack,SIPAdminLog::TraceConnectionRecord:SIPAdminLog.cpp(157))$$begin_record
    LogType: connection
    Severity: error
    Text: Failed to complete outbound connection
    Peer-IP: 192.168.50.10:5061
    Peer-FQDN: ocs2.myCompany.com
    Connection-ID: 0xFD101
    Transport: TLS
    Result-Code: 0x8007274d WSAECONNREFUSED
    $$end_record
    TL_ERROR(TF_DIAG) [1]0F30.1AD0::01/23/2010-00:25:01.317.00054979 (SIPStack,SIPAdminLog::TraceDiagRecord:SIPAdminLog.cpp(140))$$begin_record
    LogType: diagnostic
    Severity: error
    Text: Message was not sent because the connection was closed
    SIP-Start-Line: INVITE sip:hwong@ocs2.myCompany.com SIP/2.0
    SIP-Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    SIP-CSeq: 1 INVITE
    Peer: ocs2.myCompany.com:5061
    $$end_record
    TL_INFO(TF_DIAG) [1]0F30.1AD0::01/23/2010-00:25:01.317.0005549d (SIPStack,SIPAdminLog::TraceDiagRecord:SIPAdminLog.cpp(144))$$begin_record
    LogType: diagnostic
    Severity: information
    Text: Response successfully routed
    SIP-Start-Line: SIP/2.0 504 Server time-out
    SIP-Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    SIP-CSeq: 1 INVITE
    Peer: 10.47.17.103:53891
    Data: destination="Unknown"
    $$end_record
    TL_INFO(TF_PROTOCOL) [1]0F30.1AD0::01/23/2010-00:25:01.317.000554bf (SIPStack,SIPAdminLog::TraceProtocolRecord:SIPAdminLog.cpp(122))$$begin_record
    Instance-Id: 000037F8
    Direction: outgoing;source="local"
    Peer: 10.47.17.103:53891
    Message-Type: response
    Start-Line: SIP/2.0 504 Server time-out
    From: "bob" <sip:3809-a@janus.com>;tag=ea331e09
    To: "hwong@ocs2.myCompany.com" <sip:hwong@ocs2.myCompany.com>;tag=E64F3A2D3B622F78E35BA34F2697EAD1
    CSeq: 1 INVITE
    Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    Via: SIP/2.0/TCP 10.47.17.104:5060;branch=z9hG4bK-d8754z-2046ed2901026e57-1---d8754z--0;received=10.47.17.103;ms-received-port=53891;ms-received-cid=FCE00
    ms-diagnostics: 1007;reason="Temporarily cannot route";source="QAOCS.ocs2.myCompany.com";ErrorType="Connect Attempt Failure";WinsockFailureDescription="The peer actively refused the connection attempt";WinsockFailureCode="10061(WSAECONNREFUSED)";Peer="ocs2.myCompany.com"
    Content-Length: 0
    Message-Body: –
    $$end_record
    TL_WARN(TF_DIAG) [1]0F30.1AD0::01/23/2010-00:25:01.317.000554fa (SIPStack,SIPAdminLog::TraceDiagRecord:SIPAdminLog.cpp(142))$$begin_record
    LogType: diagnostic
    Severity: warning
    Text: Routing error occurred; check Result-Code field for more information
    Result-Code: 0x80004004 E_ABORT
    SIP-Start-Line: INVITE sip:hwong@ocs2.myCompany.com SIP/2.0
    SIP-Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    SIP-CSeq: 1 INVITE
    Peer: ocs2.myCompany.com:5061
    $$end_record
    TL_INFO(TF_PROTOCOL) [1]0F30.1AD0::01/23/2010-00:25:01.317.000555a1 (SIPStack,SIPAdminLog::TraceProtocolRecord:SIPAdminLog.cpp(122))$$begin_record
    Instance-Id: 000037FC
    Direction: incoming
    Peer: 10.47.17.103:53891
    Message-Type: request
    Start-Line: ACK sip:hwong@ocs2.myCompany.com SIP/2.0
    From: "bob" <sip:3809-a@janus.com>;tag=ea331e09
    To: "hwong@ocs2.myCompany.com" <sip:hwong@ocs2.myCompany.com>;tag=E64F3A2D3B622F78E35BA34F2697EAD1
    CSeq: 1 ACK
    Call-ID: 08e188f1b411015735d6082bf02271e2@0.0.0.0
    Max-Forwards: 69
    Via: SIP/2.0/TCP 10.47.17.104:5060;branch=z9hG4bK-d8754z-2046ed2901026e57-1---d8754z--0
    Route: <sip:192.168.50.111:5060;transport=TCP;lr>
    Content-Length: 0
    Message-Body: –
    $$end_record

    Tuesday, February 09, 2010 3:02 AM