<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.2627" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>You must recompile acc.so module with MySQL 
support... See the acc Makefile (1 line to uncomment...)</FONT></DIV>
<BLOCKQUOTE 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=ghagmanoj@yahoo.com href="mailto:ghagmanoj@yahoo.com">Manoj Ghag</A> 
  </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=serusers@lists.iptel.org 
  href="mailto:serusers@lists.iptel.org">serusers@lists.iptel.org</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Tuesday, May 10, 2005 7:10 PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> [Serusers] SER ..... How to 
  enable the Accounting with MYSQL</DIV>
  <DIV><BR></DIV>
  <DIV>hi, All</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>I have setup the SER with auth enable&nbsp; for MySQL&nbsp;( and radius 
  also .. at a time only one is used ) &nbsp;I am able to see that if user is 
  not in database he is not able to login to SOFTPHONE .... Now I want 
  to&nbsp;&nbsp; enable&nbsp; accounting also&nbsp; ,,, 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&nbsp; file&nbsp; nothing is getting 
  inserted into database .. in the form of accounting information..</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>At the same time where can i get the information about .. what is a 
  information stored in each mysql table</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>---------------------------------------------------------------------------------------------------------------------------------</DIV>
  <DIV><STRONG>my ser.cfg file is as follows ( where i have compiled ser with 
  all the module enable)</STRONG></DIV>
  <DIV>------------------------------------------------------------------------------------------------------------------------------------</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>[root@test ser]# cat ser.cfg<BR>#<BR># $Id: ser.cfg,v 1.21.4.1 2003/11/10 
  15:35:15 andrei Exp $<BR>#<BR># simple quick-start config script<BR>#</DIV>
  <DIV># ----------- global configuration parameters 
  ------------------------</DIV>
  <DIV>debug=5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # debug level 
  (cmd line: 
  -dddddddddd)<BR>fork=yes<BR>log_stderror=yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  # (cmd line: -E)</DIV>
  <DIV>/* Uncomment these lines to enter debugging 
  mode<BR>debug=7<BR>fork=no<BR>log_stderror=yes<BR>*/</DIV>
  <DIV>check_via=no&nbsp;&nbsp;&nbsp; # (cmd. line: 
  -v)<BR>dns=no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 
  (cmd. line: -r)<BR>rev_dns=no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # (cmd. line: 
  -R)<BR>port=5060<BR>children=4<BR>fifo="/tmp/ser_fifo"</DIV>
  <DIV># ------------------ module loading 
  ----------------------------------</DIV>
  <DIV># Uncomment this if you want to use SQL database<BR>loadmodule 
  "/usr/local/lib/ser/modules/mysql.so"</DIV>
  <DIV>loadmodule "/usr/local/lib/ser/modules/sl.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/tm.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/rr.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/maxfwd.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/usrloc.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/registrar.so"</DIV>
  <DIV># Uncomment this if you want digest authentication<BR># mysql.so must be 
  loaded !<BR>loadmodule "/usr/local/lib/ser/modules/auth.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/acc.so"<BR>loadmodule 
  "/usr/local/lib/ser/modules/auth_db.so"<BR>#loadmodule 
  "/usr/local/lib/ser/modules/auth_radius.so"</DIV>
  <DIV># ----------------- setting module-specific parameters 
  ---------------</DIV>
  <DIV># -- usrloc params --</DIV>
  <DIV># -- auth_radius params --<BR>#modparam("auth_radius", "radius_config", 
  "/usr/local/etc/radiusclient/radiusclient.conf")</DIV>
  <DIV><BR>#modparam("usrloc", "db_mode",&nbsp;&nbsp; 0)</DIV>
  <DIV>&nbsp;</DIV>
  <DIV># --domain module--<BR>modparam("usrloc", "db_url", 
  "mysql://ser:heslo@localhost/ser")<BR>#modparam("domain", "db_mode", 
  1)<BR>#modparam("domain", "domain_table", "domain")<BR>#modparam("domain", 
  "domain_col", "domain")</DIV>
  <DIV># --acc params--<BR>modparam("acc", "log_level", 1)<BR>modparam("acc", 
  "log_flag", 2)<BR>#modparam("acc", "log_missed_flag", 2)<BR>#modparam("acc", 
  "log_fmt", "fimos")<BR>#modparam("acc", "db_url", 
  "mysql://ser:heslo@localhost/ser")<BR>#modparam("acc", "db_missed_flag", 
  2)</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV><BR># Uncomment this if you want to use SQL database<BR># for persistent 
  storage and comment the previous line<BR>modparam("usrloc", "db_mode", 
1)</DIV>
  <DIV># -- auth params --<BR># Uncomment if you are using auth 
  module<BR>#<BR>modparam("auth_db", "calculate_ha1", yes)<BR>#<BR># If you set 
  "calculate_ha1" parameter to yes (which true in this config),<BR># uncomment 
  also the following parameter)<BR>#<BR>modparam("auth_db", "password_column", 
  "password")</DIV>
  <DIV># -- rr params --<BR># add value to ;lr param to make some broken UAs 
  happy<BR>modparam("rr", "enable_full_lr", 1)</DIV>
  <DIV># -------------------------&nbsp; request routing logic 
  -------------------</DIV>
  <DIV># main routing logic</DIV>
  <DIV>route{</DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # initial sanity checks -- 
  messages with<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # max_forwards==0, 
  or excessively long requests<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
  (!mf_process_maxfwd_header("10")) 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  sl_send_reply("483","Too Many 
  Hops");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  };<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( msg:len &gt; max_len ) 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  sl_send_reply("513", "Message too 
  big");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };</DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # we record-route all messages 
  -- to make sure that<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 
  subsequent messages will go through our proxy; 
  that's<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # particularly good if 
  upstream and downstream entities<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  # use different transport 
  protocol<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  record_route();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # loose-route 
  processing<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (loose_route()) 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  t_relay();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };</DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # if the request is for other 
  domain use UsrLoc<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # (in case, it 
  does not work, use the following 
  command<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # with proper names and 
  addresses in it)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
  (uri=='192.168.1.246') {</DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  if (method=="REGISTER") {</DIV>
  <DIV># Uncomment this if you want to use digest 
  authentication<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  if (!www_authorize("192.168.1.246", "subscriber")) 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  www_challenge("192.168.1.246", 
  "0");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  };</DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  save("location");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  };</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  # native SIP destinations are handled using our USRLOC 
  DB<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  if (!lookup("location")) 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  sl_send_reply("404", "Not 
  Found");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  };<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  };<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # forward to current uri now; 
  use stateful forwarding; that<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 
  works reliably even if we forward from TCP to 
  UDP<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; if (!t_relay()) 
  {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  sl_reply_error();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };</DIV>
  <DIV>}</DIV>
  <DIV>&nbsp;</DIV>
  <DIV><BR>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV><STRONG>Please see teh table list </STRONG></DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>[root@test ser]# mysql<BR>Welcome to the MySQL monitor.&nbsp; Commands 
  end with ; or \g.<BR>Your MySQL connection id is 376 to server version: 
  3.23.58</DIV>
  <DIV>Type 'help;' or '\h' for help. Type '\c' to clear the buffer.</DIV>
  <DIV>mysql&gt; use ser<BR>Reading table information for completion of table 
  and column names<BR>You can turn off this feature to get a quicker startup 
  with -A</DIV>
  <DIV>Database changed<BR></DIV>
  <DIV>mysql&gt; show tables<BR>&nbsp;&nbsp;&nbsp; -&gt; 
  ;<BR>+-----------------------+<BR>| 
  Tables_in_ser&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>+-----------------------+<BR>| 
  acc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| active_sessions&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |<BR>| 
  aliases&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  config&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  domain&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  event&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  grp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  location&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  | <BR>| missed_calls&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  pending&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  phonebook&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| preferences&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  reserved&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| server_monitoring&nbsp;&nbsp;&nbsp;&nbsp; |<BR>| server_monitoring_agg 
  |<BR>| 
  silo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  subscriber&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  uri&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>| 
  version&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  |<BR>+-----------------------+<BR>19 rows in set (0.00 sec)</DIV>
  <DIV>&nbsp;</DIV>
  <P>
  <HR SIZE=1>
  Yahoo! Mail Mobile<BR><A 
  href="http://us.rd.yahoo.com/mail_us/taglines/mobile/*http://mobile.yahoo.com/learn/mail">Take 
  Yahoo! Mail with you!</A> Check email on your mobile phone.
  <P>
  <HR>

  <P></P>_______________________________________________<BR>Serusers mailing 
  list<BR>serusers@lists.iptel.org<BR>http://lists.iptel.org/mailman/listinfo/serusers<BR></BLOCKQUOTE></BODY></HTML>