Pull to refresh

Comments 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 запросов и нас волнует приоритетность их выполнения — мы оказываемся в полной, извините, жопе :)
Собственно потому я предпочитал рулить пулом колбэков из под самописного демона на питоне который с менеджером работал.
UFO landed and left these words here
Only those users with full accounts are able to leave comments. Log in, please.