Как я могу получить расширение, введенное пользователем в сценарий Perl AGI? - PullRequest
0 голосов
/ 30 марта 2009

Я новичок в программировании Asterisk AGI. Я пытаюсь создать простой IVR, используя asterisk-perl , где пользователь может ввести любое расширение от 1 до 4. Вот мой код на данный момент:

use Asterisk::AGI;

$AGI = new Asterisk::AGI;

for($i = 0 ; $i < 2 ; $i++)
{
    $AGI->exec('Playback','welcome');

    $AGI->exec('WaitExten','5|m');


}

Теперь я хочу узнать расширение, введенное пользователем, и предпринять соответствующие действия. Как получить расширение, введенное пользователем?

Спасибо.

Ответы [ 2 ]

1 голос
/ 09 апреля 2009

Я полагаю, что вы хотите использовать get_data, что позволит вам воспроизвести файл и затем подождать определенное количество раз для указанного числа цифр, например ::1001

$ AGI-> get_data ('demo-welcome', 15000, 5);

См. здесь

0 голосов
/ 02 апреля 2009

Хорошо, поскольку команда WaitExten меняет пользователя на новое расширение, я полагаю, что вы можете прочитать специальную переменную $ {EXTEN} после вызова WaitExten. Я не знаком с Asterisk :: Perl, хотя я использовал только FastAGI из Java, поэтому я не знаю точную команду, но должна быть какая-то команда для чтения значения переменной.

...