Я хочу сделать простой IVR, используя php в Asterisk. когда я запускаю программу php индивидуально, она работает без каких-либо проблем. но когда я вызываю его командой AGI в Asterisk, это не работает. это мой PHP-файл:Команда AGI и php-файл в Asterisk
#!/usr/bin/php -q
<?
set_time_limit(30);
require('phpagi.php');
$agi = new AGI();
$agi->answer();
$file = '/var/www/html/test.txt';
$current = file_get_contents($file);
$current .= "Test\n";
file_put_contents($file, $current);
$agi->say_digits(1234);
$agi->hangup();
?>
и это Диалплан:
[testphp]
exten => 6565,1,Answer
exten => 6565 2,Playback(Hello-World)
exten => 6565,3,AGI(testphp.php)
exten => 6565 4,Playback(Hello-World)
exten => 6565,5,Hangup
, когда я называю 6565 мой телефон, он играет только дважды "Hello World" сообщение! Разрешение на использование php-файла является неочевидным.
Я установил Elastix (Asterisk) в VirtualBox.
Что я делаю неправильно?
помогите пожалуйста.
сделал ли вы видеть на CLI, если он порождает какую-либо ошибку? Лучший способ отладки AGI для поэтапного добавления функций. скажите, что вы первый тест, если он выполняет «say_digit» ... !! – Arfeen
также проверьте расположение созданного вами PHP-скрипта. – Arfeen
Расположение скрипта php: '/ var/lib/asterisk/agi-bin /'. но как отлаживать или тестировать AGI и say_digit? –