[Serusers] ACC into mysql

Leon Sun leon.sun at keywestcommunications.com
Wed Apr 27 21:52:39 CEST 2005


For me, 0.8.12 was same.

 

  _____  

From: Edgardo O. Gonzales II [mailto:edgardo.g at pacific.net.ph] 
Sent: April 27, 2005 12:12 PM
To: Leon Sun; 'Barry Murphy'; 'Kofi Obiri-Yeboah'
Cc: serusers at lists.iptel.org
Subject: RE: [Serusers] ACC into mysql

 


Im also using 0.8.14 version of ser .. any other good suggestion .. have you
tried using other ver of ser ..



At 03:10 AM 4/28/2005, Leon Sun wrote:



Edgardo,
 
Whats your SER version?
 
Me either.
 
I even couldnt put modparam("acc", "db_url",
"mysql://ser:heslo@localhost/ser") into ser.cfg. It showed error in file. 
 
It seemed 0.8.14 doesnt like it. 
 
 
 

  _____  

From: serusers-bounces at iptel.org [ mailto:serusers-bounces at lists.iptel.org
<mailto:serusers-bounces at lists.iptel.org> ] On Behalf Of Edgardo O. Gonzales II
Sent: April 27, 2005 11:17 AM
To: Barry Murphy; Kofi Obiri-Yeboah
Cc: serusers at lists.iptel.org
Subject: Re: [Serusers] ACC into mysql
 

Hi!

my accounting is still not working though im not receiving any error message
during my startup.
Its nto logging my transaction on my db.

Can you please check my ser.cfg file below .. Please put your comments ..

thanks,
ed

======================

debug=7
#fork=no
#log_stderror=yes

check_via=no
dns=no
rev_dns=no
port=5060
#children=4
fifo="/tmp/ser_fifo"

# ------------------ module loading ----------------------------------

loadmodule "/usr/local/ser/lib/ser/modules/mysql.so"
loadmodule "/usr/local/ser/lib/ser/modules/sl.so"
loadmodule "/usr/local/ser/lib/ser/modules/tm.so"
loadmodule "/usr/local/ser/lib/ser/modules/rr.so"
loadmodule "/usr/local/ser/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/ser/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/ser/lib/ser/modules/registrar.so"
loadmodule "/usr/local/ser/lib/ser/modules/auth.so"
loadmodule "/usr/local/ser/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/ser/lib/ser/modules/acc.so"

# ----------------- setting module-specific parameters ---------------

# -- usrloc params --

modparam("usrloc", "db_mode", 1)
modparam("usrloc", "db_url","mysql://ser:heslo@localhost/ser")

# -- auth params --

modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")

# -- rr params --

modparam("rr", "enable_full_lr", 1)

# -- acc params --

modparam("acc", "log_level", 1)
modparam("acc", "log_flag", 1)
modparam("acc", "log_missed_flag", 3)
modparam("acc", "db_url", "mysql://ser:heslo@localhost/ser")
modparam("acc", "db_flag", 2)
modparam("acc", "failed_transactions", 1)


# -------------------------  request routing logic -------------------

alias=test.com

# main routing logic

route{
        if (!mf_process_maxfwd_header("10")) {
                sl_send_reply("483","Too Many Hops");
                break;
        };
        if ( msg:len > max_len ) {
                sl_send_reply("513", "Message too big");
                break;
        };

        record_route();
        if (loose_route()) {
                t_relay();
                break;
        };

        if (uri=~"test.com") {
                if (method=="REGISTER") {
                       setflag(1);
                       setflag(2);

                        if (!www_authorize("test.com", "subscriber")) {
                                www_challenge("test.com", "0");
                                break;
                        };

                        save("location");
                        break;
                };

                lookup("aliases");

                if (!lookup("location")) {
                        sl_send_reply("404", "Not Found");
                        break;
                };
        };
        if (!t_relay()) {
                sl_reply_error();
        };

}



======================================

At 02:47 PM 4/26/2005, Barry Murphy wrote:

Mine works, just I dont get the BYE into mysql, even though I see it in
ngrep.
 
Secondly if i call my PBX (Asterisk) via ser and the asterisk hangs up after
giving the time, the call doesnt end on SER it remains connected.
 
Stupid stupid thing :(
 
Barry
 
----- Original Message ----- 
From: Edgardo O. Gonzales II <mailto:edgardo.g at pacific.net.ph>  
To: Kofi Obiri-Yeboah <mailto:kofi at radiocomplex.com>  
Cc: serusers at lists.iptel.org 
Sent: Tuesday, April 26, 2005 6:29 PM
Subject: RE: [Serusers] ACC into mysql

Thanks again for your help .. Here's my running ser.cfg
Hope you can help me make my accounting work.. 
thanks,
ed
================================================================
# ----------- global configuration parameters ------------------------
#debug=3
#fork=yes
#log_stderror=no
#debug=7
#fork=no
#log_stderror=yes
check_via=no
dns=no
rev_dns=no
#port=5060
#children=4
fifo="/tmp/ser_fifo"
# ------------------ module loading ----------------------------------
loadmodule "/usr/local/ser/lib/ser/modules/mysql.so"
loadmodule "/usr/local/ser/lib/ser/modules/sl.so"
loadmodule "/usr/local/ser/lib/ser/modules/tm.so"
loadmodule "/usr/local/ser/lib/ser/modules/rr.so"
loadmodule "/usr/local/ser/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/ser/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/ser/lib/ser/modules/registrar.so"
loadmodule "/usr/local/ser/lib/ser/modules/auth.so"
loadmodule "/usr/local/ser/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/ser/lib/ser/modules/acc.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_mode", 1)
modparam("usrloc", "db_url","mysql://ser:heslo@localhost/ser")
# -- auth params --
modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
# -- rr params --
modparam("rr", "enable_full_lr", 1)
# -- acc params --
modparam("acc", "log_level", 1)
modparam("acc", "log_flag", 1)
modparam("acc", "log_missed_flag", 3)
# -------------------------  request routing logic -------------------
alias=abc.com.ph
# main routing logic
route{
        if (!mf_process_maxfwd_header("10")) {
                sl_send_reply("483","Too Many Hops");
                break;
        };
        if ( msg:len > max_len ) {
                sl_send_reply("513", "Message too big");
                break;
        };
        record_route();
        if (loose_route()) {
                t_relay();
                break;
        };
        if (uri=~"abc.com.ph") {
                if (method=="REGISTER") {
                        if (!www_authorize("abc.com.ph", "subscriber")) {
                                www_challenge("abc.com.ph", "0");
                                break;
                        };
                        save("location");
                        break;
                };
                lookup("aliases");
                if (!lookup("location")) {
                        sl_send_reply("404", "Not Found");
                        break;
                };
        };
        if (!t_relay()) {
                sl_reply_error();
        };
}



================================================================
At 10:55 AM 4/26/2005, Kofi Obiri-Yeboah wrote:

I am assuming your question is if the record_route() function is a parameter
for accounting? If that was your question then the answer is no. Generally
you invoke record_route() to ensure acl acceptance on a gateway (i.e. all
calls through that gateway) 
-----Original Message----- 
From: Edgardo O. Gonzales II [ mailto:edgardo.g at pacific.net.ph] 
Sent: Monday, April 25, 2005 6:22 PM 
To: Kofi Obiri-Yeboah 
Cc: serusers at lists.iptel.org 
Subject: RE: [Serusers] ACC into mysql
Hi Kofi!
got it.. thanks for immediate feedback .. however my accounting is not
working. 
any parameters to be added to make it work..
I have the following info already on my ser.cfg
modparam("acc", "log_level", 1) 
modparam("acc", "log_flag", 1) 
modparam("acc", "log_missed_flag", 3)
record_route(); -> its this a parameter for accounting
thanks, 
ed
At 08:32 AM 4/26/2005, Kofi Obiri-Yeboah wrote:
I think the correct modparam statement should read as follows: 
modparam("acc", "db_url", "mysql://ser:heslo@localhost/ser")
  
please note that "my" is required in front of sql 
  
and not: 
modparam("acc", "db_url", "sql://ser:heslo@localhost/ser") 
-----Original Message----- 
From: serusers-bounces at iptel.org [ mailto:serusers-bounces at lists.iptel.org]On
<mailto:serusers-bounces at lists.iptel.org%5DOn>  Behalf Of Edgardo O. Gonzales II 
Sent: Monday, April 25, 2005 5:20 PM 
To: serusers at lists.iptel.org 
Subject: Re: [Serusers] ACC into mysql
Hi all! 
Im also receiving this error message. 
Can somebody help us on how to make accounting work using mysql. 
thanks, 
ed 
At 06:01 AM 4/26/2005, Leon Sun wrote: 
Hi, 
I am using 0.8.12 in Fedora 3. I tried to log account info into Mysql
followed instruction from manual. I found, first, modparam("acc", "db_url",
"sql://ser:heslo@localhost/ser") coudnlt work at all in ser.cfg. If I
enabled in cfg file, it showed  Starting ser: ERROR: bad config file (1
errors) 
If I disabled it, SER worked fine but I couldnt see any record in acc table.

Would anyone suggest how to put call records into Mysql? 
Thank you.
# ----------- global configuration parameters ------------------------ 
#debug=3         # debug level (cmd line: -dddddddddd) 
#fork=yes 
#log_stderror=no        # (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 "/usr/lib/ser/modules/mysql.so" 
loadmodule "/usr/lib/ser/modules/acc.so" 
loadmodule "/usr/lib/ser/modules/sl.so" 
loadmodule "/usr/lib/ser/modules/tm.so" 
loadmodule "/usr/lib/ser/modules/rr.so" 
loadmodule "/usr/lib/ser/modules/maxfwd.so" 
loadmodule "/usr/lib/ser/modules/usrloc.so" 
loadmodule "/usr/lib/ser/modules/registrar.so" 
# Uncomment this if you want digest authentication 
# mysql.so must be loaded ! 
loadmodule "/usr/lib/ser/modules/auth.so" 
loadmodule "/usr/lib/ser/modules/auth_db.so" 
# ----------------- setting module-specific parameters --------------- 
#modparam("acc", "db_url", "sql://ser:heslo@localhost/ser") 
# -- usrloc params -- 
#modparam("usrloc", "db_mode",   0) 
# Uncomment this if you want to use SQL database 
# for persistent storage and comment the previous line 
modparam("usrloc", "db_mode", 2) 
# -- auth params -- 
# Uncomment if you are using auth module 
# 
modparam("auth_db", "calculate_ha1", yes) 
# 
# If you set "calculate_ha1" parameter to yes (which true in this config), 
# uncomment also the following parameter) 
# 
modparam("auth_db", "password_column", "password") 
# -- 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","log_flag",1) 
# -------------------------  request routing logic ------------------- 
# 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 ( msg:len > 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()) { 
                if (method=="BYE") { 
                   setflag(1); 
                   setflag(2); 
                } 
                t_relay(); 
                break; 
        }; 
        #labeled all transaction for accounting 
        setflag(1); 
        setflag(2); 
        if (method=="CANCEL"){ 
                                t_relay(); 
                            }; 
        # (in case, it does not work, use the following command 
        # with proper names and addresses in it)
        if (uri==myself) { 
                        # This for PSTN destination 
                        if (uri=~"^sip:1") 
                        {       rewritehost("10.10.10.10"); 
                                forward(10.10.10.10,5060); 
                                break; 
                        } 
                if (method=="REGISTER") { 
                # Uncomment this if you want to use digest authentication 
                        if (!www_authorize("sip.mycommunications.com",
"subscriber")) { 
                                www_challenge("sip.mycommunications.com",
"0"); 
                                break; 
                        }; 
                        save("location"); 
                        break; 
                }; 
                # native SIP destinations are handled using our USRLOC DB 
                if (!lookup("location")) { 
                        sl_send_reply("404", "Not Found"); 
                        break; 
                }; 
        }; 
        # forward to current uri now; use stateful forwarding; that 
        # works reliably even if we forward from TCP to UDP 
        if (!t_relay()) { 
                sl_reply_error(); 
        }; 
} 
_______________________________________________ 
Serusers mailing list 
serusers at lists.iptel.org 
http://lists.iptel.org/mailman/listinfo/serusers
 

  _____  

_______________________________________________
Serusers mailing list
serusers at lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20050427/ba781c81/attachment.htm>


More information about the sr-users mailing list