Cursos Asterisk en México

phpagi y mysql

Colapsar

Anuncio

Colapsar
No hay anuncio todavía.
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • rickygm
    respondió
    por cierto agradecidos con Ustedes por la ayuda.

    Dejar un comentario:


  • rickygm
    respondió
    Muchachos , resuelto , basicamente era la sintaxis dada la que me hacia falta.

    Dejar un comentario:


  • rickygm
    respondió
    hector y christian , tenes razon ya lo pongo ahorita , mientras pongo otro query para que no repita los números ingresados ..

    Dejar un comentario:


  • Christian Cabrera
    respondió
    ¿Y en que parte ejecutas el query?

    Solo lo estás declarando dentro de $query, pero nunca invocas el comando de mysql_query($query).

    Dejar un comentario:


  • hector
    respondió
    el problema es que nunca estás ejecutando el query... haz un mysql_query($query);

    Dejar un comentario:


  • rickygm
    respondió
    hector muchas gracias por el query , lo raro es que no mete el callerid dentro de la bd

    #!/usr/bin/php -c
    <?php
    require("phpagi.php");
    // reviso los log de depuracion
    error_reporting(E_ALL);
    // hago la conexion a MySQL
    $hostname = "localhost";
    $dbname = "demo";
    $username = "demouser";
    $password = "cisco2011";
    // hacemos una nueva instancia de AGI
    $agi = new agi();
    // para hacer un Answer en Asterisk
    $agi->answer();

    // habilito el debug
    $agi->verbose("Conectando ... ".$callerid);
    //obtengo el caller id de la llamada
    $callerid = $agi->request['agi_callerid'];
    $mySql = mysql_connect($hostname, $username, $password) or die (mysql_error());
    mysql_select_db($dbname, $mySql) or die(mysql_error());

    //revisar si algna ves llamo
    //$query = "select callerid, operador, fecha, id ";
    // insertar el caller id
    $query = "insert into control (callerid) values ('{$callerid}')";

    $agi->hangup();

    ?>

    Dejar un comentario:


  • hector
    respondió
    $query = "insert into control (callerid) values ({$callerid})"; //si tu campo callerid es numérico
    ó
    $query = "insert into control (callerid) values ('{$callerid}')"; //si tu campo callerid es alfanumérico

    Dejar un comentario:


  • rickygm
    respondió
    si hago la consulta desde el cli de mysql y ingreso un numero lo hace perfecto

    dentro del script tengo

    $query = "insert into control (callerid) values ($callerid )";

    Dejar un comentario:


  • rickygm
    respondió
    -- Executing [3000@locales:1] Answer("SIP/101-0000000a", "") in new stack
    -- Executing [3000@locales:2] AGI("SIP/101-0000000a", "caller.php") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/caller.php
    <SIP/101-0000000a>AGI Tx >> agi_request: caller.php
    <SIP/101-0000000a>AGI Tx >> agi_channel: SIP/101-0000000a
    <SIP/101-0000000a>AGI Tx >> agi_language: es
    <SIP/101-0000000a>AGI Tx >> agi_type: SIP
    <SIP/101-0000000a>AGI Tx >> agi_uniqueid: 1385055674.10
    <SIP/101-0000000a>AGI Tx >> agi_version: 1.8.24.0
    <SIP/101-0000000a>AGI Tx >> agi_callerid: 88888880
    <SIP/101-0000000a>AGI Tx >> agi_calleridname: 101
    <SIP/101-0000000a>AGI Tx >> agi_callingpres: 0
    <SIP/101-0000000a>AGI Tx >> agi_callingani2: 0
    <SIP/101-0000000a>AGI Tx >> agi_callington: 0
    <SIP/101-0000000a>AGI Tx >> agi_callingtns: 0
    <SIP/101-0000000a>AGI Tx >> agi_dnid: 3000
    <SIP/101-0000000a>AGI Tx >> agi_rdnis: unknown
    <SIP/101-0000000a>AGI Tx >> agi_context: locales
    <SIP/101-0000000a>AGI Tx >> agi_extension: 3000
    <SIP/101-0000000a>AGI Tx >> agi_priority: 2
    <SIP/101-0000000a>AGI Tx >> agi_enhanced: 0.0
    <SIP/101-0000000a>AGI Tx >> agi_accountcode:
    <SIP/101-0000000a>AGI Tx >> agi_threadid: 139744973063936
    <SIP/101-0000000a>AGI Tx >>
    sip*CLI> quit

    Dejar un comentario:


  • rickygm
    respondió
    algo que me llama la atencion es cuando ejecuto el script con php me tira este mensaje:

    php caller.php

    PHP Notice: Undefined index: PATH in /var/lib/asterisk/agi-bin/phpagi.php on line 1693

    ahora si pruebo el script llamando de una extensión , no me graba el callerid en la bd

    Dejar un comentario:


  • rickygm
    respondió
    jejej el verbose le tenia que meter despues del new agi

    Dejar un comentario:


  • rickygm
    respondió
    Originalmente publicado por Christian Cabrera Ver Mensaje
    El problema de tu AGI es que haces un echo. Nunca debes hacer echos en un AGI o te rompe todo. Si deseas notificar algo, usa

    $agi->verbose("Tu mensaje aqui");

    vale , gracias aunque lo agrego como tu dice Christian y me da un error al ejecutarlo

    Call to a member function verbose() on a non-object in /var/lib/asterisk/agi-bin/caller.php on line 17

    // linea 17
    $agi->verbose("conectando");


    vere la sintaxis en la docu

    Dejar un comentario:


  • Christian Cabrera
    respondió
    Otro problema que acabo de ver: declaraste $agi pero después usas $AGI. PHP es sensible a mayúsculas y minúsculas.

    Dejar un comentario:


  • Christian Cabrera
    respondió
    El problema de tu AGI es que haces un echo. Nunca debes hacer echos en un AGI o te rompe todo. Si deseas notificar algo, usa

    $agi->verbose("Tu mensaje aqui");

    Dejar un comentario:


  • rickygm
    respondió
    voy a buscar los queries , ya les comento.

    Dejar un comentario:

Principales Usuarios Activos

Colapsar

No hay usuarios activos superiores.
Trabajando...
X