Пользователь
0,0
рейтинг
18 марта 2009 в 12:39

Разработка → Asterisk GUI. Первые шаги

Почти всякий раз, когда речь заходит о выборе 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» в верхнем правом углу.
Надеюсь, кому-нибудь эта статья будет полезна.
facha @facha
карма
39,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (9)

  • 0
    Спасибо огромное за статью, только на днях с разработчиками общались на тему создания автоответчика.
    А теперь и пример реализации есть, не будем тыкать пальцем в небо, а сразу попробуем Asterisk
  • 0
    Спасибо за статью, добавил в избранное.
    P.S. Asterisk на лептопе — круто ;-)
  • 0
    Может быть стоит перенести запись в тематический блог?
  • 0
    Офигенная статья!
    Спасибо!
  • 0
    Очень хорошая статья, спасибо! Был бы очень благодарен за примеры работы с API астериска. Программное создание SIP учетки, дозвон и обработку событий.
  • 0
    Да, было бы не плохо :) Сделать примеры bash, php скриптов :) Чтоб не мучиться каждый раз а тыкнул скрипт и заработало ну или для собственных панелек
  • 0
    Спасибо за статью. Мне она оказалась очень полезна
  • 0
    Спасибо. Этот легкий вариант GUI неплох для настройки asterisk на роутере с dd-wrt.
  • 0
    Отличная статья, спасибо!
    Только вот не могу разобраться куда прокси в интерфейсе указывать при создании транка:
    nickname@sip.beeline.ru:password:7499952XXXX@sip.beeline.ru@msk.sip.beeline.ru:5060/7499952XXXX

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.