Klaus and List.
Thanks for your help. I finally used the "avp" instead of the script
variables... and that solved my problem.
Cheers!
Ricardo.-
-----Mensaje original-----
De: users-bounces(a)lists.kamailio.org [mailto:users-bounces@lists.kamailio.org] En nombre
de Ricardo Martinez
Enviado el: jueves, 13 de noviembre de 2008 16:06
Para: Klaus Darilion
CC: users(a)lists.kamailio.org
Asunto: Re: [Kamailio-Users] Problems with counter $var(i)
Hi Klaus.
Thanks for your answer.
How can i use in my example the avp?
I need, first initialize the avp to 0, where my counter start....
$avp(i:1) = 0 ?
Then can I compare the avp against the $var(nr) variable ?
If ($avp(i:1) < $var(nr) ) is that ok ?
Hope you can help me..
Thanks
Ricardo.-
-----Mensaje original-----
De: Klaus Darilion [mailto:klaus.mailinglists@pernau.at]
Enviado el: jueves, 13 de noviembre de 2008 15:59
Para: Ricardo Martinez
CC: users(a)lists.kamailio.org
Asunto: Re: [Kamailio-Users] Problems with counter $var(i)
Hi!
Be aware! Script variables
http://www.kamailio.org/dokuwiki/doku.php/pseudovariables:devel#script_vari…
are global for a certain process - regardless of the failure route.
if you want a counter which belongs to a transaction you have to use
AVPs, e.g. $avp(i:1)
klaus
Ricardo Martinez schrieb:
Hello
I realized that the counter $var(i) in the failure_route[1] seems not to
be resetting to 0 when the 2^nd , 3th ..etc call arrive.
So for the second call I have the counter 0 in the main route, the
route(3), route(1) but in the failure_route is set to 3 (the last
values from the last call)
I keep trying to figure it out why this is happening..
Anyone?
Thanks,
Ricardo.-
*De:* users-bounces(a)lists.kamailio.org
[mailto:users-bounces@lists.kamailio.org] *En nombre de *Ricardo Martinez
*Enviado el:* jueves, 13 de noviembre de 2008 11:46
*Para:* users(a)lists.kamailio.org
*Asunto:* [Kamailio-Users] Problems with counter $var(i)
*Sorry ¡ i forgot to put the subject.*
Hello list.
I'm having some problems trying to build a counter for my kamailio.cfg file.
This is what I have..
main()
...
load avp from radius}
var(i)=0;
route(3);
...
route[1] {
t_on_failure("1");
if (!t_relay()) {
sl_reply_error();
};
xlog("L_INFO","[$ci] $rm t_relay a $ru");
exit;
}
route(3)
...
$var(nr)=$avp(s:caller_nr);
If ( var(i) < $var(nr) );
$var(i) = $var(i) + 1;
route(1);
else
exit;
failure_route[1] {
xlog("L_INFO", "[$ci] $rm:$ru failure_route\n");
if (t_was_cancelled()) {
xlog("L_INFO", "[$ci] $rm:$ru t_was_cancelled en
failure_route\n");
exit;
}
if (!next_gw()) {
xlog("L_INFO", "[$ci] No hay mas gateways para
$rm:$ou\n");
route(3);
} else {
xlog("L_INFO", "XXXXX");
}
t_on_failure("1");
t_relay();
}
After I restart the service the first time a call arrives the counter
seems to go OK, the counter goes from 0 to 2 (if the caller_nr=3). But
the second time the $var(i) at the main and route(3) it's = 0, but in
the failure_route it keeps the value = 3. What I'm doing wrong?
Can someone help me here?
Thanks
Ricardo Martinez.-
------------------------------------------------------------------------
_______________________________________________
Users mailing list
Users(a)lists.kamailio.org
http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
Users(a)lists.kamailio.org
http://lists.kamailio.org/cgi-bin/mailman/listinfo/users