Man вики
Advertisement

Описание

MonAst позиционируется разработчиками как инструмент мониторинга, который действует как панель оператора для Asterisk. Распространяется по лицензии BSD. Проект написан с использованием Python

Из возможностей просмотра (в режиме real-time) — следующее:

  • Работа с несколькими серверами (с помощью переключения между ними)
  • Многопользовательский режим с указанием прав доступа
  • Отображение пользователей и пиров (SIP, IAX, DAHDI, Khomp, etc...)
  • Отображение активных каналов и вызовов (с именем канала и CallerID)
  • Каналы конференции (с отображением подключённых пользователей)
  • Припаркованные звонки (Parked Calls)
  • Очереди (с отображением статистики, участников и ожидающих клиентов)

Из возможностей выполнения операций:

  • Выполнение (инициация) вызовов
  • Трансфер вызовов
  • Сброс вызовов
  • Паркование вызовов
  • Прослушивание звонков (Spy Calls)
  • Приглашение участников в конференцию
  • Удаление участников конференции
  • Добавление пользователей (или пиров) как участника любой очереди
  • Удаление участников из очереди
  • Постановка и снятие с паузы участников очереди
  • Выполнение CLI команд

Установка

Установка будет выполнятся с учетом уже установленного сервера с FreeBPX

Установка компонентов из репозиториев

apt-get update
apt-get install python-starpy python-twisted

Модули для php

pear install HTTP_Client
pear install HTTP_Request2

Загрузка и установка Monast

cd /usr/src
svn checkout https://monast.svn.sourceforge.net/svnroot/monast/trunk monast
cd monast
./install.sh

В процессе установки скрипт задаст пару вопросов относительно путей. Если предложенные им варианты устраивают — соглашаемся. Иначе прописываем свои данные

MonAst base path указываем /etc/monast
MonAst HTML path указываем /var/www/monast

Копируем скрипт запуска и назначим ему автостарт при загрузке системы

cp contrib/init.d/rc.debian.monast /etc/init.d/monast 
chmod +x /etc/init.d/monast
update-rc.d monast defaults

Настройка MonAst и Asterisk

Отредактируем на сервере Asterisk файл manager.cong и добавим пользователя для MonAst

nano /etc/asterisk/manager.conf

Правим основную секцию

[general] 
enabled = yes; Активируем AMI
port = 5038; Порт, по которому к данному сервису будет подключаться MonAst
bindaddr = 0.0.0.0; Прослушиваем все интерфейсы в системе для принятия  подключения
displayconnects = yes; Показывать в консоли Asterisk о факте подключения

Добавим пользователя для MonAst

[monast_user] 
secret=isolda; Пароль для подключения
deny=0.0.0.0/0.0.0.0; Запрещаем подключение с любого адреса
permit=127.0.0.1/255.255.255.0; И постепенно разрешаем нужные
permit=192.168.0.111/255.255.255.0; Так разрешаем конкретный хост
permit=192.168.0.0/255.255.255.0; А вот так можно разрешить подсеть
writetimeout=100; Таймаут для посылки команд
read=system,call,log,verbose,command,agent,user,config,originate,reporting
write=system,call,log,verbose,command,agent,user,config,originate,reporting

Перезагрузим конфигурацию Asterisk для модуля manager:

asterisk -rx "manager reload"

На этом настройка Asterisk закончена.Переходим к конфигурации MonAst.

Редактируем файл monast.conf

nano /etc/monast.conf

Секция global

[global]
# Bind client connetions on host:port
bind_host = 127.0.0.1		; Разрешаем подключения с локального хоста
bind_port = 5039		; Порт для подключения к демону.
# Use client autentication on browser 
auth_required = true		; Указываем сто аутентификация обязательна

Параметры серверов.

## Servers Definitions 
[server: Server1]		
hostname = 0.0.0.0 ;Адрес сервера asterisk
hostport = 5038
username = monast_user ;Пользователь указанный ранее на сервере Asterisk в файле manager.conf 
password = isolda ; пароль для пользователя

[Server: Server2]

...
[Server: Server3]
...


Настройка пользователей

[user: admin]		; Главный Администратор
secret  = 123456
roles   = originate,queue,command,spy; настройка прав
servers = ALL ;Доступ ко всем серверам

[user: adminS2]
secret  = 123456
roles   = originate,queue,command,spy; настройка прав
servers = Server2 ;Доступ только на Server2

Сохраняем изменения и делаем перезапуск

/etc/init.d/monast restart

Зайти и проверить можно через браузер, по адресу

http://localhost/html/monast/
Advertisement