[Users] Re: Method BYE and loose_routed function
Klaus Darilion
klaus.mailinglists at pernau.at
Tue Apr 11 11:09:33 CEST 2006
Usually all in-dialog requests are loose routed. Thus, if you want
special routing (e.g. accouting) for all requests (=out-of-dialog +
in-dialog) you should do this before loose_route: e.g.:
route{
# sanity tests
...
if INVITE|BYE
setflag(youraccountingflag)
if (loose_route()) {
# in dialog requests
LOG("L_INFO","request is loose routed");
# do NAT detection and traversal
route(5);
t_relay();
exit;
}
# here we have out of dialog requests (initial INVITE+REGSITER)
if REGISTER ..route(2)...exit
# NAT detction + handling
route(5);
lookup();
t_relay();
}
regards
klaus
buxalex at libero.it wrote:
> Hello Klaus,
>
> you were right, my BYE is loose_routed. In fact, following your suggestion, I've got the table updated. My question now is:
> how to know, when a call is loose_routed? I mean, in both cases now the configuration update the ACC table. should I create a if case or something like that?
>
> Thanks in advance for your help
> Alessandro
> ---------- Initial Header -----------
>
> From : "Klaus Darilion" klaus.mailinglists at pernau.at
> To : "buxalex at libero.it" buxalex at libero.it
> Cc : "users" users at openser.org
> Date : Mon, 10 Apr 2006 16:45:49 +0200
> Subject : Re: [Users] new module: siptrace
>
>
>
>
>
>
>
>> Hi Alessandro!
>>
>> Please do not reply to emails when creating a new thread. Use "new
>> email" and choose the proper subject. Otherwise the "thread view"
>> feature of some email clients don't work anymore.
>>
>> Regarding your problem. May it be that the BYE is loose_routed and thus
>> does not hit the setflag()?
>>
>> Try setflag(2) in loose_route block.
>>
>> regards
>> klaus
>>
>>
>> buxalex at libero.it wrote:
>>> Hello to everybody,
>>>
>>> I am running openser with the module ACC and I get the db correctly updated (table ACC) for the method INVITE and ACK; But I cannot retrieve the method BYE, I am sure I have made mistake in openser.cfg, anybody can give me any help? below my openser.cfg:
>>>
>>> #-----------------------------------
>>> # ACC parameters
>>> #-----------------------------------
>>>
>>> modparam("acc", "db_url", "mysql://openser:openser@localhost/openser")
>>> modparam("acc", "failed_transaction_flag", 4)
>>> modparam("acc", "report_cancels", 1)
>>> modparam("acc", "db_flag", 2)
>>> modparam("acc", "db_missed_flag",3 )
>>> ....
>>>
>>> if (method=="BYE") {
>>> setflag(2);
>>> t_relay();
>>> return;
>>> };
>>>
>>>
>>> if (method=="INVITE") {
>>> setflag(2);
>>> record_route();
>>> };
>>> lookup("aliases");
>>> if (!uri==myself) {
>>> append_hf("P-hint: outbound alias\r\n");
>>> route(1);
>>> };
>>>
>>> thank you very much
>>> Alessandro
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at openser.org
>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>
>
More information about the sr-users
mailing list