1 | изначальная версия редактировать | |
Привет! Есть скрипт на php, который по какой то входной переменной(например ${enter}) возвращает в астериск другую переменную(например ${result}). Для передачи переменной в пхп-скрипт в диалплане пишу Read(enter), AGI(1.php,${enter}). Как сделать чтобы скрипт понял эту переменную и вернул в астериск ${result}?
2 | теги изменены редактировать |
Привет! Есть скрипт на php, который по какой то входной переменной(например ${enter}) возвращает в астериск другую переменную(например ${result}). Для передачи переменной в пхп-скрипт в диалплане пишу Read(enter), AGI(1.php,${enter}). Как сделать чтобы скрипт понял эту переменную и вернул в астериск ${result}?
3 | No.3 Revision редактировать |
Привет! Есть скрипт на php, который по какой то входной переменной(например ${enter}) возвращает в астериск другую переменную(например ${result}). Для передачи переменной в пхп-скрипт в диалплане пишу Read(enter), AGI(1.php,${enter}). Как сделать чтобы скрипт понял эту переменную и вернул в астериск ${result}?
#!/usr/bin/php -q
<?php
ob_implicit_flush(false);
set_time_limit(5);
error_reporting(0);
$agivars = array();
while (!feof(STDIN)) {
$agivar = trim(fgets(STDIN));
if ($agivar === '') {
break;
}
else {
$agivar = explode(':', $agivar);
$agivars[$agivar[0]] = trim($agivar[1]);
}
}
foreach($agivars as $k=>$v) {
log_agi("Got $k=$v");
}
extract($agivars);
$id=$agivars[1];
$ip = "localhost";
$user = "root";
$pass = "";
$db = "DB";
mysql_connect($ip, $user, $pass)
or die("Could not connect:".mysql_error());
mysql_select_db($db)
or die("Could not select".mysql_error());
$r = mysql_query("SELECT number FROM tbl WHERE id='$id';")
or die("Invalid query: ".mysql_error());
$a=mysql_fetch_assoc($result);
$res=$a['number'];
fputs($stdout,"SAY NUMBER $res");
fflush($stdout);
?>
4 | No.4 Revision редактировать |
Привет! Есть скрипт на php, который по какой то входной переменной(например ${enter}) возвращает в астериск другую переменную(например ${result}). Для передачи переменной в пхп-скрипт в диалплане пишу Read(enter), AGI(1.php,${enter}). Как сделать чтобы скрипт понял эту переменную и вернул в астериск ${result}?
#!/usr/bin/php -q
<?php
ob_implicit_flush(false);
set_time_limit(5);
error_reporting(0);
$agivars = array();
while (!feof(STDIN)) {
$agivar = trim(fgets(STDIN));
if ($agivar === '') {
break;
}
else {
$agivar = explode(':', $agivar);
$agivars[$agivar[0]] = trim($agivar[1]);
}
}
foreach($agivars as $k=>$v) {
log_agi("Got $k=$v");
}
extract($agivars);
$id=$agivars[1];
$ip = "localhost";
$user = "root";
$pass = "";
$db = "DB";
mysql_connect($ip, $user, $pass)
or die("Could not connect:".mysql_error());
mysql_select_db($db)
or die("Could not select".mysql_error());
$r = mysql_query("SELECT number FROM tbl WHERE id='$id';")
or die("Invalid query: ".mysql_error());
$a=mysql_fetch_assoc($result);
$res=$a['number'];
fputs($stdout,"SAY NUMBER fputs($stdout,"SET VARIABLE result $res");
fflush($stdout);
?>
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.