Ricky... creo que primero deberías probar tus queries en la base para saber que hacen lo que tu quieres.... y ya despues meterlos al script, revisa algún tutorial de queries básicos porque realmente no necesitas más.
Una vez que los queries funcionen, mételos al php y prueba el php igual desde la línea de comandos de linux con "php caller.php". Revisa algún tutorial de php y mysql para que te oriente. Una vez que funcione y tengas los resultados esperados ahora sí metelos al asterisk.
Decidiste usar AGI, pero yo usaría ODBC para conectar a MySQL directo desde Asterisk y así podrías usar funciones que tu crees, en el capítulo 16 del ASterisk the definitive guide viene como.
Saludos,
phpagi y mysql
Colapsar
Anuncio
Colapsar
No hay anuncio todavía.
X
-
Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Executing [3000@locales:1] Answer("SIP/101-00000003", "") in new stack
-- Executing [3000@locales:2] AGI("SIP/101-00000003", "caller.php") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/caller.php
<SIP/101-00000003>AGI Tx >> agi_request: caller.php
<SIP/101-00000003>AGI Tx >> agi_channel: SIP/101-00000003
<SIP/101-00000003>AGI Tx >> agi_language: es
<SIP/101-00000003>AGI Tx >> agi_type: SIP
<SIP/101-00000003>AGI Tx >> agi_uniqueid: 1385049167.3
<SIP/101-00000003>AGI Tx >> agi_version: 1.8.24.0
<SIP/101-00000003>AGI Tx >> agi_callerid: 101
<SIP/101-00000003>AGI Tx >> agi_calleridname: Alcides-test
<SIP/101-00000003>AGI Tx >> agi_callingpres: 0
<SIP/101-00000003>AGI Tx >> agi_callingani2: 0
<SIP/101-00000003>AGI Tx >> agi_callington: 0
<SIP/101-00000003>AGI Tx >> agi_callingtns: 0
<SIP/101-00000003>AGI Tx >> agi_dnid: 3000
<SIP/101-00000003>AGI Tx >> agi_rdnis: unknown
<SIP/101-00000003>AGI Tx >> agi_context: locales
<SIP/101-00000003>AGI Tx >> agi_extension: 3000
<SIP/101-00000003>AGI Tx >> agi_priority: 2
<SIP/101-00000003>AGI Tx >> agi_enhanced: 0.0
<SIP/101-00000003>AGI Tx >> agi_accountcode:
<SIP/101-00000003>AGI Tx >> agi_threadid: 139744972556032
<SIP/101-00000003>AGI Tx >>
-- <SIP/101-00000003>AGI Script caller.php completed, returning 0
-- Executing [3000@locales:3] Wait("SIP/101-00000003", "3") in new stack
-- Executing [3000@locales:4] Hangup("SIP/101-00000003", "") in new stack
== Spawn extension (locales, 3000, 4) exited non-zero on 'SIP/101-00000003'
Dejar un comentario:
-
phpagi y mysql
Saludos foro , estoy realizando mi primer AGI con phpagi , ya que en la administración me han solicitados algunos requerimientos y que dando vueltas solo con AGI se puede realizar , la idea aquí es captar el callerid de la persona que llama y que se guarde en una bd de mysql donde ya tenga los tipos de operadores de aquí mi país , e identificar de que operador están llamando mas.
tengo la bd creada llamada demo , tengo las tablas control,operadores y prefijos , la idea es meter el callerid en control que es una tabla que contiene los campos: CALLERID, OPERADOR,FECHA, ID .
estoy realizando el script , pero no se si el método de comprobación y insercion en MySQL es correcto
#!/usr/bin/php -q
<?php
require("phpagi.php");
// reviso los log de depuracion
error_reporting(E_ALL);
// hago la conexion a MySQL
$conect = new Mysqldb();
$db = $conect->newConnection('localhost', 'demouser', 'cisco2011', 'demo');
echo 'Conectando.. ';
// hacemos una nueva instancia de AGI
$agi = new AGI();
// para hacer un Answer en Asterisk
$agi->answer();
//obtengo el caller id de la llamada
$callerid = $AGI->request['agi_callerid'];
//revisar si algna ves llamo
$query = "select callerid, operador, fecha, id ";
// insertar el caller id
$query = "insert into operador (callerid) values ('" . $callerID . '")";
$agi->hangup();
?>
no soy ducho a la programación , a ver quien me da una manoEtiquetas: Ninguno
Dejar un comentario: