Как я могу получить расширение, введенное пользователем в сценарий 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, поэтому я не знаю точной команды, но должна быть какая-то команда для чтения значения переменной.