Dear All, Greetings,
I am working Kamailio (4.0.1) server with GUI package Siremis (4.0) of it. I was successful in get through Calls and SMS features in our VoIP phones using this kamailio sever. And now i am trying to get GUI for my kamailio server with SIREMIS (4.0.0) package. Installation was good as i am getting subscribers list in GUI which are in MySQL database. As it comes accounting section. i am Failed to get the CDR list when the call session between two clients have been done. I gone through Acc module's documentation and followed the following links to set up the accounting in GUI :
http://kb.asipto.com/siremis:install40x:accounting.
And i read this is description in accounting module documentation : 'Note that CDR generation does not involve any kind of database storage (yet). In order to persist the CDRs into a database you will have to set up an exterior process (i.e., a script living outside of Kamailio) and implement the storage task yourself'. So what does it mean ? should i have to install external process like CDR tool and Freeradius?
Or is there any other way to get the CDR related information in GUI using database backend.
Please find below my kamailio configuration file.
By the way CDR data is logged to syslog fine, but i dont know where is wrong for database backend.
Any help will greatly appreciate.
Regards, Nandini
Hello,
On 7/29/13 8:23 AM, Nandini madhu wrote:
Dear All, Greetings,
I am working Kamailio (4.0.1) server with GUI package Siremis (4.0) of it. I was successful in get through Calls and SMS features in our VoIP phones using this kamailio sever. And now i am trying to get GUI for my kamailio server with SIREMIS (4.0.0) package. Installation was good as i am getting subscribers list in GUI which are in MySQL database. As it comes accounting section. i am Failed to get the CDR list when the call session between two clients have been done. I gone through Acc module's documentation and followed the following links to set up the accounting in GUI :
http://kb.asipto.com/siremis:install40x:accounting.
And i read this is description in accounting module documentation : 'Note that CDR generation does not involve any kind of database storage (yet). In order to persist the CDRs into a database you will have to set up an exterior process (i.e., a script living outside of Kamailio) and implement the storage task yourself'. So what does it mean ? should i have to install external process like CDR tool and Freeradius?
Or is there any other way to get the CDR related information in GUI using database backend.
Please find below my kamailio configuration file.
By the way CDR data is logged to syslog fine, but i dont know where is wrong for database backend.
siremis creates cdrs table and installs a stored procedure that has to executed periodically. It does not relate to the syslog cdrs from acc module (which rely on dialog module).
Be sure you activated WITH_ACCDB in your config file or watch the syslog file to see if there are some errors.
Cheers, Daniel
Dear Sir,
Ya i have activated WITH_ACCDB in kamailio cfg file. Siremis is configured to kamailio DB properly as i am getting accounting list in the siremis GUI well, but only the CDR data is not getting reflecting in GUI.
But this CDR data is successfully logging into syslog (see the paragraph below), but my requirement is to get the CDR data to be reflect in my GUI.
Here below is the CDR data that logged into syslog:
Aug 3 17:36:25 kamailio /usr/local/sbin/kamailio[12391]: INFO: acc [acc.c:275]: acc_log_request(): ACC: transaction answered: timestamp=1375531585;method=INVITE;from_tag=170287292812;to_tag=373699520912;call_id=6595ee13-bfec-15a7-ae-4b-00210705d550@192.168.2.99;code=200;reason=OK;src=;dst= Aug 3 17:36:25 kamailio /usr/local/sbin/kamailio[12393]: INFO: acc [acc.c:275]: acc_log_request(): ACC: request acknowledged: timestamp=1375531585;method=ACK;from_tag=170287292812;to_tag=373699520912;call_id=6595ee13-bfec-15a7-ae-4b-00210705d550@192.168.2.99;code=200;reason=OK;src=;dst= Aug 3 17:36:29 kamailio /usr/local/sbin/kamailio[12391]: INFO: acc [acc_cdr.c:192]: write_cdr(): st=1375531585.654; et=1375531588.863; duration=3.209; src_user=102; src_domain=192.168.2.41; src_ip=192.168.2.99; dst_ouser=101; dst_user=101; dst_domain=192.168.2.77
And my kamailio.cfg script relating to CDR's is like this:
/* enhanced DB accounting */ #!ifdef WITH_ACCDB modparam("acc", "db_flag", FLT_ACCDB) /* FLT_ACCDB is 2 */ modparam("acc", "db_missed_flag", FLT_ACCMISSED) /* FLT_ACCMISSED is 3 */ modparam("acc", "db_url", mysql://kamailio:kamailiorw@kamailio/kamailio) #modparam("acc", "db_extra","src_user=$fU;src_domain=$fd;src_ip=$si;""dst_ouser=$tU;dst_user= $rU;dst_domain=$rd;""duration=$DLG_lifetime") #modparam("acc", "db_extra","${cdr_extra}") modparam("acc", "db_extra","src_user=$fU;src_domain=$fd;src_ip=$si;""dst_ouser=$tU;dst_user= $rU;dst_domain=$rd") modparam("acc", "db_table_acc", "acc") #modparam("acc", "db_table_acc", "acc_$time(year)_$time(mon)") modparam("acc", "db_table_missed_calls", "missed_calls") modparam("acc", "acc_method_column", "method") modparam("acc", "acc_from_tag_column", "from_tag") modparam("acc", "acc_to_tag_column", "to_tag") modparam("acc", "acc_callid_column", "callid") modparam("acc", "acc_sip_code_column", "sip_code") modparam("acc", "acc_sip_reason_column", "sip_reason") modparam("acc", "acc_time_column", "time") modparam("acc", "db_insert_mode", 0) #!endif
# -------- for siremis CDRs ----------- modparam("acc", "cdr_enable", 1) modparam("acc", "cdr_start_on_confirmed", 1) modparam("acc", "cdr_facility", "LOG_DAEMON") #modparam("acc", "cdr_extra", "c1=$dlg_var(caller);c2=$dlg_var(callee)") modparam("acc", "cdr_extra", "src_user=$fU;src_domain=$fd;src_ip=$si;""dst_ouser=$tU;dst_user=$rU;dst_domain=$rd") modparam("acc", "cdr_start_id", "st") modparam("acc", "cdr_end_id", "et") modparam("acc", "cdr_duration_id", "duration") . modparam("rtimer", "timer", "name=cdr;interval=300;mode=1;") modparam("rtimer", "exec", "timer=cdr;route=2") modparam("sqlops", "sqlcon", "ca=>mysql://kamailio:kamailiorw@localhost/kamailio") modparam("sqlops", "sqlres", "ra") . . # Populate CDRs Table of Siremis route[2] { sql_query("ca","call kamailio_cdrs()","ra"); }
Can u guess where i am wrong ? how can i solve this issue ?
And for your notice, in acc module document it is said like this: 'Note that CDR generation does not involve any kind of database storage (yet). In order to persist the CDRs into a database you will have to set up an exterior process (i.e., a script living outside of Kamailio) and implement the storage task yourself'. What does it mean ? of course 'cdrs' table in kamailio database is empty.
Regards, Nandini.
-- View this message in context: http://sip-router.1086192.n5.nabble.com/Kamailio-CDR-issue-tp120287p120444.h... Sent from the Users mailing list archive at Nabble.com.