[Serusers] Re: Problems with accounting - can't get stop records
Daniel-Constantin Mierla
Daniel-Constantin.Mierla at fokus.fraunhofer.de
Tue Sep 30 16:43:06 CEST 2003
Hello,
the BYEs were not accounted because the next piece of configuration file:
if (loose_route()) {
t_relay();
break;
};
BYEs are subsequent requests within a dialog and they include at least a
Route header and loose_route() returns true if no error occurs during
processing the top most. In the above piece of configuration after the
loose routing processing the request is forwarded to the next hope --
the one from Route header -- without setting any flag for accounting.
You have to set it before t_relay(), e.g.,:
if (loose_route()) {
if (method=="BYE" | ...){
log (1, "Accounting flag on\n");
setflag(1);
};
t_relay();
break;
};
Daniel
On 9/30/2003 4:19 PM, Steven R. Bunin wrote:
>Jaime,
>
>Thanks for the config. I managed to get it working yesterday by playing with it
>quite a bit. What I ended up doing was moving my if (method=="bye") {} statements
>to be the first thing after route { . I don't know what this worked but it works
>even with loose_route() enabled. If you want a copy of my config just let me know
>and I will send it out.
>
>Steve
>
>jaime.gil at orange.co.uk wrote:
>
>
>
>>Steven,
>>
>>This was the config used:
>>
>>#
>># $Id: ser.cfg,v 1.21 2003/06/04 13:47:36 jiri Exp $
>>#
>># simple quick-start config script
>>#
>>
>># ----------- global configuration parameters ------------------------
>>
>>debug=3 # debug level (cmd line: -dddddddddd)
>>fork=no
>>log_stderror=yes # (cmd line: -E)
>>
>>/* Uncomment these lines to enter debugging mode
>>debug=7
>>fork=no
>>log_stderror=yes
>>*/
>>
>>check_via=no # (cmd. line: -v)
>>dns=no # (cmd. line: -r)
>>rev_dns=no # (cmd. line: -R)
>>port=5060
>>children=4
>>fifo="/tmp/ser_fifo"
>>
>># ------------------ module loading ----------------------------------
>>
>># Uncomment this if you want to use SQL database
>>loadmodule "./modules/mysql/mysql.so"
>>
>>loadmodule "./modules/sl/sl.so"
>>loadmodule "./modules/tm/tm.so"
>>loadmodule "./modules/rr/rr.so"
>>loadmodule "./modules/maxfwd/maxfwd.so"
>>loadmodule "./modules/usrloc/usrloc.so"
>>loadmodule "./modules/registrar/registrar.so"
>>loadmodule "./modules/uri/uri.so"
>>
>># Uncomment this if you want digest authentication
>># mysql.so must be loaded !
>>loadmodule "./modules/auth/auth.so"
>>loadmodule "./modules/auth_db/auth_db.so"
>>
>>loadmodule "modules/acc/acc.so"
>>
>>loadmodule "./modules/auth_radius/auth_radius.so"
>>
>># ----------------- setting module-specific parameters ---------------
>>
>># -- usrloc params --
>>
>>modparam("usrloc", "db_mode", 2)
>>
>>modparam("auth_radius", "radius_config",
>>"/usr/local/etc/radiusclient/radiusclient.conf")
>>
>># -- rr params --
>># add value to ;lr param to make some broken UAs happy
>>modparam("rr", "enable_full_lr", 1)
>>
>>modparam("acc", "log_level", 1)
>>modparam("acc", "radius_flag", 1)
>>
>># ------------------------- request routing logic -------------------
>>
>>alias=xxxxx.orange.co.uk
>>
>># main routing logic
>>
>>route{
>>
>> # initial sanity checks -- messages with
>> # max_forwards==0, or excessively long requests
>> if (!mf_process_maxfwd_header("10")) {
>> sl_send_reply("483","Too Many Hops");
>> break;
>> };
>> if (len_gt( max_len )) {
>> sl_send_reply("513", "Message too big");
>> break;
>> };
>>
>> # we record-route all messages -- to make sure that
>> # subsequent messages will go through our proxy; that's
>> # particularly good if upstream and downstream entities
>> # use different transport protocol
>> record_route();
>> # loose-route processing
>># if (loose_route()) {
>># t_relay();
>># break;
>># };
>>
>> # if the request is for other domain use UsrLoc
>> # (in case, it does not work, use the following command
>> # with proper names and addresses in it)
>>
>> if (method=="REGISTER") {
>>
>> log(1, "REGISTER: Authenticating user\n");
>>
>> if (!radius_www_authorize("")) {
>> log(1, "REGISTER: challenging user\n");
>> www_challenge("", "0");
>> break;
>> };
>> save("location");
>> break;
>> };
>>
>> if (method=="INVITE") {
>>
>> log(1, "INVITE\n");
>>
>> setflag(1); /* set for accounting (the same value as in log_flag!) */
>> };
>>
>> if (method=="MESSAGE") {
>> log(1, "MESSAGE\n");
>> setflag(1); /* set for accounting (the same value as in log_flag!) */
>> };
>>
>> if (method=="BYE" || method=="CANCEL") {
>> log (1, "BYE or CANCEL\n");
>> setflag(1);
>> };
>>
>> # native SIP destinations are handled using our USRLOC DB
>> if (!lookup("location")) {
>> sl_send_reply("404", "Not Found");
>> break;
>> };
>> if (!t_relay()) {
>> sl_reply_error();
>> break;
>> };
>>
>>}
>>
>>"Steven R. Bunin" <steve at solaas.com> on 29/09/2003 19:01:55
>>
>>To: Jaime GIL/EN/HTLUK at HTLUK
>>cc: serusers at lists.iptel.org
>>
>>Subject: re: Problems with accounting - can't get stop records
>>
>>Jaime,
>>
>>Thanks for the resposne.. I have my loose_route shut off. I think the problem
>>may
>>have to do with an error message I am receiving which is "ERROR: reply cannot be
>>parsed" from my stderr.
>>
>>Do you have a working version of a script that works with 0.8.11 and gets stop
>>records I could look at? It should give me a hand.. I know I am so close to
>>solving
>>this but it is a struggle.
>>
>>Steve
>>
>>jaime.gil at orange.co.uk wrote:
>>
>>
>>
>>>Steven,
>>>
>>>I remember having the same problem. In my case, the problem seemed to be in
>>>
>>>
>>the
>>
>>
>>>loose_route processing. I don't know what it has to do with the accounting
>>>module, but commenting out this part made the trick in my case.
>>>
>>>Jaime
>>>
>>>"Steven R. Bunin" <steve at solaas.com> on 26/09/2003 17:11:41
>>>
>>>To: serusers at lists.iptel.org
>>>cc: (bcc: Jaime GIL/EN/HTLUK)
>>>
>>>Subject: [Serusers] Re: Serusers Digest, Vol 5, Issue 63
>>>
>>>Hi all,
>>>
>>>I have successfully gotten radius authentication working and I started getting
>>>Radius Start records for accounting but I am not sure what I am doing wrong in
>>>regards to getting radius Stop records.
>>>
>>>Below is the area I believe has the most affect on Radius Acccounting from my
>>>Log File. Any suggestions would be appreciated and if it would help to see the
>>>full Config file I will send it as well.
>>>
>>> record_route();
>>>
>>> if (method=="REGISTER") {
>>>
>>># Uncomment this if you want to use digest authentication
>>> if (!radius_www_authorize("")) {
>>> www_challenge("", "0");
>>> break;
>>> };
>>>
>>> save("location");
>>> break;
>>> };
>>>
>>>if (method =="INVITE")
>>> {
>>> log(1,"INVITE\n");
>>> setflag(1);
>>> };
>>>if (method=="MESSAGE") {
>>> log(1,"MESSAGE\n");
>>> setflag(1);
>>> };
>>>if (method=="BYE"){
>>> log (1, "BYE or CANCEL\n");
>>> setflag(1);
>>> };
>>>if (method=="CANCEL"){
>>> log (1, "BYE or CANCEL\n");
>>> setflag(1);
>>> };
>>>
>>>Thanks in advance,
>>>
>>>Steve
>>>
>>>_______________________________________________
>>>Serusers mailing list
>>>serusers at lists.iptel.org
>>>http://lists.iptel.org/mailman/listinfo/serusers
>>>
>>> ------------------------------------------------------------------------
>>> Name: att1.eml
>>> att1.eml Type: Internet E-Mail Message (message/rfc822)
>>> Encoding: base64
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>>
>>>
>>*******************************************************************************
>>
>>
>>>Important.
>>>Confidentiality: This communication is intended for the above-named person and
>>>may be confidential and/or legally privileged. Any opinions expressed in this
>>>communication are not necessarily those of the company. If it has come to you
>>>in error you must take no action based on it, nor must you copy or show it to
>>>anyone; please delete/destroy and inform the sender immediately.
>>>
>>>Monitoring/Viruses
>>>Orange may monitor all incoming and outgoing emails in line with current
>>>legislation. Although we have taken steps to ensure that this email and
>>>attachments are free from any virus, we advise that in keeping with good
>>>computing practice the recipient should ensure they are actually virus free.
>>>
>>>Orange PCS Limited is a subsidiary of Orange SA and is registered in England
>>>
>>>
>>No
>>
>>
>>>2178917, with its address at St James Court, Great Park Road, Almondsbury
>>>
>>>
>>Park,
>>
>>
>>>Bradley Stoke, Bristol BS32 4QJ.
>>>
>>>
>>>
>>*******************************************************************************
>>
>>--
>>Steven R. Bunin - Managing Partner
>>
>>SOLAAS LLC
>>10 East 39th Street
>>Suite 1125
>>New York, NY 10016
>>(+001) 212-532-6700
>>Cellular: 646-739-7000
>>Fax (+001) 212-532-6776
>>
>>http://www.solaas.com
>>
>>--
>>
>>This e-mail may contain confidential and/or privileged information. If you are
>>not
>>the intended recipient (or have received this e-mail in error) please notify the
>>sender immediately and destroy this e-mail. Any unauthorized copying, disclosure
>>or
>>distribution of the material in this e-mail is strictly forbidden.
>>
>> ------------------------------------------------------------------------
>> Name: att1.eml
>> att1.eml Type: Internet E-Mail Message (message/rfc822)
>> Encoding: base64
>>
>> ------------------------------------------------------------------------
>>
>>*******************************************************************************
>>Important.
>>Confidentiality: This communication is intended for the above-named person and
>>may be confidential and/or legally privileged. Any opinions expressed in this
>>communication are not necessarily those of the company. If it has come to you
>>in error you must take no action based on it, nor must you copy or show it to
>>anyone; please delete/destroy and inform the sender immediately.
>>
>>Monitoring/Viruses
>>Orange may monitor all incoming and outgoing emails in line with current
>>legislation. Although we have taken steps to ensure that this email and
>>attachments are free from any virus, we advise that in keeping with good
>>computing practice the recipient should ensure they are actually virus free.
>>
>>Orange PCS Limited is a subsidiary of Orange SA and is registered in England No
>>2178917, with its address at St James Court, Great Park Road, Almondsbury Park,
>>Bradley Stoke, Bristol BS32 4QJ.
>>*******************************************************************************
>>
>>
>
>--
>Steven R. Bunin - Managing Partner
>
>SOLAAS LLC
>10 East 39th Street
>Suite 1125
>New York, NY 10016
>(+001) 212-532-6700
>Cellular: 646-739-7000
>Fax (+001) 212-532-6776
>
>http://www.solaas.com
>
>--
>
>This e-mail may contain confidential and/or privileged information. If you are not
>the intended recipient (or have received this e-mail in error) please notify the
>sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or
>distribution of the material in this e-mail is strictly forbidden.
>
>
>_______________________________________________
>Serusers mailing list
>serusers at lists.iptel.org
>http://lists.iptel.org/mailman/listinfo/serusers
>
>
>
More information about the sr-users
mailing list