Hello,
changing content in SIP headers is practically done as two operations:
- delete old value
- insert the new value where the old value startedBy doing two changes to the same content (without an intermediate msg apply changes), practically you insert two new values where the old value started. The result being that the two new values appear one after the other.
Cheers,
Daniel
On 17.10.19 22:11, Jurijs Ivolga wrote:
Hi Daniel,
I got that changes are not applied immediately. When I check SIP packet itself what was sent out I see that from header has user part equal to "1234567+123456". I think this might be a bug...
Thank you!--
On Thu, 17. Oct 2019 at 22:22, Daniel-Constantin Mierla <miconda@gmail.com> wrote:
Hello,
assigning to $fn, $fu or $fU is offered as a convenience way to update parts of From header, but the changes are not applied immediately, like the other operations done over the SIP headers -- see more details in the FAQ:
- https://www.kamailio.org/wiki/tutorials/faq/main#why_changes_made_to_headers_or
In your case, try to do those changes only in branch_route.
Cheers,
Daniel
On 17.10.19 20:59, Jurijs Ivolga wrote:
Hi,
Just to add one more point that $fU & $fn I'm checking not in script but in SIP packet. So using sngrep i see in SIP packet from header where $fU and $fn are "1234567+123456".
Jurijs
On Thu, Oct 17, 2019 at 1:06 PM Jurijs Ivolga <jurijs.ivolga@gmail.com> wrote:
Hi!
I have small problem. When I assign $fU or $fn in request-route and then one more time I make new assignment in branch_route. Instead of rewriting it is just concatenate needed value at the end. lets assume $avp(cli)=1234567 and $avp(cliplus)=+1234567. So if in request_route I do $fU=$avp(cli); and then in branch_route $fU=$avp(cliplus);. $fU becomes one string: "1234567+1234567". Is it a bug or I missing something?
Here is config snippet:
request_route {...route(MY);
...
}
route[MY] {
...
$avp(cli) = "1234567"
$avp(cliplus) = "+"+$avp(cli);
$fU=$avp(cli); # here $fU=1234567
$fn=$avp(cli); # here $fn=1234567
route(LCR_ROUTE);
exit;
}
route[LCR_ROUTE]
{
if(!is_method("INVITE"))
return;
if (!load_gws("1",$rU,$avp(cli))) {
send_reply("503", "Error loading gateways");
exit;
}
$var(i)=0;
while($(avp(lcr_gw_uri)[$var(i)])!= $null){
xlog("L_INFO", "loaded gw_uri_avp[$var(i)]=$(avp(lcr_gw_uri)[$var(i)]) \n");
$var(i) = $var(i)+1;
}
if (!next_gw()) {
send_reply("503", "No available gateways");
exit;
}
xlog("L_INFO", "request-uri $ru \n");
xlog("L_INFO", "$avp(lcr_gw_uri), $avp(lcr_id)\n");
xlog("L_INFO", "flag $avp(lcr_flag) \n");
t_set_fr(0, 4000);
t_on_failure("RTF_LCR_ROUTE");
t_on_branch("BRANCH_CUST");
route(RELAY);
exit;
}
branch_route[BRANCH_CUST] {
if ( $avp(lcr_flag) == 4) {
$fU=$avp(cliplus); #here $fU=1234567+1234567
$fn=$avp(cliplus); #here $fn=1234567+1234567
}
}
Jurijs
_______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio Advanced Training, Oct 21-23, 2019, Berlin, Germany -- https://asipto.com/u/kat
Jurijs
-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio Advanced Training, Oct 21-23, 2019, Berlin, Germany -- https://asipto.com/u/kat