The structure of a PHP based AGI script
每个基于AGI脚本的PHP都是运用下面的形式:#!/usr/bin/php –q
<?
$stdin = fopen(‘php: //stdin’, ‘r’);
$stdout = fopen(‘php://stdout’, ‘w’);
$stdlog = fopen(‘my_agi.log’, ‘w’);
/*Operational Code starts here*/
…
…
…
?>
当执行php的时候,Asterisk会通过标准输入(STDIN)传送一组信息到AGI脚本, 用下面的方式来处理标准输入是最好的.
#!/usr/bin/php –q
<?
$stdin = fopen(‘php://stdin’, ‘r’);
$stdout = fopen(‘php://stdout’, ‘w’);
$stdlog = fopen(‘my_log’, ‘w’);
/*Handling execution input from Asterisk*/
While (!feof($stdin))
{
$temp = fgets($stdin);
$temp = str_replace(“\n”,””,$temp);
$s = explode(“:”,$temp);
$agivar[$s] = trim($s);
If ($temp == “”)
{
break;
}
}
/*Operational Code starts here*/
...
...
...
?>
一旦我们已经处理了来自Asterisk服务器的呼入信息,我们就可以开始执行实际的运作流程了.
Cheers!
Joe.Yeung
页:
[1]