Hi all…
Well I have made some progress… Bellow is my routing
statement:
route{
if
(!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
break;
};
if (msg:len
>= 2048 ) {
sl_send_reply("513", "Message too big");
break;
};
if
(!method=="REGISTER") record_route();
if
(loose_route()) {
append_hf("P-hint: rr-enforced\r\n");
route(1);
break;
};
if (!uri==myself)
{
append_hf("P-hint: outbound\r\n");
route(1);
break;
};
if (uri==myself)
{
if (method=="REGISTER") {
save("location");
break;
};
lookup("aliases");
if (!uri==myself) {
append_hf("P-hint: outbound alias\r\n");
route(1);
break;
};
};
append_hf("P-hint: usrloc applied\r\n");
route(1);
}
route[1]
{
if
(src_ip==10.98.6.5) {
if (dst_port==5065) {
t_relay_to_tcp("10.98.118.20", "5065");
}
else if (dst_port==5066) {
t_relay_to_tcp("10.98.118.20", "5066");
}
else if (dst_port==5067) {
t_relay_to_tcp("10.98.118.20", "5067");
}
else {
t_relay_to_tcp("10.98.118.20", "5060");
}
}
else {
t_relay_to_udp("10.98.6.5", "5060");
};
}
When asterisk sends a call to kamailio, Kamailio then sends
the invite to 10.98.118.20 via TCP on port 5061.
INVITE sip:1989@10.98.6.5:5061 SIP/2.0
Record-Route:
<sip:10.98.6.5:5065;transport=tcp;r2=on;lr=on>
Record-Route: <sip:10.98.6.5:5061;r2=on;lr=on>
Via: SIP/2.0/TCP
10.98.6.5:5065;branch=z9hG4bK74fd.a4578a84.0
Via: SIP/2.0/UDP
10.98.6.5:5060;branch=z9hG4bK7b9bb22d;rport=5060
From: "1103"
<sip:1103@10.98.6.5>;tag=as4ae41ccf
To: <sip:1989@10.98.6.5:5061>
Contact: <sip:1103@10.98.6.5>
Call-ID: 44073b911e86b0a96c9104cb7a5ec389@10.98.6.5
CSeq: 102 INVITE
User-Agent: Asterisk PBX
Max-Forwards: 69
Date: Fri, 21 May 2010 12:23:58 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE,
NOTIFY, INFO
Supported: replaces
Content-Type: application/sdp
Content-Length: 232
P-hint: usrloc applied
The problem is that the Kamailio receives a 302 Moved
Temporarily with a contact field of CONTACT:
<sip:1989@10.98.6.5:5065;transport=TCP>
I need to have Kamailio, use this contact field and re-send
the invite.
How can this be done?
Nelson
Pereira
Senior
Network Specialist
Protus
npereira@protus.com
phone: 613.733.0000 ext.528
MyFax: 613.822.5083
MyFax.com | my1voice.com
| Campaigner.com