Обновить

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

Штатные средства Asterisk — это хорошо.
Но! Есть целый ряд недочетов.

1. Зачем такие разрешения для Originate? Я про /etc/asterisk/manager.conf и write=system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate. Разрешение system в случае взлома web сайта позволит выполнять шел скрипты из под id asterisk, а если админ телефонии допустил такой косячище, как запуск asterisk из-под рута, то атакующий получит рута, просто поломав php сайт.

2. Давать разработчику web сайта телнет на свой астериск просто небезопасно :-) Плюс учить его командам AMI. Проще и чуть более правильно дать разработчику сайта AJAM — wiki.asterisk.org/wiki/display/AST/Asynchronous+Javascript+Asterisk+Manger+%28AJAM%29

3. А самое правильное — это дать доступ через AMI прокси — www.voip-info.org/wiki/view/Asterisk+Manager+Proxy
А еще правильнее писать свой прокси (на перле/питоне например, это ну вообще не сложно) над прокси астериска и уже его давать под сайт :)
Есть готовые библиотеки для работы с AMI, лучше использовать их, чем, в частности, полагаться на то, что AMI отреагирует на логин за 500 мкс :)

Да и вообще описанный функционал проще всего реализовать с помощью call-файлов
Колл-файлы генерить надо… А еще правильную дату создания им писать. Да и срабатывать колбэк будет не мгновенно в этом случае. А еще надо их ложить туда куда апач должен доступ иметь — а это чревато (конечно если именно апач используется) :)
Колл-файл генерируется из шаблона одной регуляркой, а уж в плане безопасности доступ к AMI куда сомнительней ;)
Кстати, коллбэк срабатывает мгновенно, как только * видит файл в папке с ctime меньше текущего времени. Настолько мгновенно, что надо создавать файл не сразу в спуле *, а в другом месте и только после этого переносить файл в спул.
Я, честно говоря уже не помню всех мелочей, но…

Имеем одну линию.
Идет запрос на перезвон, создается колл-файл, сразу перезвон.
Идет второй запрос на перезвон (первый звонок не закончен), создаем колл-файл, и тут уже многое зависит от настроек астериска.
А если у нас создается 10 запросов и нас волнует приоритетность их выполнения — мы оказываемся в полной, извините, жопе :)
Собственно потому я предпочитал рулить пулом колбэков из под самописного демона на питоне который с менеджером работал.
НЛО прилетело и опубликовало эту надпись здесь
ARI дает контроль над всеми каналами.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
to.slurm.io
Дата регистрации
Дата основания
Численность
51–100 человек
Местоположение
Россия
Представитель
Антон Скобин