Asterisk + MonAst

(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



2016-09-14T08:28:31
Asterisk