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


[EMAIL PROTECTED] 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" [EMAIL PROTECTED]
To          : "[EMAIL PROTECTED]" [EMAIL PROTECTED]
Cc          : "users" [email protected]
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


[EMAIL PROTECTED] 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:[EMAIL PROTECTED]/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
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users




_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users

Reply via email to