Hello,
I am using SER as a redirect server.
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: True
Suspected resend of frame: 73
Message Header
To: <sip:12345@172.20.20.46>;tag=
b27e1a1d33761e85846fc98f5f3a7e58.dfa5
SIP to address: sip:12345@172.20.20.46
SIP tag: b27e1a1d33761e85846fc98f5f3a7e58.dfa5
From: 172.20.20.46<sip:12345@172.20.20.46>;tag=161dda6e
SIP Display info: 172.20.20.46
SIP from address: sip:12345@172.20.20.46
SIP tag: 161dda6e
Via: SIP/2.0/UDP 10.99.99.140:9585
;branch=z9hG4bK-d87543-730866470-1--d87543-;rport=9585
Call-ID: 95239a63f0347c53
CSeq: 1 INVITE
* Contact: sip:12345@172.20.20.37:5060
* Server: Sip EXpress router (0.8.14 (i386/linux))
Content-Length: 0
Warning: 392 172.20.20.46:5060 "Noisy feedback tells: pid=9550
req_src_ip=10.99.99.140 req_src_port=9585 in_uri=sip:12345@172.20.20.46out_uri=
sip:12345@172.20.20.37:5060 via_cnt==1
the softswitch is wanting the contact field with
<sip:xxxx@xxx.xxx.xxx.xxx:5060>
like a FROM or TO URI.
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())
{
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(a)gmail.com