Buenas Tardes, estimados
Queria consultar lo siguiente para ver si me puede apoyar en esta duda
intento ejecutar un script agi que solo determina el CallerId y lo registra en una Base de datos, tan sencillo como eso, ya que es una primera prueba que estoy efectuando para realizar un AGI de registro medico m+as complejo
Inicialmente programaba los AGI según la documentación anexa
en donde para realziar la ejecución de agi debía ejecutar una serie de instrucciones
execute_agi
pcntl_signal
ahora actualmente quiero migrar a la programación orientado a metodos como lo indico a continuación:
#!/usr/bin/php -q
<?php
set_time_limit(60);
require('/var/lib/asterisk/agi-bin/phpagi/phpagi.php');
include_once('mysqldb.class.php');
$conect = new Mysqldb();
$db = $conect->newConnection('172.20.0.157', 'root', 'Admin01', 'test');
$getQuery = $conect->executeQuery("SET NAMES 'utf8'");
error_reporting(E_ALL);
$agi = new AGI();
$agi->answer();
$cid = $agi->parse_callerid();
$var_username = $cid["username"];
$insert = $conect->insertRecords('calleids',array('descripcion'=>$va r_username));
$agi->hangup();
?>
pero viendo el debug, logra ejecutar el agi pero no registra nada
la plataforma donde estoy ejecutando esto es la siguiente
elastix 2.4.0 2
asterisk 11.5.0 0
CentOS Linux 5.9
PHP 5.1.6 (cli) (built: Jul 12 2013 16:52:22)
el contexto es el siguiente
[from-citas]
exten => ivrCitas,1,Answer()
exten => ivrCitas,n,wait(3)
exten => ivrCitas,n,Set(TIMEOUT(absolute)=0)
exten => ivrCitas,n,Set(autofallthrough=no)
exten => ivrCitas,n,Agi(IVR_CITAS.php)
exten => ivrCitas,n,wait(1)
exten => ivrCitas,n,Hungup
Gracias por la ayuda.
saludos Cordiales
Omar Galaviz
Queria consultar lo siguiente para ver si me puede apoyar en esta duda
intento ejecutar un script agi que solo determina el CallerId y lo registra en una Base de datos, tan sencillo como eso, ya que es una primera prueba que estoy efectuando para realizar un AGI de registro medico m+as complejo
Inicialmente programaba los AGI según la documentación anexa
en donde para realziar la ejecución de agi debía ejecutar una serie de instrucciones
execute_agi
pcntl_signal
ahora actualmente quiero migrar a la programación orientado a metodos como lo indico a continuación:
#!/usr/bin/php -q
<?php
set_time_limit(60);
require('/var/lib/asterisk/agi-bin/phpagi/phpagi.php');
include_once('mysqldb.class.php');
$conect = new Mysqldb();
$db = $conect->newConnection('172.20.0.157', 'root', 'Admin01', 'test');
$getQuery = $conect->executeQuery("SET NAMES 'utf8'");
error_reporting(E_ALL);
$agi = new AGI();
$agi->answer();
$cid = $agi->parse_callerid();
$var_username = $cid["username"];
$insert = $conect->insertRecords('calleids',array('descripcion'=>$va r_username));
$agi->hangup();
?>
pero viendo el debug, logra ejecutar el agi pero no registra nada
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Executing [1288@from-internal:1] NoOp("SIP/153-00000095", "Running miscapp 5: ivrCITAS") in new stack
-- Executing [1288@from-internal:2] Macro("SIP/153-00000095", "user-callerid,") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/153-00000095", "AMPUSER=153") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("SIP/153-00000095", "0?report") in new stack
-- Executing [s@macro-user-callerid:3] ExecIf("SIP/153-00000095", "1?Set(REALCALLERIDNUM=153)") in new stack
-- Executing [s@macro-user-callerid:4] Set("SIP/153-00000095", "AMPUSER=") in new stack
-- Executing [s@macro-user-callerid:5] Set("SIP/153-00000095", "AMPUSERCIDNAME=") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("SIP/153-00000095", "1?report") in new stack
-- Goto (macro-user-callerid,s,10)
-- Executing [s@macro-user-callerid:10] GotoIf("SIP/153-00000095", "0?continue") in new stack
-- Executing [s@macro-user-callerid:11] Set("SIP/153-00000095", "__TTL=64") in new stack
-- Executing [s@macro-user-callerid:12] GotoIf("SIP/153-00000095", "1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s@macro-user-callerid:19] Set("SIP/153-00000095", "CALLERID(number)=153") in new stack
-- Executing [s@macro-user-callerid:20] Set("SIP/153-00000095", "CALLERID(name)=device") in new stack
-- Executing [s@macro-user-callerid:21] NoOp("SIP/153-00000095", "Using CallerID "device" <153>") in new stack
-- Executing [1288@from-internal:3] Goto("SIP/153-00000095", "from-citas,ivrCitas,1") in new stack
-- Goto (from-citas,ivrCitas,1)
-- Executing [ivrCitas@from-citas:1] Answer("SIP/153-00000095", "") in new stack
> 0x2b8860292850 -- Probation passed - setting RTP source address to 172.20.1.100:40038
-- Executing [ivrCitas@from-citas:2] Wait("SIP/153-00000095", "3") in new stack
-- Executing [ivrCitas@from-citas:3] Set("SIP/153-00000095", "TIMEOUT(absolute)=0") in new stack
-- Channel hangup cancelled.
-- Executing [ivrCitas@from-citas:4] Set("SIP/153-00000095", "autofallthrough=no") in new stack
-- Executing [ivrCitas@from-citas:5] AGI("SIP/153-00000095", "IVR_CITAS.php") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/IVR_CITAS.php
-- <SIP/153-00000095>AGI Script IVR_CITAS.php completed, returning 0
-- Executing [ivrCitas@from-citas:6] Wait("SIP/153-00000095", "1") in new stack
== Spawn extension (from-citas, ivrCitas, 7) exited non-zero on 'SIP/153-00000095'
-- Remote UNIX connection
-- Remote UNIX connection disconnected
gcSVR03*CLI>
== Using SIP RTP CoS mark 5
-- Executing [1288@from-internal:1] NoOp("SIP/153-00000095", "Running miscapp 5: ivrCITAS") in new stack
-- Executing [1288@from-internal:2] Macro("SIP/153-00000095", "user-callerid,") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/153-00000095", "AMPUSER=153") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("SIP/153-00000095", "0?report") in new stack
-- Executing [s@macro-user-callerid:3] ExecIf("SIP/153-00000095", "1?Set(REALCALLERIDNUM=153)") in new stack
-- Executing [s@macro-user-callerid:4] Set("SIP/153-00000095", "AMPUSER=") in new stack
-- Executing [s@macro-user-callerid:5] Set("SIP/153-00000095", "AMPUSERCIDNAME=") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("SIP/153-00000095", "1?report") in new stack
-- Goto (macro-user-callerid,s,10)
-- Executing [s@macro-user-callerid:10] GotoIf("SIP/153-00000095", "0?continue") in new stack
-- Executing [s@macro-user-callerid:11] Set("SIP/153-00000095", "__TTL=64") in new stack
-- Executing [s@macro-user-callerid:12] GotoIf("SIP/153-00000095", "1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s@macro-user-callerid:19] Set("SIP/153-00000095", "CALLERID(number)=153") in new stack
-- Executing [s@macro-user-callerid:20] Set("SIP/153-00000095", "CALLERID(name)=device") in new stack
-- Executing [s@macro-user-callerid:21] NoOp("SIP/153-00000095", "Using CallerID "device" <153>") in new stack
-- Executing [1288@from-internal:3] Goto("SIP/153-00000095", "from-citas,ivrCitas,1") in new stack
-- Goto (from-citas,ivrCitas,1)
-- Executing [ivrCitas@from-citas:1] Answer("SIP/153-00000095", "") in new stack
> 0x2b8860292850 -- Probation passed - setting RTP source address to 172.20.1.100:40038
-- Executing [ivrCitas@from-citas:2] Wait("SIP/153-00000095", "3") in new stack
-- Executing [ivrCitas@from-citas:3] Set("SIP/153-00000095", "TIMEOUT(absolute)=0") in new stack
-- Channel hangup cancelled.
-- Executing [ivrCitas@from-citas:4] Set("SIP/153-00000095", "autofallthrough=no") in new stack
-- Executing [ivrCitas@from-citas:5] AGI("SIP/153-00000095", "IVR_CITAS.php") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/IVR_CITAS.php
-- <SIP/153-00000095>AGI Script IVR_CITAS.php completed, returning 0
-- Executing [ivrCitas@from-citas:6] Wait("SIP/153-00000095", "1") in new stack
== Spawn extension (from-citas, ivrCitas, 7) exited non-zero on 'SIP/153-00000095'
-- Remote UNIX connection
-- Remote UNIX connection disconnected
gcSVR03*CLI>
la plataforma donde estoy ejecutando esto es la siguiente
elastix 2.4.0 2
asterisk 11.5.0 0
CentOS Linux 5.9
PHP 5.1.6 (cli) (built: Jul 12 2013 16:52:22)
el contexto es el siguiente
[from-citas]
exten => ivrCitas,1,Answer()
exten => ivrCitas,n,wait(3)
exten => ivrCitas,n,Set(TIMEOUT(absolute)=0)
exten => ivrCitas,n,Set(autofallthrough=no)
exten => ivrCitas,n,Agi(IVR_CITAS.php)
exten => ivrCitas,n,wait(1)
exten => ivrCitas,n,Hungup
Gracias por la ayuda.
saludos Cordiales
Omar Galaviz
Comentario