Оглавление
Описание настройки модуля SCCP Manager для Asterisk 14. Компиляция подгружаемого модуля chan_sccp, локализация базы CDR — asteriskcdrdb и кое что еще. Я постарался собрать все рецепты в одну статью и расписать последовательность установки. Единственное, что вынесено это DHCP сервер, который работает на Windows Server. У меня все заработало
Используемые дистрибутивы
FreePBX SNG7-FPBX-64bit-1805-1.iso
Модуль FreePBX SCCP Manager
Модуль Asterisk chan_sccp.so
Телефон Cisco 7942 и файлы локализации
Установка FreePBX
Установка стандартная, с одной оговоркой — при инсталляции выбран Asterisk 14.7.5, а не 15. Почему? Наверное потому что большинство стаей описывают сборку модуля для Asterisk 14 и не хотелось терять время на проблемы с компиляций или того хуже выяснения причины неработоспособности голоса или DTMF, поэтому так. Выбираю локализацияю и временную зону
Свежеустановленный FreePBX
Во избежании неприятностей отключаю автоматическое обновление модулей Admin — Updates
Настройка модуля chan_sccp
Для сборки установим пакет asterisk-devel и для удобства еще несколько пакетов. Модуль собирается корректно, ни каких ошибок при компиляции не выдает
1 2 3 4 5 6 7 8 |
yum install asterisk14-devel mc git htop cd /usr/src git clone https://github.com/chan-sccp/chan-sccp chan-sccp_master cd chan-sccp_master ./configure --enable-conference --enable-advanced-functions --enable-distributed-devicestate make && make install |
Перед созданием таблиц, необходимых для chan_sccp.so и модуля SCCP Manager, я исправил кодировку в файл ./conf/mysql-v5_enum.sql Если этого не сделать, возникают проблемы с отображением имен на русском языке как в модуле, так и на телефоне.
1 2 3 |
ENGINE=INNODB DEFAULT CHARSET=utf8 |
Теперь можно создавать таблицы
1 2 3 |
mysql -u root asterisk < ./conf/mysql-v5_enum.sql |
Копируем файлы конфигурации для FreePBX
1 2 3 4 5 |
cp conf/sccp.conf.freepbx /etc/asterisk/sccp.conf cp conf/sccp_extensions.conf.freepbx /etc/asterisk/sccp_extensions.conf cp conf/sccp_hardware.conf.freepbx /etc/asterisk/sccp_hardware.conf |
И зададим разрешения для asterisk на скопированные файлы
1 2 3 |
chown asterisk:asterisk /etc/asterisk/sccp* |
Отключим модуль chan_skinny.so и добавим в загрузку собранный модуль
vi /etc/asterisk/modules.conf
1 2 3 4 |
noload = chan_skinny.so load = chan_sccp.so |
Перезапускаем asterisk и проверяем доступность модуля
1 2 3 4 |
service asterisk restart asterisk -r |
1 2 3 4 |
freepbx*CLI> sccp show version Skinny Client Control Protocol (SCCP). Release: 4.3.1 develop - 69fdf95M (built by 'root' on '2018-08-17 07:24:44 UTC') |
Поздравляю!!! Модуль загружен!
Настройка MariaDB
Добавим в файл /etc/my.cnf.d/server.cnf следующие строки
1 2 3 4 5 6 7 8 9 10 11 12 |
[server] init-connect = "SET NAMES utf8" character-set-server = utf8 collation-server=utf8_general_ci # this is only for the mysqld standalone daemon [mysqld] init-connect = "SET NAMES utf8" collation-server = utf8_general_ci character-set-server = utf8 |
Добавим в файл vi /etc/my.cnf.d/client.cnf
1 2 3 4 |
[client] default-character-set=utf8 |
Для корректного отображения русских имен в записях CDR, необходимо выполнить следующее
Удалить пакет mysql-connector-odbc-5.2.5-7.el7.x86_64 и установить mariadb-connector-odbc
1 2 3 4 |
rpm -e --nodeps mysql-connector-odbc-5.2.5-7.el7.x86_64 yum install mariadb-connector-odbc |
После чего в файле /etc/odbcinst.ini проверить настройки
1 2 3 4 5 6 7 |
[MariaDB] Description=ODBC for MariaDB Driver=/usr/lib64/libmaodbc.so Setup=/usr/lib64/libodbcmyS.so UsageCount=1 |
Настройка tftpd сервера
Создаем пользователя tftpd, иначе не проход корректна загрузка файлов
1 2 3 |
useradd -d /tftpboot tftpd |
Приводим файл /etc/xinetd.d/tftp к следующему виду и перезапускаем xinetd командой systemctl restart xinetd
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -c -p -u tftpd -U 117 -s /tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } |
Установка SCCP Manager
Скачиваем и устанавливаем модуль SCCP Manager через Admin — Module
После загрузки необходимо его активировать
Если все прошло успешно, то появляется окно, об успешной инсталляции
Система будет ругаться, что есть неподписанный модуль. Можно его подписать, но попросту закрыл сообщение
По большому счету это все, далее можно приступать к настройке телефонов
Настройка шаблонов
Перед добавлением номеров, подготовим шаблоны. У меня телефон 7942. Для этого в директории /tftproot создаю файл SEP0000000000.cnf.xml_7942_template, который скопирован из файла XMLDefault.cnf.xml_template. Не забываем про разрешения
Сброс телефона
Выключаем питание и зажимаем кнопку # Дожидаемся пока начнут мигать кнопки линий, после чего набираем на клавиатуре 123456789*0#
Телефон будет сброшен к заводским настройкам. НО! Возможно загрузка не продолжиться, так как на телефоне и tftp сервере одинаковые прошивки. В результате телефон напрочь отказывается грузиться! В этом случае поможет только альтернативная версия прошивки!!!
Где и куда вставить (файл mysql-v5_enum.sql ) ??? Куда именно вставить тогда строку эту
ENGINE=INNODB DEFAULT CHARSET=utf8
Не совсем понял
нашел где меня
Вопрос, телефон 7921G, как его подключить?
Я бы посоветовал перепрошить на SIP
После чего кладем на сервере TFTP файл с настройками по виду SEPmaxaddr.xml да все
https://www.kost.su/freepbx-cisco-phone/
Есть одна проблема 7921G — wifi-трубка и соответственно подключается только по wifi
Sccp Manager Error
There are Error in the SCCP Module:
Array
(
[tftp_path] => No write permision on tftp DIR
)
Correct these problems before continuing to work.
Open ‘SCCP Conectivity -> Server Config’ to change global settings
Вот с этой ошибкой что делать?
Не хватает прав на запись в каталог TFTP сервера. Пусть указан в настройках модуля
Понятно, а какие должны быть права на запись?
Доброго вечера, в инструкции речь идёт о 14 Asterisk, но в FreePBX SNG7-FPBX-64bit-1805-1.iso, как и ещё одном (с офф сайта FreePBX SNG7-FPBX-64bit-1805-2.iso) даётся выбор либо ток 13 и 15, 14-ой нету, 13 апается максимум до 13.n
не подскажите как быть?
Спасибо.
Добрый день. На сколько я помню, в одном инсталляторе сразу две версии. Пробуйте запустить установку
extentionы добавляются без проблем, но вот с телефонами проблемы. после добавления устройство не появляется в sccp.conf и телефон не регистрируется в *. И при попытке войти снова в панель редактирования только что добавленного телефона freepbx вываливается с ошибкой… кто нибудь сталкивался с такой проблемой?
Добрый день, Андрей.
Вот ведь была такая проблема. После выходных смогу посмотреть, потому что праздники)))
Здравствуйте. Вы так и не ответили по проблеме. Может сейчас время появилось?
Та же проблема.
Вебинтерфес победил установкой пакета не мастер версии, а вот с регистрацией ни как.
sccp_device.c:3355 __sccp_device_find_realtime: — SCCP: Device ‘SEP001B0CDB8F24’ not found in realtime table ‘sccpdeviceconfig’
Realtime load показывает и линию и девайс.