I have installed the latest FreePBX 13 Distro. All is working fine with the exception of CDR reports. They are coming back blank. I am not sure what to look for regarding setup. I do see this in the console if it helps.
[2016-04-06 13:47:27] WARNING[1657]: func_cdr.c:352 cdr_write_callback: CDR requires a value (CDR(variable)=value)
After alot of testing, I found that the mysql database is not getting updated when a call is made. (CDR reports work when you manually add records to the cdr database). Here are the contents of cdr_adaptive_odbc.conf:
[asteriskcdrdb]
connection=asteriskcdrdb
loguniqueid=yes
table=cdr
alias start => calldate
Also cdr_radius.so, cdr_custom.so, and cdr_mysql.so modules are excluded.
Look in the /var/log/asterisk/full file for errors that involve ‘asteriskcdrdb’. My guess is that one of your connectors (perhaps the ODBC connector) is not getting wired into MySQL correctly.
[2016-04-07 12:56:44] NOTICE[11752] res_odbc.c: Connecting asteriskcdrdb
[2016-04-07 12:56:44] WARNING[11752] res_odbc.c: res_odbc: Error SQLConnect=-1 errno=0 [unixODBC][Driver Manager]Can’t open lib ‘/usr/lib64/libmyodbc5.so’ : file not found
[2016-04-07 12:56:44] WARNING[11752] res_odbc.c: Failed to connect to asteriskcdrdb
[2016-04-07 12:56:44] NOTICE[11752] res_odbc.c: Registered ODBC class ‘asteriskcdrdb’ dsn->[MySQL-asteriskcdrdb]
[2016-04-07 12:56:44] WARNING[11752] res_odbc.c: res_odbc: Error SQLConnect=-1 errno=0 [unixODBC][Driver Manager]Can’t open lib ‘/usr/lib64/libmyodbc5.so’ : file not found
[2016-04-07 12:56:44] WARNING[11752] res_odbc.c: Failed to connect to asteriskcdrdb
[2016-04-07 12:56:44] WARNING[11752] cel_odbc.c: No such connection ‘asteriskcdrdb’ in the ‘cel’ section of cel_odbc.conf. Check res_odbc.conf.
[centos@domainname ~]$ uname -a
Linux domainname.com 3.10.0-327.10.1.el7.x86_64 #1 SMP Tue Feb 16 17:03:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[centos@domainname ~]$ updatedb
updatedb: can not open a temporary file for `/var/lib/mlocate/mlocate.db’
[centos@domainname ~]$ locate libmyodbc
[centos@domainname ~]$
2 different posters on the thread with same problem of CDR not working, it looks like bruce installed freepbx on his own distro install, I installed from the latest freepbx distro. i will do the steps and post here, have not had time.
@rtaggart14 - It looks like your problem is in the initialization of Asterisk. Something in your config is not set up correctly and (guessing here) your CDR subsystem isn’t starting at all. Other strings to look for in …/full include “CDR”. “cdrdb” and “asteriskuser”.
At some point, the problem will probably boil down to a “No” that should be “Yes” or a semicolon in front of a context that needs to be included in one of the CDR connection tables.
If it helps, I’m having the same problem right now with my CDR, but mine is a missing ODBC connection string somewhere. Of course, this system hasn’t had a proper “reinstall” since Asterisk 1.4 was cutting edge, so I have to wade through a lot of deprecated config files and files full of stuff that is long since OBE. I’ll get it figured out one of these days - it’s just not a critical error for me at this time.
@brucej1111 - your problem is a missing installation package. The simplest solution (for us) is to recommend you use one of the standard installation packages, since rolling your own seems to be presenting you with significant challenges.
If that isn’t a reasonable solution for you, then you need to start doing YUM updates and installs until you get all of the required packages installed. You are, for sure, missing at least one; if you are missing one, chances are you are missing more.
I don’t know if this will solve your problem, since we’re still not sure what your ACTUAL problem is. There are lots of places where CDR can go wrong, but if you haven’t done the basics, it’s going to be hard to know what else might be going on.
Try doing what I suggested - I don’t search the Internet for possible solutions, read through them looking for possible solutions, and then post the stuff that doesn’t seem to apply.
If you rather go back to just doing all of this yourself, just let us know and we won’t waste any more time on you.