PHP / Asterisk AGI计算GetData的位数

时间:2017-04-11 00:16:01

标签: php asterisk agi

我正在尝试计算呼叫者在提示时输入的位数。如果输入的位数不等于10,我希望它返回到文件的开头。如果输入的位数等于10,我希望它继续执行程序。使用下面的代码,无论来电者输入,它总是回到开头。谁能在这里给我一些见解?

begining: {

    $agi->stream_file('file1');
    $result = $agi->get_data('beep', 6000, 10);
    $numlength = mb_strlen(utf8_decode($result));
    if ($numlength < 10){
            goto begining;
    }

    else {
        $number= $result['result'];
        $agi->verbose("Number: ".$number);
    }
}

1 个答案:

答案 0 :(得分:1)

您需要指定要计算的数组的哪个部分。将[&#39;结果&#39;]添加到$ result变量。

$agi->stream_file('file1');
$result = $agi->get_data('beep', 6000, 10);
$numlength = mb_strlen(utf8_decode($result['result']));
   if ($numlength < 10){
           goto begining;
   }

   else {
       $number= $result['result'];
       $agi->verbose("Number: ".$number);
   }
}