Установка модуля 1С от МИКО на FreePBX 2.11 c Asterisk 11
В рамках данной статьи, показано как в несколько шагов настроить модуль интеграции 1С от компании МИКО c IP-PBX Asterisk.
Следует учесть, что описанные в статье правки корректны только для дистрибутива компании VoxLink!
1) Настройка HTTP сервера Asterisk: Settings → Advanced Settings Asterisk Builtin mini-HTTP server привести к виду указанному на скриншоте:
2) Создание AMI пользователя во FreePBX: Settings → Asterisk Manager Users создать пользователя 1cami с правами read (call, user, cdr) и write (call, reporting, originate). В поле permit пекомендуется прописать ip-адресс сервера 1С.
Проверка корректности выполняется командой asterisk -rx ‘manager show users’, которая выводит список пользователей AMI.
username
———
admin
fop2_user
1cami
3) В файл /etc/asterisk/manager_custom.conf необходимо добавить параметры:
[general](+)
webenabled=yes
allowmultiplelogin=yes
httptimeout=60
1, 2 пункты можно проверить командой asterisk -rx ‘http show status’
HTTP Server Status:
Prefix: /asterisk Server Enabled and Bound to 0.0.0.0:8088
Enabled URI’s:
/asterisk/httpstatus => Asterisk HTTP General Status
/asterisk/phoneprov/… => Asterisk HTTP Phone Provisioning Tool
/asterisk/amanager => HTML Manager Event Interface w/Digest authentication
/asterisk/arawman => Raw HTTP Manager Event Interface w/Digest authentication
/asterisk/manager => HTML Manager Event Interface
/asterisk/rawman => Raw HTTP Manager Event Interface
/asterisk/static/… => Asterisk HTTP Static Delivery
/asterisk/amxml => XML Manager Event Interface w/Digest authentication
/asterisk/mxml => XML Manager Event Interface
/asterisk/ws => Asterisk HTTP WebSocket
Enabled Redirects: None.
4) Далее необходимо скачать плагин под текущую версию дистрибутива (2.11.3.18) по ссылке http://wiki.miko.ru/astpanel:ats:freepbx_distro#dokuwiki__top
Внести правки в файлы модуля pt1c (предварительно распаковав).
Следует обратить внимание, что далее в тексте указаны примерные номера строк, которые необходимо закомментировать.
— файл uninstal.php — желательно переименовать
— файл functions.inc.php закомментировать указанные секции:
все, что находится между строками:
if(version_compare($ver_core, ‘2.8.1.2’, ‘>’) && method_exists($core_conf, «addResOdbc»)){
……
}else{
Номера строк примерно 29-37
if(!is_file($file_res_odbc)){
……..
}
if(is_file($file_res_odbc)){
Номера строк примерно 41-42
if(is_file($file_res_odbc)){
………..
}
$file_cel_odbc = $amp_conf[‘ASTETCDIR’].’/cel_odbc.conf’;
Номера строк примерно 46-57
$file_cel_odbc = $amp_conf[‘ASTETCDIR’].’/cel_odbc.conf’;
if(!is_file($file_cel_odbc)){
……………
}
if(is_file($file_cel_odbc)){
$section = ‘PT1C_cel’;
Номера строк примерно 62-63
if(is_file($file_cel_odbc)){
$section = ‘PT1C_cel’;
………
}
}
// правка pbxinaflash
Номера строк примерно 67-74
Option = 3
*/
……….
}
}// odbc settings
Номера строк примерно 97-108
$file_http_conf = $amp_conf[‘ASTETCDIR’].’/http.conf’;
if(!is_file($file_http_conf)){
…………
}
edit_ini_file($file_http_conf, $section, $user_key, $user_value);
Номера строк примерно 320-321
— файл install.php закомментировать строку
pt1s_check_configs_file();
Номер строки примерно 169
-файл pt1c/bin/pt1s_check_configs_file.php закомментировать код функции
pt1s_check_configs_file:
function pt1s_check_configs_file($is_new=true){
global $amp_conf;
……….
}?>
Номера строк примерно 38-155
А также полностью всю функцию pt1c_change_web_manager
Номера строк примерно 17-33
5) В директории с исходниками также находятся три папки с исправленными модулями FreePBX cdr, core, fax. В них несколько архивов — распаковать только под установленную версию FreePBX
Правки в модулях cdr, core и fax — простым копированием содержимого в директорию модулей freepbx (как рекомендуется в wiki МИКО) установку производить не стоит.
Лучше внести необходимые дополнения вручную в файлы самой системы FreePBX, благо все изменения МИКО обрамили комментариями вида «PT1C» (найти вхождения можно командой grep -ri «PT1C» /путь_к_директории_с_установочными_файлами/)
-Модуль cdr — не нуждается в конфигурировании
— Модуль fax — найти в файле functions.inc.php исходников модуля от МИКО участки кода обрамленные комментариями /*; PT1C ; START*/ /*; PT1C ; END */ и перенести их в соответсвующие места файла /var/www/html/admin/modules/fax/functions.inc.php
— Модуль core — найти в файле functions.inc.php исходников модуля от МИКО участки кода обрамленные комментариями PT1C START PT1C END и перенести их в соответсвующие места файла /var/www/html/admin/modules/core/functions.inc.php
6) Директорию pt1c после внесения правок необходимо поместить в /var/www/html/admin/modules/ и выполнить установку локальных модулей через веб-интерфейс FreePBX в разделе Admin → Module Admin. После установки в разделе Settings будет новый подраздел Asterisk AJAM Settings (PT1C).
7) Далее необходимо произвести настройку установленного модуля через freepbx Settings → Asterisk AJAM Settings (PT1C)
8) В файл cdr_adaptive_odbc.conf необходимо добавить подключение к БД и работу с таблицей PT1C_cdr, которую создает модуль при установке
[PT1C_Global]
connection=asteriskcdrdb
table=PT1C_cdr
alias recordingfile=>recordingfile
alias start=>calldate
alias did=>did
9) Важно в iptables разрешить tcp трафик на порт 8088 для сервера 1С
10) Проверить настройки можно, выполнив в браузере запрос http://ipadress_asteriska:8088/asterisk/rawman?action=login&username=1cami&secret=PASSWORD1cami
Если получен ответ как на скриншоте — значит все работает корректно.
11) (Необязательный пункт) Также есть возможность опубликовать AJAM с шифрованием (используется сертификат из модуля pt1c).
В таком случае в файл http_custom.conf необходимо добавить строчки:
[general](+)
tlsenable=yes tlsbindaddr=0.0.0.0:4443
tlscertfile=/etc/asterisk/pt1c_ajam.pem
tlsprivatekey=/etc/asterisk/pt1c_ajam.pem
И в iptables разрешить tcp трафик на порт 4443
На этом подготовка сервера телефонии под интеграцию с 1С от компании МИКО завершена, все дальнейшие работы необходимо проводить на стороне сервера 1С.
Остались вопросы?
Я - Кондрашин Игорь, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
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 сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.