Enviar una variable a asterisk

Discussion in 'Elastix 2.x' started by nancy, Sep 3, 2009.

  1. nancy

    Joined:
    Aug 5, 2009
    Messages:
    17
    Likes Received:
    0
    Hola espero me puedan ayudar. Les platico quiero enviar una variable a asterisk jugar con ella ya cuando este adentro y luego volverla a mostrar ya con sus modificaciones en php. No tengo mucha idea de como hacer esto pero ya estuve buscando y ya realize lo siguiente

    extensions_custom.conf

    exten => 300,1,AGI(/var/www/html/agiscript.php,${variable})
    exten => 300,2,Hangup


    #! /usr/local/cgi-bin/php -q

    <?php
    require "/var/lib/asterisk/agi-bin/phpagi-2.14/phpagi.php";

    $agi = new AGI();
    $agi -> answer();
    $mivar = $agi->get_variable("variable");
    echo $mivar;

    ?>

    y me marca este error
    #!/usr/bin/php/ -q
    Fatal Error> Maximum execution time of 90 seconds exceeded in /var/lib/asterisk/agi-bin/phpagi-2.14/phpagi.php on line 186

    ya probe algunos ejemplos que incluye el sitio de AGI PHP y tambien me muestra el mismo error.

    Ya verifique la ruta de php es /usr/bin/php

    Que podra ser mi error?

    De antemano Gracias
     
  2. hlarrea

    Joined:
    Jun 3, 2008
    Messages:
    18
    Likes Received:
    0
    Nancy ,

    No se si esto es lo que necesitas ya que no comprendo mucho lo de la variable, pero con esto tu puedes ingresar una variable mediante una extensión puede ser para ingresar un dato como el ejemplo a la variable $_result y con esta juegas, espero te pueda ayudar

    //pides el valor
    $agi->exec("Playback","/var/lib/asterisk/agi-bin/milocucioncf") ;


    //enviamos un beep y esperamos 20 segundos en la espera de una respuesta
    $_result = $agi->get_data('beep', 3000, 20);

    //obtenemos la informaci
     
  3. nancy

    Joined:
    Aug 5, 2009
    Messages:
    17
    Likes Received:
    0
    Gracias por su ayuda, pero como dices lo intente y solo me devuelve tres digitos, si le pongo mas me obtiene la variable vacia
    Ya obtuve la variable de la manera que expongo abajo, pero en los elementos de mi array no hay ningun elemento que almacene los digitos que se presionaron por el telefono, y en asterisk CLI si la obtiene. Este es mi script

    $agi->text2wav('Digita tu numero de tarjeta y despues presiona la tecla gato');
    $agi->exec('Read','MIVAR||14||2|50' );
    $mivar = $agi->get_variable(MIVAR);
    $agi->verbose($mivar);

    $keys = $mivar['data'];
    $agi->text2wav("Es".$keys);

    Esto es lo que me muestra el asterisk CLI

    -- AGI Script Executing Application: (Read) Options: (MIVAR||14||2|50)
    -- User entered '256389'
    /var/lib/asterisk/agi-bin/a.php,: Array
    /var/lib/asterisk/agi-bin/a.php,: (
    /var/lib/asterisk/agi-bin/a.php,: [ code] => 200
    /var/lib/asterisk/agi-bin/a.php,: [result] => 0
    /var/lib/asterisk/agi-bin/a.php,: [data] =>
    /var/lib/asterisk/agi-bin/a.php,: )
    /var/lib/asterisk/agi-bin/a.php,:
    por que se queda vacio? no me regresa nada y cuando se ejecuta el tex2wav solo dice "ES".

    De antemano Gracias!
     
  4. zeoneo

    Joined:
    Sep 24, 2009
    Messages:
    549
    Likes Received:
    0
    revisaste los permisos de escritura y lectura de tus archivos??

    Creo que va por ahi....
     

Share This Page