Trying to set up CDR records using ODBC driver.
sip*CLI> core show version
Asterisk 12.4.0 built by ubuntu @ sip.xxxxx.com on a x86_64 running Linux on 2014-07-25 04:57:36 UTC
sip*CLI> module show like odbc
Module Description Use Count Status
cdr_adaptive_odbc.so Adaptive ODBC CDR backend 0 Running
cdr_odbc.so ODBC CDR Backend 0 Running
cel_odbc.so ODBC CEL backend 0 Running
func_odbc.so ODBC lookups 0 Running
res_config_odbc.so Realtime ODBC configuration 0 Running
res_odbc.so ODBC resource 0 Running
6 modules loaded
sip*CLI> odbc show all
ODBC DSN Settings
-----------------
Name: asteriskcdrdb
DSN: MySQL-asteriskcdrdb
Last connection attempt: 1970-01-01 05:00:00
Pooled: No
Connected: Yes
sip*CLI> cdr show status
Call Detail Record (CDR) settings
----------------------------------
Logging: Enabled
Mode: Simple
Log unanswered calls: Yes
Log congestion: No
* Registered Backends
-------------------
ODBC
csv
cdr-custom
Adaptive ODBC
cdr_manager
When asterisk tries to make an CDR insert into DB bad things happens:
root@sip:/var/log/asterisk# cat full | grep -i odbc
[2014-08-05 18:47:16] WARNING[10834] cdr_odbc.c: cdr_odbc: Error in ExecDirect: -1, query is: INSERT INTO cdr (calldate,clid,src,dst,dcontext,channel,dstchannel,lastapp,lastdata,duration,billsec,disposition,amaflags,accountcode,uniqueid,userfield) VALUES ({ts '2014-08-05 18:47:16'},?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
[2014-08-05 18:47:16] WARNING[10834] res_odbc.c: SQL Execute error! Verifying connection to asteriskcdrdb [MySQL-asteriskcdrdb]...
[2014-08-05 18:47:16] WARNING[10834] cdr_odbc.c: cdr_odbc: Error in ExecDirect: -1, query is: INSERT INTO cdr (calldate,clid,src,dst,dcontext,channel,dstchannel,lastapp,lastdata,duration,billsec,disposition,amaflags,accountcode,uniqueid,userfield) VALUES ({ts '2014-08-05 18:47:16'},?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
I can insert a row into asteriskcdrdb table via ODBC driver:
root@sip:/var/log/asterisk# echo 'insert into asteriskcdrdb.cdr (calldate) VALUES ("0000-00-00 00:00:00");' | isql -v MySQL-asteriskcdrdb asteriskuser 2Nv6kUAtRrC76y7jL
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> insert into asteriskcdrdb.cdr (calldate) VALUES ("0000-00-00 00:00:00");
SQLRowCount returns 1
root@sip:/var/log/asterecho 'select * from asteriskcdrdb.cdr;' | isql -v MySQL-asteriskcdrdb asteriskuser 2Nv6kUAtRrC76y7jL
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> select * from asteriskcdrdb.cdr;
SQLRowCount returns 1
1 rows fetched
Any clues would be appreciated!