[Serusers] SER ..... How to enable the Accounting with MYSQL
Manoj Ghag
ghagmanoj at yahoo.com
Tue May 10 19:10:16 CEST 2005
hi, All
I have setup the SER with auth enable for MySQL ( and radius also .. at a time only one is used ) I am able to see that if user is not in database he is not able to login to SOFTPHONE .... Now I want to enable accounting also ,,, as in my case auth is working perfectly fine but accounting is not working ... I have tried all the things ,, but still I am missing somthing ...... please help me ...... as even inserting the acc module in ser.cfg file nothing is getting inserted into database .. in the form of accounting information..
At the same time where can i get the information about .. what is a information stored in each mysql table
---------------------------------------------------------------------------------------------------------------------------------
my ser.cfg file is as follows ( where i have compiled ser with all the module enable)
------------------------------------------------------------------------------------------------------------------------------------
[root at test ser]# cat ser.cfg
#
# $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei Exp $
#
# simple quick-start config script
#
# ----------- global configuration parameters ------------------------
debug=5 # debug level (cmd line: -dddddddddd)
fork=yes
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 "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
loadmodule "/usr/local/lib/ser/modules/rr.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/lib/ser/modules/registrar.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/local/lib/ser/modules/auth.so"
loadmodule "/usr/local/lib/ser/modules/acc.so"
loadmodule "/usr/local/lib/ser/modules/auth_db.so"
#loadmodule "/usr/local/lib/ser/modules/auth_radius.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
# -- auth_radius params --
#modparam("auth_radius", "radius_config", "/usr/local/etc/radiusclient/radiusclient.conf")
#modparam("usrloc", "db_mode", 0)
# --domain module--
modparam("usrloc", "db_url", "mysql://ser:heslo@localhost/ser")
#modparam("domain", "db_mode", 1)
#modparam("domain", "domain_table", "domain")
#modparam("domain", "domain_col", "domain")
# --acc params--
modparam("acc", "log_level", 1)
modparam("acc", "log_flag", 2)
#modparam("acc", "log_missed_flag", 2)
#modparam("acc", "log_fmt", "fimos")
#modparam("acc", "db_url", "mysql://ser:heslo@localhost/ser")
#modparam("acc", "db_missed_flag", 2)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
modparam("usrloc", "db_mode", 1)
# -- 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)
# ------------------------- 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()) {
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 (uri=='192.168.1.246') {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
if (!www_authorize("192.168.1.246", "subscriber")) {
www_challenge("192.168.1.246", "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();
};
}
Please see teh table list
[root at test ser]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 376 to server version: 3.23.58
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use ser
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables
-> ;
+-----------------------+
| Tables_in_ser |
+-----------------------+
| acc |
| active_sessions |
| aliases |
| config |
| domain |
| event |
| grp |
| location |
| missed_calls |
| pending |
| phonebook |
| preferences |
| reserved |
| server_monitoring |
| server_monitoring_agg |
| silo |
| subscriber |
| uri |
| version |
+-----------------------+
19 rows in set (0.00 sec)
---------------------------------
Yahoo! Mail Mobile
Take Yahoo! Mail with you! Check email on your mobile phone.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20050510/54d8e53e/attachment.htm>
More information about the sr-users
mailing list