В FreePBX нет отчетов, но в cdr db-таблице есть записи
Мы используем Asterisk 1.6.2.20, FreePBX 2.9.0.12. Записи хранятся в таблице базы данных cdr. Но в отчетах нет записей. Кто-нибудь знает причину?
Ниже приведены подробности:
mysql> select count(*) from cdr;
+----------+
| count(*) |
+----------+
| 127 |
+----------+
1 row in set (0.00 sec)
asterisk*CLI> cdr mysql status
Connected to asterisk on socket file default using table cdr for 6 days, 19 hours, 26 minutes, 22 seconds.
Wrote 79 records since last restart.
asterisk*CLI> cdr show status
Call Detail Record (CDR) settings
----------------------------------
Logging: Enabled
Mode: Simple
Log unanswered calls: No
* Registered Backends
-------------------
mysql
The cdr_mysql.conf:
[global]
hostname=localhost
dbname=asterisk
password=asterisk
user=asterisk
userfield=1
loguniqueid=yes
;port=3306
;sock=/tmp/mysql.sock
2 ответа
Проверьте конфигурацию базы данных freepbx в файле:
/admin/libraries/freepbx_conf.class.php
Я решил проблему.
Сначала я установил правильные значения в /etc/freepbx.conf.
Во-вторых, я заменил в /var/www/html/admin/bootstrap.php строку:
'database' => $amp_conf['CDRDBNAME'] ? $amp_conf['CDRDBNAME'] : 'asteriskcdrdb',
с:
'database' => $amp_conf['CDRDBNAME'] ? $amp_conf['CDRDBNAME'] : $amp_conf['AMPDBNAME'],
В-третьих, я заменил в /var/www/html/admin/cdr/lib/defines.php строку:
define ("DBNAME", (( (!isset($amp_conf["CDRDBNAME"]) || !$amp_conf["CDRDBNAME"]) ? "asteriskcdrdb" : $amp_conf["CDRDBNAME"] )) );
с:
define ("DBNAME", (( (!isset($amp_conf["CDRDBNAME"]) || !$amp_conf["CDRDBNAME"]) ? $amp_conf['AMPDBNAME'] : $amp_conf["CDRDBNAME"] )) );