Добрый день. При входящем звонке у меня должен проиграться звуковой файлик и запуститься agi-script, который тоже должен проиграть файлик. Но скрипт, почему-то не работает...
<code> #!/usr/bin/php -q <?php set_time_limit(60); ob_implicit_flush(false); error_reporting(0); if (!defined('STDIN')) { define('STDIN', fopen('php://stdin', 'r')); } if (!defined('STDOUT')) { define('STDOUT', fopen('php://stdout', 'w')); } if (!defined('STDERR')) { define('STDERR', fopen('php://stderr', 'w')); } while (!feof(STDIN)) { $temp = trim(fgets(STDIN, 4096)); if (($temp == "") || ($temp == "\n")) { break; } $s = explode(":", $temp); $name = str_replace("agi_", "", $s[0]); $agi[$name] = trim($s[1]); } $telephone_number1 = $agi['callerid']; if (strlen($telephone_number1) > 7){ if substr($telephone_number1,0,3) = "380" { $telephone_number1 = substr($telephone_number1, -9); }else{ $telephone_number1 = substr($telephone_number1, -7) } } $db_hostname = 'хост'; $db_database = 'uflOfJ'; $db_login = 'логин'; $db_password = 'пароль'; $db_table = 'users'; $db_query = "select skidka,fname,sname from users where telefon like '%$telephone_number1%' limit 1"; $db_server = mysql_connect($db_hostname, $db_login, $db_password); if (!$db_server) die('CONNECT FAIL!!!'); mysql_select_db($db_database, $db_server) or die("CAN'T SELECT DB!!!"); $result = mysql_query($db_query); $row = mysql_fetch_row($result); $row[0] = trim($row[0]); $row[1] = trim($row[1]); $row[2] = trim($row[2]); $row[3] = trim($row[3]); if (!empty($row)) { if ($row[0] == '299') { fwrite(STDOUT, "STREAM FILE hello \"\"\n"); fflush(STDOUT); $result = trim(fgets(STDIN, 4096)); checkresult($result); fwrite(STDOUT, "STREAM FILE name \"\"\n"); fflush(STDOUT); $result = trim(fgets(STDIN, 4096)); checkresult($result); fwrite(STDOUT, "STREAM FILE two \"\"\n"); fflush(STDOUT); $result = trim(fgets(STDIN, 4096)); checkresult($result); fwrite(STDOUT, "STREAM FILE bye \"\"\n"); fflush(STDOUT); $result = trim(fgets(STDIN, 4096)); checkresult($result); } elseif ($row[0] == '5') { fwrite(STDOUT, "STREAM FILE customer_ru_romedal \"\"\n"); fflush(STDOUT); $result = trim(fgets(STDIN, 4096)); checkresult($result); } else { } } function checkresult($res) { trim($res); if (preg_match('/^200/', $res)) { if (!preg_match('/result=(-?\d+)/', $res, $matches)) { fwrite(STDERR, "FAIL ($res)\n"); fflush(STDERR); return 0; } else { fwrite(STDERR, "PASS (" . $matches[1] . ")\n"); fflush(STDERR); return $matches[1]; } } else { fwrite(STDERR, "FAIL (unexpected result '$res')\n"); fflush(STDERR); return -1; } } ?> </code>
Вопрос первый: где должен размещаться файл, который проигрывается phpagi
спросил 2012-08-21 18:48:59 +0400
Аноним