(Ubuntu 14.04 LTS, Asterisk 11, Apache2, MySQL5.5, PHP5.5, FreePBX 2.11 + MonAst3)
Проверяем установлен ли пакет python и его версию
# python —version
Python 2.7.6
Ставим пакет HTTP_Client:
# pear install HTTP_Client
WARNING: «pear/HTTP_Client» is deprecated in favor of «pear/HTTP_Request2»
WARNING: channel «pear.php.net» has updated its protocols, use «pear channel-update pear.php.net» to update
WARNING: «pear/HTTP_Request» is deprecated in favor of «pear/HTTP_Request2»
WARNING: «pear/Net_URL» is deprecated in favor of «pear/Net_URL2»
downloading HTTP_Client-1.2.1.tgz …
Starting to download HTTP_Client-1.2.1.tgz (10,269 bytes)
…..done: 10,269 bytes
downloading HTTP_Request-1.4.4.tgz …
Starting to download HTTP_Request-1.4.4.tgz (17,233 bytes)
…done: 17,233 bytes
downloading Net_URL-1.0.15.tgz …
Starting to download Net_URL-1.0.15.tgz (6,393 bytes)
…done: 6,393 bytes
downloading Net_Socket-1.0.14.tgz …
Starting to download Net_Socket-1.0.14.tgz (5,655 bytes)
…done: 5,655 bytes
install ok: channel://pear.php.net/Net_URL-1.0.15
install ok: channel://pear.php.net/Net_Socket-1.0.14
install ok: channel://pear.php.net/HTTP_Request-1.4.4
install ok: channel://pear.php.net/HTTP_Client-1.2.1
Как видим — в процессе установки говорит об устарении пакета и предлагает поставить более новый:
# pear install HTTP_Request2
WARNING: channel «pear.php.net» has updated its protocols, use «pear channel-update pear.php.net» to update
downloading HTTP_Request2-2.2.1.tgz …
Starting to download HTTP_Request2-2.2.1.tgz (109,716 bytes)
…………………….done: 109,716 bytes
downloading Net_URL2-2.2.0.tgz …
Starting to download Net_URL2-2.2.0.tgz (20,071 bytes)
…done: 20,071 bytes
install ok: channel://pear.php.net/Net_URL2-2.2.0
install ok: channel://pear.php.net/HTTP_Request2-2.2.1
Пакеты Twisted и StarPy будем ставить из исходников.
# cd /usr/src/
# wget https://pypi.python.org/packages/source/T/Twisted/Twisted-15.5.0.tar.bz2#md5=0831d7c90d0020062de0f7287530a285
# apt-get install python-starpy
# tar -xvf Twisted-15.5.0.tar.bz2
# cd Twisted-15.5.0/
# python setup.py install
Traceback (most recent call last):
File «setup.py», line 13, in <module>
import setuptools
ImportError: No module named setuptools
Выдало ошибку о недоступности пакета setuptools
Ставим его:
# wget https://bootstrap.pypa.io/ez_setup.py -O — | python
Finished processing dependencies for setuptools==19.2
Повторяем после установки соответствующего пакета
# python setup.py install
twisted/test/raiser.c:4:20: fatal error: Python.h: Нет такого файла или каталога
#include «Python.h»^
compilation terminated.
error: command ‘x86_64-linux-gnu-gcc’ failed with exit status 1
Снова ругается
Применим команду на установку python с библиотеками
# apt-get install python-dev
После повторим ввод команды
# python setup.py install
Finished processing dependencies for Twisted==15.5.0
Готово!
Ну и самый главный виновник торжества. На момент написания актуальная версия — 3.0b4:
# wget http://downloads.sourceforge.net/project/monast/Monast%20for%20Asterisk%201.4%2C%201.6%20and%201.8/3.0b4/monast-3.0b4.tar.gz
# tar -xvf monast-3.0b4.tar.gz
# cd monast-3.0b4
# ./install.sh
Для Ubuntu — копируем скрипт от Debian и добавляем его в автозагрузку:
# cp contrib/init.d/rc.debian.monast /etc/init.d/monast
# chmod 755 /etc/init.d/monast
# update-rc.d monast defaults 91 60
Настроим /etc/monast.conf
[global]
# Bind client connetions on host:port
bind_host = 127.0.0.1
bind_port = 5039
# Use client autentication on browser.
#auth_required = false ; по умолчанию
auth_required = true ; Указываем что аутентификация обязательна
##
## Servers Definitions
##
[server: Amazon] # Server name can not contains space
hostname = 127.0.0.1
hostport = 5038
username = monast
password = password
# Default user context
#default_context = default ; по умолчанию
default_context = from-internal ; для FreePBX
# Context to use in transfer calls
#transfer_context = default ; по умолчанию
transfer_context = from-internal ; для FreePBX
# Context and prefix for meetme
#meetme_context = default ; по умолчанию
meetme_context = from-internal ; для FreePBX
meetme_prefix =.
#[server: Server_2] # Server name can not contains space
#hostname = 192.168.0.2
#hostport = 5038
#username = ami_username
#password = ami_password
# Default user context
#default_context = default
# Context to use in transfer calls
T#ransfer_context = default
# Context and prefix for meetme
#meetme_context = default
#meetme_prefix =
[user: ubuntu]
secret = secret
roles = originate,queue,command,spy
servers = ALL
Запуск
# /etc/init.d/monast start
Starting MonAst… [OK]
Все. Можно подключаться и проверять. Открываем браузер и в строке адреса вбиваем: http://localhost/monast/
Источники: http://habrahabr.ru/post/143053/
http://asterisk-pbx.ru/wiki/artikle/monast