Man вики
(добавление отображения Asterisk 12 и выше - каналы, очереди)
Метка: Визуальный редактор
 
(не показано 13 промежуточных версий 4 участников)
Строка 6: Строка 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)
 
*Каналы конференции (с отображением подключённых пользователей)
 
*Каналы конференции (с отображением подключённых пользователей)
Строка 26: Строка 29:
 
=Установка=
 
=Установка=
 
Установка будет выполнятся с учетом уже установленного сервера с [[Asterisk+FreePBX|FreeBPX]]
 
Установка будет выполнятся с учетом уже установленного сервера с [[Asterisk+FreePBX|FreeBPX]]
==Установка компонентов из репозиториев==
+
*Установка компонентов из репозитория
 
apt-get update
 
apt-get update
 
apt-get install python-starpy python-twisted
 
apt-get install python-starpy python-twisted
==Модули для php==
+
*Установка модулей для php
 
pear install HTTP_Client
 
pear install HTTP_Client
 
pear install HTTP_Request2
 
pear install HTTP_Request2
==Загрузка и установка Monast==
+
*Загрузка и установка последней версии Monast из SVN
 
cd /usr/src
 
cd /usr/src
svn checkout https://monast.svn.sourceforge.net/svnroot/monast/trunk monast
+
svn checkout [https://monast.svn.sourceforge.net/svnroot/monast/trunk https://svn.code.sf.net/p/monast/code/trunk] monast
 
cd monast
 
cd monast
 
./install.sh
 
./install.sh
В процессе установки скрипт задаст пару вопросов относительно путей. Прописываем свои данные
+
В процессе установки скрипт задаст пару вопросов относительно путей. Указываем свои значения:
 
MonAst base path указываем '''/etc/monast'''
 
MonAst base path указываем '''/etc/monast'''
 
MonAst HTML path указываем '''/var/www/monast'''
 
MonAst HTML path указываем '''/var/www/monast'''
Строка 46: Строка 49:
   
 
=Настройка MonAst и Asterisk=
 
=Настройка MonAst и Asterisk=
  +
Базовая настройка
Отредактируем на сервере Asterisk файл manager.cong и добавим пользователя для MonAst
 
  +
Смотрим имя пользователя и пароль на AMI в Asteriks
nano /etc/asterisk/manager.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=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
 
  +
cp /etc/monast.conf /etc/monast.conf.orig
write=system,call,log,verbose,command,agent,user,config,originate,reporting
 
  +
echo "" >/etc/monast.conf
 
Перезагрузим конфигурацию Asterisk для модуля manager:
 
asterisk -rx "manager reload"
 
На этом настройка Asterisk закончена.Переходим к конфигурации MonAst.
 
 
Редактируем файл monast.conf
 
 
nano /etc/monast.conf
 
nano /etc/monast.conf
  +
И вставим туда, не забыв поправить логин и пароль
Секция global
 
 
[global]
 
[global]
  +
bind_host = 127.0.0.1
 
  +
bind_port = 5039
# Bind client connetions on host:port
 
  +
auth_required = false
bind_host = 127.0.0.1 ; Разрешаем подключения с локального хоста
 
 
bind_port = 5039 ; Порт для подключения к демону.
 
 
[server: local]
 
  +
hostname = 127.0.0.1
# Use client autentication on browser
 
auth_required = true ; Указываем сто аутентификация обязательна
 
 
Параметры серверов.
 
## Servers Definitions
 
[server: Server1]
 
hostname = 0.0.0.0 ;Адрес сервера asterisk
 
 
hostport = 5038
 
hostport = 5038
  +
username = '''admin'''
username = monast_user ;Пользователь указанный ранее на сервере Asterisk в файле manager.conf
 
  +
password = '''123'''
password = isolda ; пароль для пользователя
 
  +
[Server: Server2]
 
  +
default_context = default
...
 
  +
transfer_context = default
[Server: Server3]
 
  +
meetme_context = default
...
 
  +
meetme_prefix =
  +
  +
[peers]
  +
sortby = callerid
  +
default = show
  +
  +
[meetmes]
  +
default = show
  +
  +
[queues]
  +
default = show
   
 
Настройка пользователей
 
[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
 
/etc/init.d/monast restart
  +
Добавим в начальную страничку сервера, ссылку на monast с помощью скрипта (выполнять только 1 раз! Если не увидели изменений '''нажмите F5''' в своём браузере)
  +
<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://localhost/html/monast/
+
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_вашего_сервера