вторник, 21 июня 2016 г.

Asterisk. Выполнение скрипта при ответе абонента.

Имеется Asterisk. Необходимо реализовать функционал, при котором при ответе абонента запускается и выполняется скрипт php с передачей скрипту в качестве аргументов номера вызываемого и вызывающего абонентов.

Реализуется это с помощью конструкции в диалплане (в файле extensions.conf):
[from_12]
exten => 293ХХХХ,1,Dial(SIP/${EXTEN},120,M(answerscript^${CALLERID(num)}^${EXTEN}))
Опция M в команде Dial заставит Asterisk выполнить макрос (в нашем случае answerscript)  и передать макросу ряд аргументов. Аргументы отделяются между собой символом домика (^).

Макрос запуска внешнего скрипта /var/www/html/test.php описывается в отдельном контексте:
[macro-answerscript]
exten => s,1,System(/usr/bin/php -f /var/www/html/test.php ${ARG1} ${ARG2} )

Комментариев нет:

Отправить комментарий