Man вики
Нет описания правки
(добавление отображения Asterisk 12 и выше - каналы, очереди)
Метка: Визуальный редактор
 
(не показаны 24 промежуточные версии 7 участников)
Строка 1: Строка 1:
  +
=Описание=
 
MonAst позиционируется разработчиками как инструмент мониторинга, который действует как панель оператора для Asterisk. Распространяется по лицензии BSD. Проект написан с использованием Python
 
MonAst позиционируется разработчиками как инструмент мониторинга, который действует как панель оператора для Asterisk. Распространяется по лицензии BSD. Проект написан с использованием Python
   
Строка 5: Строка 6:
 
*Многопользовательский режим с указанием прав доступа
 
*Многопользовательский режим с указанием прав доступа
 
*Отображение пользователей и пиров (SIP, IAX, DAHDI, Khomp, etc...)
 
*Отображение пользователей и пиров (SIP, IAX, DAHDI, Khomp, etc...)
  +
*Добавлена поддержка Asterisk 11, 12 и выше - каналы, очереди. Все в моем форке. (https://yadi.sk/d/PVRLfxQXfNnuZ )
  +
*Отображение пользователей и пиров PJSIP (тестируется), Отображение Real Time пиров, поддержка кодировки UTF-8. Статус DAHDI каналов (свободен/занят) Все в моем форке. (https://yadi.sk/d/PVRLfxQXfNnuZ )
  +
* Отображение и управление GSM донглами (http://wiki.e1550.mobi/doku.php?id=installation) в моем форке ( https://yadi.sk/d/PVRLfxQXfNnuZ )
 
*Отображение активных каналов и вызовов (с именем канала и CallerID)
 
*Отображение активных каналов и вызовов (с именем канала и CallerID)
 
*Каналы конференции (с отображением подключённых пользователей)
 
*Каналы конференции (с отображением подключённых пользователей)
Строка 23: Строка 27:
 
*Выполнение CLI команд
 
*Выполнение CLI команд
   
=Установка MonAst=
+
=Установка=
  +
Установка будет выполнятся с учетом уже установленного сервера с [[Asterisk+FreePBX|FreeBPX]]
Установка необходимых пакетов.
 
  +
*Установка компонентов из репозитория
apt-get update && apt-get install python apache2 php5 php-pear build-essential gcc-4.5 libssl-dev python-dev
 
  +
apt-get update
 
  +
apt-get install python-starpy python-twisted
Скачиваем MonAst и еще два пакета для его работы.
 
  +
*Установка модулей для php
*Twisted Python 10.1+
 
  +
pear install HTTP_Client
*Starpy SVN-Trunk
 
  +
pear install HTTP_Request2
 
  +
*Загрузка и установка последней версии Monast из SVN
cd /tmp
 
Скачиваем пакеты
 
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
 
wget http://pypi.python.org/packages/source/T/Twisted/Twisted-12.0.0.tar.bz2
 
wget http://downloads.sourceforge.net/project/starpy/starpy/1.0.0a13/starpy-1.0.0a13.tar.gz
 
 
Распаковываем и устанавливаем.
 
 
cd /usr/src
 
cd /usr/src
  +
svn checkout [https://monast.svn.sourceforge.net/svnroot/monast/trunk https://svn.code.sf.net/p/monast/code/trunk] monast
tar -xvf Twisted-12.0.0.tar.bz2
 
cd Twisted-12.0.0
+
cd monast
python setup.py install
 
cd ..
 
 
tar -xvf starpy-1.0.0a13.tar.gz
 
cd starpy-1.0.0a13
 
python setup.py install
 
cd..
 
 
Переходим непосредственно к установке MonAst
 
tar -xvf monast-3.0b4.tar.gz
 
cd monast-3.0b4
 
 
./install.sh
 
./install.sh
В процессе установки скрипт задаст пару вопросов относительно путей. Если предложенные им варианты устраивают — соглашаемся. Иначе прописываем свои данные
+
В процессе установки скрипт задаст пару вопросов относительно путей. Указываем свои значения:
  +
MonAst base path указываем '''/etc/monast'''
  +
MonAst HTML path указываем '''/var/www/monast'''
  +
Копируем скрипт запуска и назначим ему автостарт при загрузке системы
 
cp contrib/init.d/rc.debian.monast /etc/init.d/monast
 
cp contrib/init.d/rc.debian.monast /etc/init.d/monast
chmod 755 /etc/init.d/monast
+
chmod +x /etc/init.d/monast
update-rc.d monast defaults 91 60
+
update-rc.d monast defaults
  +
 
=Настройка MonAst и Asterisk=
 
=Настройка MonAst и Asterisk=
  +
Базовая настройка
Отредактируем на сервере Asterisk файл manager.cong и добавим пользователя для MonAst
 
  +
Смотрим имя пользователя и пароль на AMI в Asteriks
nano /etc/asterisk/manger.conf
 
  +
cat /etc/asterisk/manager.conf | grep -E "]|secret"|tail -n2
Правим основную секцию
 
  +
например это будет ['''admin'''] с паролем '''123'''
[general]
 
enabled = yes; Активируем AMI
 
port = 5038; Порт, по которому к данному сервису будет подключаться MonAst
 
bindaddr = 0.0.0.0; Прослушиваем все интерфейсы в системе для принятия подключения
 
displayconnects = yes; Показывать в консоли Asterisk о факте подключения
 
Добавим пользователя для MonAst
 
[monast_user]
 
secret=qwerty123; Пароль для подключения
 
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
 
  +
cp /etc/monast.conf /etc/monast.conf.orig
write=system,call,log,verbose,command,agent,user,config,originate,reporting
 
  +
echo "" >/etc/monast.conf
 
nano /etc/monast.conf
  +
И вставим туда, не забыв поправить логин и пароль
  +
[global]
  +
bind_host = 127.0.0.1
  +
bind_port = 5039
  +
auth_required = false
  +
  +
[server: local]
  +
hostname = 127.0.0.1
  +
hostport = 5038
  +
username = '''admin'''
  +
password = '''123'''
  +
  +
default_context = default
  +
transfer_context = default
  +
meetme_context = default
  +
meetme_prefix =
  +
  +
[peers]
  +
sortby = callerid
  +
default = show
  +
  +
[meetmes]
  +
default = show
  +
  +
[queues]
  +
default = show
   
  +
Сохраняем изменения и делаем перезапуск
Перезагрузим конфигурацию Asterisk для модуля manager:
 
  +
/etc/init.d/monast restart
asterisk -rx "manager reload"
 
  +
Добавим в начальную страничку сервера, ссылку на monast с помощью скрипта (выполнять только 1 раз! Если не увидели изменений '''нажмите F5''' в своём браузере)
На этом настройка Asterisk закончена.Переходим к конфигурации MonAst.
 
  +
<source lang=bash>
  +
cp /var/www/index.html /tmp/index.html
  +
sed '26i<h4><a href="monast/">MonAst panel</a></h4>' /tmp/index.html > /var/www/index.html
  +
</source>
  +
Зайти и проверить можно через браузер, по адресу
  +
http://ip_вашего_сервера

Текущая версия от 15:58, 4 ноября 2018

Описание[]

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

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

  • Работа с несколькими серверами (с помощью переключения между ними)
  • Многопользовательский режим с указанием прав доступа
  • Отображение пользователей и пиров (SIP, IAX, DAHDI, Khomp, etc...)
  • Добавлена поддержка Asterisk 11, 12 и выше - каналы, очереди. Все в моем форке. (https://yadi.sk/d/PVRLfxQXfNnuZ )
  • Отображение пользователей и пиров PJSIP (тестируется), Отображение Real Time пиров, поддержка кодировки UTF-8. Статус DAHDI каналов (свободен/занят) Все в моем форке. (https://yadi.sk/d/PVRLfxQXfNnuZ )
  • Отображение и управление GSM донглами (http://wiki.e1550.mobi/doku.php?id=installation) в моем форке ( https://yadi.sk/d/PVRLfxQXfNnuZ )
  • Отображение активных каналов и вызовов (с именем канала и 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 из SVN
cd /usr/src
svn checkout https://svn.code.sf.net/p/monast/code/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[]

Базовая настройка Смотрим имя пользователя и пароль на AMI в Asteriks

cat /etc/asterisk/manager.conf | grep -E "]|secret"|tail -n2

например это будет [admin] с паролем 123

Делаем копию конфигурации и создаем свою

cp /etc/monast.conf /etc/monast.conf.orig
echo "" >/etc/monast.conf
nano /etc/monast.conf

И вставим туда, не забыв поправить логин и пароль

[global]
bind_host = 127.0.0.1
bind_port = 5039
auth_required = false

[server: local]
hostname = 127.0.0.1  
hostport = 5038
username = admin     
password = 123

default_context = default
transfer_context = default
meetme_context = default
meetme_prefix =

[peers]
sortby = callerid
default = show

[meetmes]
default = show

[queues]
default = show

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

/etc/init.d/monast restart

Добавим в начальную страничку сервера, ссылку на monast с помощью скрипта (выполнять только 1 раз! Если не увидели изменений нажмите F5 в своём браузере)

cp /var/www/index.html /tmp/index.html
sed '26i<h4><a href="monast/">MonAst panel</a></h4>' /tmp/index.html > /var/www/index.html

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

http://ip_вашего_сервера