ユーザーから DTMF を取得しようとしています。DTMF がゼロの場合は、コールを内線番号に転送し、それ以外の場合はハングアップします。以下のように書いたのですが、そのまま無効なエントリを再生して電話を切ってしまいます。この問題について助けていただければ幸いです。
$wheretorec = $agi->exec("AGI","googletts.agi,\"To speak to an operator press zero.\",en");
$whereto = $agi->get_data($wheretorec, 10000, 1);
$dtmf = $whereto['result'];
if (is_numeric($dtmf ['0']))
{
$agi->exec("AGI","googletts.agi,\"Your call is now being transferred\",en");
$agi->exec('transfer',"SIP/123@12.345.678.901:5080");
$agi->hangup();
}
else
{
$agi->exec("AGI","googletts.agi,\"Invalid entry. Please try again later.\",en");
$agi->hangup();
}
}