Иван Башлаков
15.06.2020
31867

Обзор и установка веб-панели WebCDR

WebCDR является бесплатным веб-приложением от российских разработчиков, предназначенным для создания удобного интерфейса для доступа к базе данных звонков и их аудиозаписей, генерируемых сервером Asterisk. Панель распространяется под лицензией MIT. WebCDR позволяет с комфортом производить поиск записей звонков, производить их фильтрацию и скачивание в различных форматах. Обзор приложения и основные функции Функционал приложения: Просмотр CDR, фильтрация […]

Обзор и установка веб-панели WebCDR

WebCDR является бесплатным веб-приложением от российских разработчиков, предназначенным для создания удобного интерфейса для доступа к базе данных звонков и их аудиозаписей, генерируемых сервером Asterisk. Панель распространяется под лицензией MIT.

WebCDR позволяет с комфортом производить поиск записей звонков, производить их фильтрацию и скачивание в различных форматах.

Обзор приложения и основные функции

Функционал приложения:

  • Просмотр CDR, фильтрация по дате и времени, телефонному номеру, направлению и статусу;
  • Возможность экспорта данных в таблицу xlsx;
  • Прослушивание записей вызовов с помощью встроенного аудиоплеера HTML5 (mp3, ogg, wav) / резервной копии флэш-памяти (mp3);
  • Возможность скачивания записей звонков по одному или группами (в zip-архиве);
  • Создание пользователей с ограниченным доступом к определенным телефонным номерам;
  • Возможность аутентификации пользователей с помощью Active Directory.
Интерфейс веб-панели WebCDR

Для запуска и работы WebCDR необходимо наличие следующих зависимостей:

  • node.js 4 или более поздней версии;
  • MySQL 5.1+ (SQLite, Postgres, MSSQL также могут работать, но требуют ручной настройки).

Установка зависимостей

Установка node.js:

Для начала необходимо установить менеджер пакетов NVM:

sudo apt install -y gcc-c++ make
sudo curl -sL https://rpm.nodesource.com/setup_6.x | sudo -E bash -

проверяем список доступных версий:

nvm ls-remote

устанавливаем последнюю стабильную версию (LTE):

nvm install 12.16.1

проверяем, успешно ли выполнена установка:

nvm list

далее указываем менеджеру nvm какую версию использовать

nvm use 12.16.1

Для успешного запуска WebCDR осталось установить такие инструменты, как БД MySQL и веб-сервер Apache:

sudo apt install mysql httpd

Добавляем apache и mysql в автозагрузку и запускаем их:

systemctl enable httpd
systemctl enable mysql
systemctl start httpd
systemctl start mysql

Проверяем, что сервер apache запустился и работает:

# netstat -tulnp | grep httpd
>tcp6       0      0 :::80        :::*     LISTEN 21586/httpd

Затем в файрволле разрешим подключения к apache:

 firewall-cmd --zone=public --permanent --add-service=http
 firewall-cmd --zone=public --permanent --add-service=https
 firewall-cmd --reload

Проверим работу Apache, перейдя в веб-браузере по адресу сервера, на который мы производили установку:

Информационная страница Apache

Настройка MySQL

Произведем начальную настройку безопасности MySQL с помощью команды:

sudo mysql_secure_installation

Затем подключимся к серверу MySQL и отключим модуль validate_password_special_char_count

sudo mysql

mysql> UNINSTALL PLUGIN validate_password;

Проверим какой метод аутентификации пользователей используется сервером

mysql>SELECT user,authentication_string,plugin,host FROM mysql.user;

Если пользователь root использует авторизацию с помощью плагина auth_socket, то мы можем изменить этот параметр, для того чтобы была возможность авторизации по связке логин/пароль

mysql>ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Применяем изменения:

mysql>FLUSH PRIVILEGES;

Проверяем

mysql>SELECT user,authentication_string,plugin,host FROM mysql.user;
Таблица настроек доступа к серверу MySQL

Затем создаем базу данных с необходимой структурой с помощью скрипта, созданного разработчиками WebCDR:

cd PATH_TO_WEBCDR/install
mysqladmin create asteriskcdrdb
mysql asteriskcdrdb -uuser -ppassword < db.sql

Конфигурация подключения модуля WebCDR находится в файле config.ini, для успешного обеспечения связи с MySQL необходимо задать параметры подключения и связку логин/пароль.

Установка WebCDR

После того, как все зависимости установлены и настроены можно перейти непосредственно к установке веб-панели.

Производим установку всех необходимых инструментов node.js, главным из которых является bower:

npm -g install bower browserify
cd PATH_TO_WEBCDR/public
bower install
cd ..
npm install

Производим сборку фронтенда:

npm run build

Запустим сервер:

node server.js

После чего страница WebCDR будет доступна по адресу вашего сервера и порту 9030 (по умолчанию). Стандартные доступы к панели admin/admincdr.

Страница аутентификации панели WebCDR
Страница параметров доступа пользователей веб-паенели
Книга 101 функция Asterisk
Познакомьтесь с возможностями Asterisk. Найдите инструменты, которые помогут вашей компании развиваться.
Скачать книгу
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Остались вопросы?

Я - Компаниец Никита, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование


ближайшие курсы

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.