Внимание!
Эта wiki об устаревших версиях
Документация к актуальной версии интеграции 1С и телефонии доступна по ссылке

Инструменты пользователя

Инструменты сайта


doc:1cajam:astcastomize

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

doc:1cajam:astcastomize [2012/04/18 09:53]
nb
doc:1cajam:astcastomize [2014/11/14 22:32]
Строка 1: Строка 1:
-====== Настройка сервера Asterisk для работы с компонентой ====== 
-===== Создание пользователя управляющего Asterisk по manager api ===== 
-Во первых необходимо создать пользователя для управления asterisk. 
-Для этого достаточно внести соответствующую запись в /​etc/​asterisk/​manager.conf, ​ в примере ниже добавлен пользователь //1cami// с паролем //​PASSWORD1cami//​. 
-Важно также в секцию general добавить опции указанные в примере. 
- 
-<file - manager.conf>​ 
-[general] 
-enabled = yes 
-port = 5038 
-bindaddr = 0.0.0.0 
-allowmultiplelogin = yes 
-webenabled = yes 
-httptimeout = 60 
- 
-[1cami] 
-secret = PASSWORD1cami 
-deny=0.0.0.0/​0.0.0.0 
-permit=0.0.0.0/​0.0.0.0 
-read = call,​cdr,​user,​config 
-write = call,​originate,​reporting 
-</​file>​ 
- 
-Для публикации ajam интерфейса,​ через который и работает компонент,​ необходимо после настройки manager.conf,​ настроить файл /​etc/​asterisk/​http.conf 
-Существует 2 варианта публикации. ​ 
-  * С использованием протокола HTTP 
-  * С использованием протокола HTTPS 
- 
-===== Настройка AJAM в режиме HTTP ===== 
-Если мы хотим опубликовать ajam интерфейс на порту 8088 в режиме http, файл http.conf должен выглядеть примерно так: 
- 
-<file - http.conf>​ 
-[general] 
-enabled=yes 
-enablestatic=yes 
-bindaddr=0.0.0.0 
-bindport=8088 
-prefix=asterisk 
-</​file>​ 
- 
-===== Настройка AJAM в режиме HTTPS ===== 
-Если мы хотим опубликовать ajam интерфейс на порту 4443 в режиме https, файл http.conf должен выглядеть примерно так: 
- 
-Для астериск версии 1.6 
- 
-<file - http.conf>​ 
-[general] 
-enabled=yes 
-bindaddr=0.0.0.0 
-bindport=8088 
-prefix=asterisk 
-enablestatic=yes 
- 
-sslenable=yes 
-sslbindaddr=0.0.0.0 
-sslbindport=4443 ​ 
-sslcert = /​etc/​asterisk/​ssl/​ajam.pem 
-</​file>​ 
- 
-Для астериск версии 1.8 и выше 
- 
-<file - http.conf>​ 
-[general] 
-enabled=yes 
-bindaddr=0.0.0.0 
-bindport=8088 
-prefix=asterisk 
-enablestatic=yes 
- 
-tlsenable=yes 
-tlsbindaddr=0.0.0.0:​4443 
-tlscertfile= /​etc/​asterisk/​ssl/​ajam.pem 
-tlsprivatekey= /​etc/​asterisk/​ssl/​ajam.pem 
- 
-</​file>​ 
- 
-Также для https режима необходимо сгенерировать сертификат,​ которым будут шифроваться передаваемые данные. 
-Самый простой способ,​ это генерация самоподписанного сертификата на сервере Asterisk командой:​ 
- 
-<​code>​ cd /tmp 
-openssl req -new -x509 -days 365 -nodes -out /​tmp/​foo.pem -keyout /​tmp/​foo.pem 
-mkdir /​etc/​asterisk/​ssl 
-mv /​tmp/​foo.pem /​etc/​asterisk/​ssl/​ajam.pem 
-</​code>​ 
- 
-===== Настройка папки uploads ===== 
-Если есть необходимость передавать на астериск какие-то файлы, например мы хотим обеспечить печать и отправку факсимильных сообщений,​ нужно настроить папку для приема таких файлов. ​ 
-В Asterisk есть специальный модуль?​ который отвечает за прием файлов через AJAM интерфейс - //​res_http_post.so//​. Этот модуль не всегда устанавливается вмесе с Asterisk по умолчанию,​ т.к. требует установленных пакетов **GMIME** и **GMIME-DEVEL**. После устанвки модуля необходимо настроить секцию post_mappings в файле http.conf ​ 
- 
-<​code>​ 
-[post_mappings] 
-; 
-; In this example, if the prefix option is set to "​asterisk",​ then using the 
-; POST URL: /​asterisk/​uploads will put files in /​var/​lib/​asterisk/​uploads/​. 
-uploads = /​var/​lib/​asterisk/​uploads</​code>​ 
- 
-===== Проверка работы и дополнительные настройки ===== 
- 
-В консоли сервера где установлен Asterisk выполняем следующую команду:​ 
-<​code>​ 
-sudo asterisk -rx "http show status"​ 
-</​code>​ 
-Если все настроено правильно,​ то ответ будет примерно такой: 
- 
-<​code>​HTTP Server Status: 
-Prefix: /asterisk 
-Server Enabled and Bound to 0.0.0.0:​8088 
- 
-HTTPS Server Enabled and Bound to 0.0.0.0:​4433 
- 
-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/​uploads => HTTP POST mapping 
-/​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 
- 
-Enabled Redirects: 
-  None. 
-</​code>​ 
- 
-**Окончательная проверка**:​ 
-Идем в браузере по адресу http://​ipadress_asteriska:​8088/​asterisk/​rawman?​action=login&​username=1cami&​secret=PASSWORD1cami 
- 
-Если в качестве результата получим строку:​ 
-<​code>​Response:​ Success 
-Message: Authentication accepted 
-</​code>​ 
-Значит со стороны Asterisk все настроено правильно. 
- 
-Не забудьте открыть на фаерволе порт 4443 или 8088 чтобы интерфейс ajam был доступен из вне. 
- 
-Например для iptables под управлением CENTOS это делается добавлением строчки в файл /​etc/​sysconfig/​iptables ​ 
-<​code>​ 
--A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp   ​--dport 8088 -j ACCEPT 
--A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp   ​--dport 4443 -j ACCEPT 
-</​code>​ 
- 
- 
- 
-===== Полезные ссылки ===== 
-  * [[http://​habrahabr.ru/​company/​myasterisk/​blog/​130325/​|Про безопасность]] 
-  * [[doc:​1cajam|SDK:​ Компонента связи 1C и Asterisk]] ​ 
- 
- 
-===== Комментарии ===== 
-~~DISQUS~~ 
- 
  
doc/1cajam/astcastomize.txt · Последние изменения: 2014/11/14 22:32 (внешнее изменение)