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

Я новичок в программировании 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 ответа

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

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

Смотрите здесь

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

Другие вопросы по тегам