[SR-Users] Strange behavior when rewriting "To" header from failure_route (kamailio - 3.0.2)

Kosilov Fedor dangerkoffe at gmail.com
Tue Jun 8 11:51:17 CEST 2010


Thank you for the answer, Klaus

I have tried your way(commented my subst and added your rows), so now it
looks like this:

failure_route[2] {
if (!t_is_canceled() && t_check_status("486|408")) {
 $avp(alias_seq)=$avp(alias_seq)+1;
xdbg("HERE WE ARE!    $avp(alias_seq)\n");
 revert_uri();
sql_query("main", "select username from subscriber where alias='$tU' and
alias_seq='$avp(alias_seq)'", "alias_name");
 sql_query("main", "select domain from subscriber where alias='$tU' and
alias_seq='$avp(alias_seq)'", "alias_domain");
 if ($dbr(alias_name=>rows) != 0 && $dbr(alias_domain=>rows) != 0) {
subst_uri('/^sip:.*@.*$/sip:$dbr(alias_name=>[0,0])@$dbr(alias_domain=>[0,0])/');
# subst('/^To:.*<sip:.*>/To:
<sip:$dbr(alias_name=>[0,0])@$dbr(alias_domain=>[0,0])>\r\n/');
<--COMMENTED OUT THIS ONE
remove_hf("To");
                                              # <--ADDED THIS ONE
 append_hf("To:
<sip:$dbr(alias_name=>[0,0])@$dbr(alias_domain=>[0,0])>\r\n");   # <--ADDED
THIS ONE
sql_result_free("alias_name");
 sql_result_free("alias_domain");
setflag(10);
if (!lookup("location")) {
    switch ($retcode) {
case -1:
case -3:
 t_reply("404", "Not Found");
exit;
case -2:
 exit;
    }
}
 append_branch();
route(5);
}
 }
if (is_method("INVITE")) {
unforce_rtp_proxy();
 }

}

route[5] {
if (!t_relay()) {
 sl_reply_error();
}
exit;
}

So the code now supposed to delete "To:
<sip:ncm0000b at domain.com<sip%3Ancm0000b at domain.com>
>"
and to append                                          "To: <
sip:ncm0000a at domain.com <sip%3Ancm0000a at domain.com>>"

But with ngrep i can see:
To: <sip:ncm0000b at domain.com <sip%3Ancm0000b at domain.com>>.Date: Tue, 08 Jun
2010 09:40:10 GMT.

With timestamp, which seems to me to be unusual.

So maybe it's impossible to rewrite "To" header from failure_route for some
reason... (For example according to RFC)

Actually my phones ring, and everything works fine, I am just interested
with this behavior of Kamailio.

Thanks again for your reply.

Sincerely yours,
Kosilov Fedor.


2010/6/8 Klaus Darilion <klaus.mailinglists at pernau.at>

>  remove_hf("To");
>  append_hf("To:
> <sip:$dbr(alias_name=>[0,0])@$dbr(alias_domain=>[0,0])>\r\n");
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20100608/4e64fdcd/attachment.htm>


More information about the sr-users mailing list