Buenas tardes, estoy implementando una Survey IVR en la cual se guarda una calificación, el numero del llamante (callerid) y el interno el cual lo atendio
Todavía esta en fase de pruebas, no deriva la llamada, solo estoy llamando al ringroup para probarla. Como puedo capturar el numero del interno el cual lo atendio? Ya que una vez en la encuesta no tengo ese dato debido a que se supone que la llamada se deriva al IVR cuando el agente corta.
Este es mi script
[macro-survey]
exten => s,1,Read(CALIF,"question1",1,,,3)
exten => s,n,AGI(prueba.php,${EXTEN},${CALLERID(all)},${CALLERID(num)},${CALIF})
exten => s,n,Playback("thankyouforyourtime")
exten => s,n,Hangup
---- prueba.php:
#!/usr/bin/php -c -d
<?
require('phpagi.php');
$agi = new AGI();
$agi->exec('NoOp "' . 'Inicio' . '"'); // debug begining
$calificacion=$argv[4]; // the argument passed from elastix
if ( calificacion <> '0') { // if something useful was pressed
$agi->exec('NoOp "' . 'Callerid: '.$argv[1] . '"'); // just for debug
$agi->exec('NoOp "' . 'Entrantid: '.$argv[0] . '"'); // just for debug
$agi->exec('NoOp "' . 'Calific: '.$calificacion . '"'); // just for debug
print_r($argv);
// open database conection
$conexion=mysql_connect("localhost","root","Pirulo123")
or die ("Error en Conexion");
mysql_select_db("encuestas")
or die ("Fallo en mysql_select_db");
// query for insert
$sql ="insert into encuestas (cid_llamante, int_atiende, calificacion) " ;
$sql.="values ( '$argv[3]', '$argv[3]', '$calificacion' )" ;
//$agi->exec('NoOp "' . $sql . '"');
// do the insert
mysql_query ($sql) or die(mysql_error());
mysql_close($conexion);
}
$agi->exec('NoOp "' . " FIN " . '"'); // en debug.
?>
En resumen: Esto funciona, pero no entiendo como podría obtener el numero de interno que atendio a la persona antes (los unicos datos que pude obtener hasta ahora es el id del llamante y la calificacion que entra el usuario)