首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >asterisk agi循环不工作

asterisk agi循环不工作
EN

Stack Overflow用户
提问于 2013-07-12 05:44:40
回答 2查看 868关注 0票数 0

我试图让我的php脚本在调用时循环10次,但由于某种原因,它只执行一次,然后它挂起/死/退出。我对此所能得到的任何见解都非常感谢。

代码语言:javascript
复制
 for ($i=1; $i<=10; $i++)
ob_implicit_flush(true);
require_once('phpagi.php');

$agi = new AGI();
$agi->answer();


  list ($id,$number,$callerid) = mysql_fetch_row(mysql_query("select `called`,`tollfree`,`callerid` from `avotfmaster`.`cdr` where `pbx`='0' order by `mins` desc, rand() limit 1",$xb));

if($id) {

$agi->set_callerid("$callerid");
$agi->exec('DIAL',"SIP/31282200*$number@sip.abc.com,40,L(60000)");


$gwopt_dtmf = $agi->get_data('confirm', 3000, 1);

if($gwopt_dtmf['result']==1)
        {
mysql_query("UPDATE `avotfmaster`.`cdr` SET `pbx`='1' WHERE `number`='$number'",$xb);


        } else {
        mysql_query("UPDATE `avotfmaster`.`cdr` SET `pbx`='2' WHERE `number`='$number'",$xb);
$agi->verbose("I will go ahead and mark this number already scanned and tested");

}

}
}
EN

回答 2

Stack Overflow用户

发布于 2013-07-13 06:27:33

从PHPAGI脚本中调用Dial之类的东西并不是一个好主意,基本上这类东西会在一段不确定的(或可能很长的)时间内束缚你的脚本。

直到脚本结束后,才会释放系统资源。由于这个原因,PHP中有一个最大脚本执行持续时间命令,我打赌您的脚本运行的时间超过了默认的允许时间量(在大多数调用中),并且脚本被终止。

有关线索,请参阅以下答案:PHP set_time_limit() does not work, safemode is off

票数 1
EN

Stack Overflow用户

发布于 2013-07-12 09:11:55

请阅读拨号文档。

如果您需要在该函数之后进行控制,则需要在选项中添加"g“键。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17604053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档