Hello,

I am using SER as a redirect server.
I recently posted almost the same question.
This time the format of the CONTACT is different. It contains call information.

Recently I came across an issue where the 302 sent back by SER is
not liked by a soft switch. Particularly , the format of the CONTACT
field according to the softswitch..

Here is an excerpt of the 302 reply send back ...

Session Initiation Protocol
    Status-Line: SIP/2.0 302 MovedTemporarily
        Status-Code: 302
        Resent Packet: False
    Message Header
        Via:SIP/2.0/UDP 70.167.132.2;branch=z9hG4bK-BroadWorks.70.167.132.2-172.20.20.46V5060-0-476027561-38657848-1175625610577-
        From:"7000 Arris-EMTA-SIP"<sip:6782347000@70.167.132.2;user=phone>;tag=38657848-1175625610577-
            SIP Display info: "7000 Arris-EMTA-SIP"
            SIP from address: sip:6782347000@70.167.132.2
            SIP tag: 38657848-1175625610577-
        To:<sip:+16782349999;csel=noind@172.20.20.46:5060;user=phone>;tag= b27e1a1d33761e85846fc98f5f3a7e58.4baf
            SIP to address: sip:+16782349999
            SIP tag: b27e1a1d33761e85846fc98f5f3a7e58.4baf
        Call-ID:BW144010577030407-1243907316@70.167.132.2
        CSeq:476027561 INVITE
        Contact: sip:+16782349999;csel=noind@172.20.20.37:5060;user=phone;transport=udp
        Server: Sip EXpress router (0.8.14 (i386/linux))
        Content-Length: 0
 
the softswitch is wanting the contact field with <sip:xxxx@xxx.xxx.xxx.xxx:5060> like a FROM or TO URI.
It is claiming that since it contains call information within the sip URI,  it should be  enclosed
withing < >.

Here is ser.cfg part that does the sl_send_reply();

  # do a stateless redirect, if return code is correct
    if (method=="INVITE")
    {
        xlog("L_INFO", "SourceIP <%is> \n");
        xlog("L_INFO", "From-uri<%fu>, r-uri <%ru> \n");
        if (!gl_redirect())                                                           << custom function that just gets a Server to redirect to
        {
            sl_send_reply("480", "TemporarilyUnavailable");
            xlog("L_WARN", "Sending a 480 response with r-uri <%ru>\n");
            break;
        }
        else
        {
            sl_send_reply("302", "MovedTemporarily");
            xlog("L_DBG", "Sending a 302 response with r-uri <%ru>\n");
            break;
        }
    };

Any help is appreciated.



thanks,

--
Jignesh Gandhi
jigpgandhi@gmail.com