Asterisk GUI. Первые шаги

asterisk GUI

Alexcr

Почти всякий раз, когда речь заходит о выборе web-интерфейса к asterisk, в ход идут рекомендации «тяжелой артиллерии»: trixbox, elastix, freepbx. Asterisk GUI остается эдакой «темной лошадкой»: вроде и слышали о нем, вроде и скриншоты симпатишные, а реально работающих систем — с гулькин нос. Частично это объясняется новизной, необкатанностью продукта. Частично — отсутствием документации. Частично — иннертностью сообщества. Попытаемся сдвинуть дело с мертвой точки…
В статье — пошаговые инструкции, как установить и настроить Asterisk с Asterisk GUI.

Преимущества:

 
  • Разрабатывается digium, той же компанией, что разрабатывает и сам asterisk
  • Не требует наличия Apache, MySQL, PHP. Использует встроенный веб-сервер asterisk. Написан на html и javascript
  • Не зависит от наличия сторонних программ/библиотек. Не требует установки на каком-либо конкретном дистрибутиве. Все что нужно для установки — работающий asterisk
 

Установка Asterisk и Asterisk GUI


Приступим… Качаем исходный код из svn и собираем. Можно скопировать нижеприведеные комманды в консоль и откинуться на спинку кресла в ожидании.

svn co svn.digium.com/svn/asterisk/branches/1.6.0 asterisk
cd asterisk
./configure && make && make install && make samples && make config
cd ..
svn co svn.digium.com/svn/asterisk-gui/branches/2.0 asterisk-gui
cd asterisk-gui
./configure && make && make install
cd ..


После того как процесс сборки завершился, отредактируем два конфигурационных файла:

/etc/asterisk/manager.conf должен выглядеть примерно так:
[general]
enabled = yes
webenabled = yes
port = 5038
bindaddr = 127.0.0.1
[admin]
secret = 123456
read = system,call,log,verbose,agent,user,config,dtmf,reporting,cdr,dialplan
write = system,call,agent,user,config,command,reporting,originate


А /etc/asterisk/http.conf — так:
[general]
enabled = yes
enablestatic = yes
bindaddr = 0.0.0.0
redirect = / /static/config/cfgbasic.html
[post_mappings]
backups = /var/lib/asterisk/gui_backups


Запускаем asterisk:
/etc/init.d/asterisk start

На этом процесс установки завершен.
 

Настройка Asterisk при помощи Asterisk GUI


Рассмотрим простой случай. У нас в системе один пользователь (один VoIP-телефон). Есть SIP транк к провайдеру my.sip.trunk.com. Провайдер предоставил нам один пробный номер — 7692450. Наша задача — дать нашему единственному пользователю возможность звонить и принимать звонки.

На рабочей машине запускаем браузер и вбиваем в адресной строке x.x.x.x:8088, где x.x.x.x — IP машины, на которой установлены Asterisk и Asterisk GUI. Вводим имя пользователя и пароль, и жмем кнопку login.

image

После непродолжительных сообщений о обновлениях конфигурационных файлов (система будет пытаться определить, установлено ли у нас какое-нибудь digium-железо) мы попадем на главную страничку.

image

Прежде всего сконфигурируем SIP-транк к провайдеру. Заходим в «Trunks», «VoIP Trunks» и жмем «New SIP/IAX Trunk». Заполняем поля в окошке по аналогии с тем, что на картинке.

image

Сконфигурируем правило для исходящих звонков: все исходящие звонки — отправлять в только что созданный транк. Идем в «Outgoing Calling Rules». Жмем «New Calling Rule» и заполняем поля в окошке.

image

Сконфигурируем план звонков (Dialplan). Dialplan — не что иное как группа правил для исходящих звонков. В нашем случае у нас всего одно правило. Итак, идем в «Dial Plans», жмем «New DialPlan». В окошке отмечаем галочкой созданное на предыдущем шаге правило.

image

Создаем пользователя. Идем в «Users». Жмем «Create New User». Определяем нашему пользователю имя (CallerID Name), номер для исходящих звонков (CallerID Number) и план звонков.

image

Осталось определить правило для входящих звонков. Тема эта довольно интересна сама по себе и тянет на отдельную статью. Дело в том, что входящий звонок можно загнать в интерактивное меню («to contact technical support — press 1, to contact sales department — press 2, to speak with an operator — press 0»), отправить сразу нескольким телефонам одновременно (пока кто-нибудь не снимет трубку), отправить в автоответчик, если никто не отвечает n секунд, переадресовать на мобильный… и много еще чего. Мы же скромно направим входящие звонки нашему единственному пользователю. Итак, идем в «Incomming Calling Rules», жмем «New Incomming Rule» и заполняем поля в окошке по аналогии с тем что на картинке.

image

Ну вот и все. Жмем кнопку «Apply Changes» в верхнем правом углу.
Надеюсь, кому-нибудь эта статья будет полезна.