如何在Perl AGI脚本中获取用户输入的扩展名?

时间:2009-03-30 10:11:44

标签: perl asterisk telephony agi

我是Asterisk AGI编程的新手。我试图使用asterisk-perl创建一个简单的IVR,用户可以在其中输入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 个答案:

答案 0 :(得分:1)

我相信您想使用get_data,允许您播放文件,然后等待给定时间以获得给定数量的数字,例如:

  

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

请参阅here

答案 1 :(得分:0)

好了,因为WaitExten命令将用户更改为新的扩展名,我想你可以在调用WaitExten后读取特殊变量${EXTEN}。我不熟悉Asterisk :: Perl,我只使用了来自Java的FastAGI,所以我不知道确切的命令,但必须有一些命令来读取变量的值。