Asterisk cdr viewer настройка

Что такое Asterisk CDR Viewer?

Надеюсь, что Вы уже знаете, что такое CDR и для чего он нужен. И (руководствуясь статьями, в т.ч. с этого сайта) уже настроили свою систему asterisk для сохранения информации о звонках в базу данных (MySQL). И теперь Вам хотелось бы не просто "залезать" в базу MySQL чем-то неудобным (типа PHP MyAdmin), а просматривать кто, куда и сколько звонил (или дать такую возможность людям, которые ничего не понимают в PHP, MySQL, Apache. ).

Так вот, Asterisk CDR Viewer — это та "фишка", которая позволит просматривать звонки в удобном виде, а также (что немаловажно) фильтровать информацию о звонках, делать выборки (и делать выводы на основании этих выборок).

Asterisk CDR Viewer может работать с различными версиями asterisk: как 1.8 (и ниже), так и 10-й, 11-й, а также с самыми новыми версиями астериска (12-й и 13-й).

Где скачать asterisk-cdr-viewer

Официальный сайт — https://code.google.com/p/asterisk-cdr-viewer/. Учитывая, что code.google.com закрывается в 2015/2016 гг., ищите копии проекта например, на GitHub. Вы также можете скачать его прямо у нас.

Команды для скачивания asterisk-cdr-viewer с официального сайта:
cd /usr/src
wget http://asterisk-cdr-viewer.googlecode.com/svn/trunk/asterisk-cdr-viewer-latest.tgz

cd /usr/src
svn checkout http://asterisk-cdr-viewer.googlecode.com/svn/trunk/ asterisk-cdr-viewer

Что нужно для установки Asterisk CDR Viewer?

В первую очередь, для установки Asterisk CDR Viewer нужен web-сервер. В ОС Linux одним из наиболее популярных веб серверов является Apache. Поэтому его необходимо установить на той же машине, где будет установлен Asterisk CDR Viewer. Кроме того, требуется поддержа PHP и MySQL для PHP.

Для того, чтобы установить это всё, выполните команды (в CentOS):
yum -y install httpd php php-mysql

Читайте также:  Ужастик про новый год

После чего (разумеется) не забудьте настроить автозапуск сервера apache при старте системы (или хотя бы запустить вручную демон httpd).

Установка Asterisk CDR Viewer

Распаковка файлов asterisk-cdr-viewer

В папке с загруженным tgz архивом выполните следующие команды:
tar -xzvf asterisk-cdr-viewer-latest.tgz
В случае, если Вы скачали asterisk-cdr-viewer через SVN, разархивировать ничего не нужно.

Копирование файлов asterisk-cdr-viewer

Скопируйте папку с разархивированными файлами в корень сайта apache ( по умолчанию /var/www/html/ ), а файл asterisk-cdr-viewer.conf (из папки contrib/httpd) — в папку с конфигурацией apache ( по умолчанию — /etc/httpd/conf.d/ ).
После этого измените настройки (в частности, настройки подключения к базе данных) в файле include/config.inc.php.

Настройка конфигурации asterisk-cdr-viewer

В минимальном варианте (если не требуется защищать отчет о звонках паролем и т.п.) файл с конфигурацией asterisk-cdr-viewer.conf для apache вообще копировать не обязательно. Но в этом случае папка с файлами asterisk cdr viewer должна находится в корне (или ниже корня) web-сайта apache. И обращаться можно к asterisk cdr viewer только по имени папки. Зато перезагружать сам сервис httpd не нужно: apache автоматически "подхватит" и сможет отобразить залитые в соответствующую папку файлы.

Что касается конфигурации asterisk-cdr-viewer (а точнее, той её части, которая отвечает за подключение к MySQL), то настраивается она следующим образом: в файле config.inc.php, который находится в подпапке include проекта asterisk-cdr-viewer, измените следующие строки:

На этом установка Asterisk CDR Viewer завершена. Теперь откройте сайт:
http:// /asterisk-cdr-viewer/
например:
http://192.168.1.10/asterisk-cdr-viewer/

Должен открыться веб-интерфейс. в котором можно просматривать звонки asterisk.

Расширение функциональности Asterisk CDR Viewer

Вы можете добавить функционала в пакет, ознакомившись со статьей: "Допиливаем" Asterisk CDR Viewer под себя.

CDR (Call Data Record) содержит информацию о всех звонках, которые обрабатывала IPPBX(в нашем случае Asterisk) в том числе несостоявшихся. Многим администраторам, которые обслуживает телефонию CDR являются источником информации, с которого следует начинать диагностику проблемы.

В сегодняшней статье мы расскажем как записывать Asterisk CDR в базу данных MySQL и как просматривать эти самые записи с помощью Asterisk CDR Viewer.

Читайте также:  Почему лагает мышка в играх

Для настройке на сервере уже должны быть установлены MySQL,Asterisk, Apache, PHP. Мы будем производить настройки на сервере CentOS 6.6 с Asterisk 13.

Первым делом нам нужно создать базу данных и пользователя этой базы данных где будут храниться наши CDR.

Подключаемся к MySQL:

Создаем базу данных:

Даем доступ для пользователя asteriskcdr с паролем ‘ваш пароль’ к базе asteriskcdrdb только с localhost :

Подключаемся к созданной базе asteriskcdrdb:

Теперь нам нужно настроить Asterisk, чтобы он знал куда писать CDR. Переходим в файл /etc/asterisk/cdr_mysql.conf расскоментируем и вносим следующие изменения:

Переходим в консоль Asterisk и выполняем команду :

Убедимся, что модуль загружен и работает:

После этого перезагрузите Asterisk и убедимся, что вызовы записываются в базу: 1.Сделайте любой исходящий вызов, чтобы он прошел через ваш Asterisk. 2. Зайдите в MySQL. 3. Подключитесь к базе asteriskcdrdb :

4. Сделайте общий Select:

Если в выводе вы увидите свой вызов, то значит CDR пишутся корректно и все работает.

Настройка Asterisk CDR Viewer

Если настройки записи CDR в базу данных были выполнены правильно, то можно приступить к настройке Asterisk CDR Viewer.

Скачиваем asterisk-cdr-viewer-1.0.2.tgz в папку /var/www и разархивируем

Переносим файл алиаса в папку с httpd

Изменяем настройки подключения к БД для Asterisk-CDR-viewer

Нужно поменять параметры в соответствии с текущей конфигурацией вашей базы:

Посмотрим результаты вывода:

По умолчанию доступ к просмотру статистики имеют все пользователи, исправим это сделав доступ через авторизацию.

В /etc/httpd/conf.d/asterisk-cdr-viewer.conf расскоментируем все строки:

Создаем пользователя и пароль для подключение к asterisk cdr viewer:

Добавим созданного нами пользователя в /var/www/asterisk-cdr-viewer/include/config.inc.php

Теперь при попытке зайти в viewer вы увидите приглашения для ввода логина и пароля:

Настроем возможность записи разговоров:

В файле /var/www/asterisk-cdr-viewer/include/config.inc.php указаны настройки по умолчанию:

Читайте также:  Kingdian прошивка ssd s280

Если вы хотите можно поменять формат или директорию, если нет, то в ваш диалплан добавляем следующие строки и провряем:

На этом наша настройка закончена.

Если вы в статье нашли ошибки или несоответствия, мы будем благодарны, если вы напишите нам о них в комментариях.

CDR (Call Data Record), позволяет в MySQL базе данных вести статистику активности звонков.

На тесте настрою Asterisk CDR и Asterisk CDR Viewer в Ubuntu Server.
Предположим что Asterisk уже установлен.

Сначала установим необходимые компоненты:

Приступим к созданию базы данных в которую будут сохранятся записи о звонках.
Подключимся к MySQL:

Создадим базу данных:

Создадим пользователя asteriskcdr:

Переключимся на базу asteriskcdrdb:

И создадим таблицу:

На этом создание базы завершено, теперь перейдем к настройке конфигурационного файла /etc/asterisk/cdr_mysql.conf, стандартно все строки в нем закомментированы.
Раскомментируем и укажем параметры для подключения к mysql базе в секции [global]:

В файле конфигурации модулей /etc/asterisk/modules.conf должен быть прописан на загрузку модуль cdr_mysql.so:

Вручную из консоли asterisk его можно загрузить так:

После загрузки модуля при поступлении звонков должны заносится данные в базу, посмотрим есть ли что-то:

По сути теперь можно использовать данные из базы любым удобным способом, например дописать к какому нибудь биллингу скрипты статистики и графиков.
Мы же настроим готовый Asterisk CDR Viewer.
Скачаем файлы и переместим в директорию веб-сервера:

Русскую версию можно найти тут https://github.com/prog-it/Asterisk-CDR-Viewer-Mod

Скопируем файл с веб-конфигурацией в директорию с веб-сервером apache2:

Укажем настройки подключения к базе данных для Asterisk-CDR-viewer в файле /var/www/asterisk-cdr-viewer/include/config.inc.php

После чего уже можно будет просматривать статистику открыв в браузере http://СЕРВЕР/acdr

В версии 1.0.9 заметил опечатку в коде, из-за которой отображался белый экран а в логах была ошибка: