отправить действие в Asterisk Call Manager

Я пытаюсь сделать скрипт проверки, чтобы проверить, есть ли у звездочки IP Asterisk Call Manager.

Я сделал это, сделав скрипт php и используя curl — результат и ответ

Asterisk Call Manager/1.3
Response: Error
Message: Missing action in request

Это хорошо на данный момент, это ожидается.

Другой ожидаемый, что я должен послать действие в запросе, как сказал массаж. Итак, как я могу отправить действие, как это:

action: login
user:admin
secret:admin

-1

Решение

Я настоятельно рекомендую вам использовать уже написанную библиотеку

Для php это phpagi libs.

http://phpagi.sourceforge.net/

В этом примере вы не соблюдаете протокол. Протокол, скажем, должен быть действием.

http://www.voip-info.org/wiki/view/Asterisk+manager+API

0

Другие решения

Я создал скрипт вызова click 2 в php, и он работает, но я не могу найти переменную для отправки в AMI вдоль файла вызова, которая должна отключить вызов через определенное время. то есть я хочу установить максимальное время 5 минут для любого вызова, и в случае, если вызов все еще находится на звездочке, следует отключить вызов.

мой код: я ищу переменную, которая будет добавлена ​​вместе с сокетом, который может отключить вызов, если длина больше 5 минут.

$oSocket = fsockopen($strHost, 5038, $errnum, $errdesc) or die("Connection to host failed");
fputs($oSocket, "Action: login\r\n");
fputs($oSocket, "Events: off\r\n");
fputs($oSocket, "Username: $strUser\r\n");
fputs($oSocket, "Secret: $strSecret\r\n\r\n");
fputs($oSocket, "Action: originate\r\n");
fputs($oSocket, "Channel: $strChannel\r\n");
fputs($oSocket, "WaitTime: $strWaitTime\r\n");
fputs($oSocket, "CallerId: $strCallerId\r\n");
fputs($oSocket, "Exten: $strExten\r\n");
fputs($oSocket, "Context: $strContext\r\n");
fputs($oSocket, "Priority: 1\r\n\r\n");
fputs($oSocket, "Action: Logoff\r\n\r\n");
sleep(3);
fclose($oSocket);
0

По вопросам рекламы [email protected]