Logging Calls in MySQL

From JoatWiki
Jump to: navigation, search

Logging Calls in MySQL

(29 Jan 2008) - Following needs to be verified as it is quite old.

In the addons package, there is a module that allows for MySQL logging of calls. It sounded valuable.

  • Create a database in MySQL, call it whatever you like. I used "asteriskcdrdb".
  • Inside of that database, create a table via:
    CREATE TABLE cdr (
      calldate datetime NOT NULL default '0000-00-00 00:00:00',
      clid varchar(80) NOT NULL default "",
      src varchar(80) NOT NULL default "",
      dst varchar(80) NOT NULL default "",
      dcontext varchar(80) NOT NULL default "",
      channel varchar(80) NOT NULL default "",
      dstchannel varchar(80) NOT NULL default "",
      lastapp varchar(80) NOT NULL default "",
      lastdata varchar(80) NOT NULL default "",
      duration int(11) NOT NULL default '0',
      billsec int(11) NOT NULL default '0',
      disposition varchar(45) NOT NULL default "",
      amaflags int(11) NOT NULL default '0',
      accountcode varchar(20) NOT NULL default "",
      uniqueid varchar(32) NOT NULL default "",
      userfield varchar(255) NOT NULL default ""
    );
  • Copy asterisk-addons-1.0.6/configs/cdr_mysql.conf.sample /etc/asterisk/cdr_mysql.conf
  • Edit /etc/asterisk/cdr_mysql.conf and uncomment all of the lines from "[global]" to the end ("sock" need not be uncommented). Make the appropriate changes to hostname, dbname, password, and user.
  • In the asterisk-addons-1.0.6 directory, type "make" and then "make install".
  • Start asterisk. If it's already running, connect to it via "asterisk -r" and type "reload". If you left the "sock" line in cdr_mysql.conf commented out, you might see the following (which can be ignored):
 Mar 15 14:13:35 WARNING[10136]: cdr_addon_mysql.c:330 my_load_module: MySQL database sock file not specified.  Using default
  • Make a call and see if it gets logged.





Comments:

Leave a Comment

Personal tools