[Asterisk-ES] Curso de AGI, ¿recomendación?

144 views
Skip to first unread message

Manolo Quijano

unread,
Nov 4, 2013, 5:33:47 PM11/4/13
to aster...@googlegroups.com
Hola a todos, 

       Necesito automatizar unos procesos en el dialplan y estaba pensando en empezar a ver AGI.

       Mirando por la red he visto que se puede hacer tanto en .sh como en php, asi que os pregunto si ¿ realmente da igual hacerlo sobre sicrip de sh o mejor php?

        Y si me podéis recomendar algún curso, link para hacer mis primeros pasos, he visto cosas en la red pero conceptos y cosas sueltas, si conocen de algún curso que va de menos a mas se lo agradecería.

Gracias,

Exequiel leite

unread,
Nov 4, 2013, 5:38:56 PM11/4/13
to aster...@googlegroups.com

Hay un libro sobre agis dando vueltas. Esta un poco desactualizado pero es un excelente punto de partida. Hace poco lo habían compartido en la lista.

Sent from my Nexus 4

--
Este email pertenece a la lista de Asterisk-ES (http://www.asterisk-es.org)
Normas de la lista Asterisk-ES: http://comunidad.asterisk-es.org/index.php?title=Lista:normas-asterisk-es
---
Has recibido este mensaje porque estás suscrito al grupo "asterisk-es" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a asterisk-es...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a aster...@googlegroups.com.
Visita este grupo en http://groups.google.com/group/asterisk-es.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

Manolo Quijano

unread,
Nov 4, 2013, 5:40:10 PM11/4/13
to aster...@googlegroups.com
El nombre del libro para poder hacer una búsqueda no te acordaras por casualidad verdad?

Gracias,
Manolo Q.

Gaston Draque

unread,
Nov 4, 2013, 10:02:53 PM11/4/13
to aster...@googlegroups.com
Es el de Nir Simionovich ( Asterisk Gateway Interface 1.4 and 1.6 Programming | Packt ) y aunque tiene su tiempo, esta bueno para comprender la interface. http://www.packtpub.com/asterisk-gateway-interface-programming/book
Yo que vos arrancaría con el capitulo actualizado de AGIs de la ultima version del libro de Asterisk

Saludos//


2013/11/4 Manolo Quijano <manolo....@gmail.com>



--
{
  "fullName" : "Gaston Draque"
  "email"    : "gaston...@gmail.com"
  "twitter"  : "@gdraque"
  "google+"  : "google.com/+gastondraque"
  "tags"     : ["uc communications","telecom integrator","voip","software development"]
}

Manolo Quijano

unread,
Nov 5, 2013, 1:52:58 AM11/5/13
to aster...@googlegroups.com
Muchas gracias.

Si la página http://ofps.oreilly.com/titles/9781449332426/AGI.html la
encontré anoche en la red pero hay cosas que ahora mismo no me
cuadraban. Yo tenía entendido que un AGI es como "una macro" con el
que podemos automatizar procesos, operaciones, ... entonces cuando en
el ejemplo vi esto

exten => 500,1,AGI(hello-world.sh)

Y que la ejecución de esta línea daba

-- Executing [500@phones:1] AGI("SIP/0004F2060EB4-00000009",
"hello-world.sh") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/hello-world.sh
<SIP/0004F2060EB4-00000009>AGI Tx >> agi_request: hello-world.sh
<SIP/0004F2060EB4-00000009>AGI Tx >> agi_channel: SIP/0004F2060EB4-00000009
<SIP/0004F2060EB4-00000009>AGI Tx >> agi_language: en
<SIP/0004F2060EB4-00000009>AGI Tx >> agi_type: SIP


No entiendo de donde sale el canal SIP/0004F2060EB4-00000009, no lo
veo especificado, asi que preferí preguntar por algún curso o libro
que empezara desde cero para aclarar conceptos.

Gracias.
Manolo Q.

El 05/11/13, Gaston Draque <gaston...@gmail.com> escribió:
> --
> {
> "fullName" : "Gaston Draque"
> "email" : "gaston...@gmail.com"
> "twitter" : "@gdraque"
> "google+" : "google.com/+gastondraque"
> "linkedIn" : "http://www.linkedin.com/in/draque"
> "tags" : ["uc communications","telecom integrator","voip","software
> development"]
> }
>

Gaston Draque

unread,
Nov 5, 2013, 7:30:00 AM11/5/13
to aster...@googlegroups.com
Manolo, como han dicho en el foro mas de 1 vez, Asterisk sigue siendo una PBX multiprotocolo, un B2BUA que requiere cierto conocimiento de comunicaciones pero que ademas tiene una arquitectura particular.

SIP/0004F2060EB4-00000009 es el canal donde se esta ejecutando el AGI. Si la seccion del dialplan fue ejecutada por un canal SIP con session 0004F2060EB4-00000009 , tenes el canal SIP/0004F2060EB4-00000009

Tienes que pensar que asterisk es channel-based, piensa en un canal como una sesión (flame alert :P) que solo comparte con el core las variables globales (flame alert :P) todas las variables que se van seteando son "para esa session/channel" , una vez que se cuelga(y otras frutas), se pasa por un proceso de destrucción del canal que se encarga de correr los procesos de limpieza y almacenamiento si fuera necesario y libera la session, por lo que si luego corres "core show channels concise", ya no debieras ver SIP/0004F2060EB4-00000009

Consejos pueden dar los abuelos... pero si yo fuera a empezar con Asterisk ahora - que buen momento el de Asterisk ahora !!! (otro tema :) - yo arrancaría por entender la arquitectura de Asterisk.

Aca mis 2 centavos al respecto, yo leería esto en este orden:


... finalmente, una joyita, Russell Bryant pone todo en su lugar en un único articulo :):

[5] The Architecture of Open Source Applications: Asterisk 


Saludos,
Gaston//

PS: He dejado AGI de lado... creo que lo de los canales es fundacional en Asterisk, y cuanto antes lo saques del camino, mejor.


2013/11/5 Manolo Quijano <manolo....@gmail.com>



--
{

Manolo Quijano

unread,
Nov 5, 2013, 8:08:20 AM11/5/13
to aster...@googlegroups.com
Muchas gracias por los consejos.

Llevo en asterisk poco tiempo y voy consiguiendo hacer andar las cosas
a base de mucho buscar, leer y preguntar, pero cosas que segurmante
son básicas están un poco en el tintero o cogido con pinzas.

Gracias,

El 05/11/13, Gaston Draque <gaston...@gmail.com> escribió:
> Manolo, como han dicho en el foro mas de 1 vez, Asterisk sigue siendo una
> PBX multiprotocolo, un B2BUA que requiere cierto conocimiento de
> comunicaciones pero que ademas tiene una arquitectura particular.
>
> SIP/0004F2060EB4-00000009 es el canal donde se esta ejecutando el AGI. Si
> la seccion del dialplan fue ejecutada por un canal SIP con session
> 0004F2060EB4-00000009
> , tenes el canal SIP/0004F2060EB4-00000009
>
> Tienes que pensar que asterisk es channel-based, piensa en un canal como
> una sesión (flame alert :P) que solo comparte con el core las variables
> globales (flame alert :P) todas las variables que se van seteando son "para
> esa session/channel" , una vez que se cuelga(y otras frutas), se pasa por
> un proceso de destrucción del canal que se encarga de correr los procesos
> de limpieza y almacenamiento si fuera necesario y libera la session, por lo
> que si luego corres "core show channels concise", ya no debieras ver
> SIP/0004F2060EB4-00000009
>
> Consejos pueden dar los abuelos... pero si yo fuera a empezar con Asterisk
> ahora - que buen momento el de Asterisk ahora !!! (otro tema :) -
> yo arrancaría por entender la arquitectura de Asterisk.
>
> *Aca mis 2 centavos al respecto, yo leería esto en este orden:*
>
> *Asterisk Architecture, The Big Picture*
> *[1]*<https://wiki.asterisk.org/wiki/display/AST/Asterisk+Architecture,+The+Big+Picture>
> https://wiki.asterisk.org/wiki/display/AST/Asterisk+Architecture,+The+Big+Picture
>
> *[2]*<https://wiki.asterisk.org/wiki/display/AST/Call+Flow+and+Bridging+Model>
> *Call
> Flow and Bridging Model*
> https://wiki.asterisk.org/wiki/display/AST/Call+Flow+and+Bridging+Model
>
> *[3] <https://wiki.asterisk.org/wiki/display/AST/Asterisk+Architecture>
> Asterisk Architecture*
> https://wiki.asterisk.org/wiki/display/AST/Asterisk+Architecture
>
> *[4] <https://wiki.asterisk.org/wiki/display/AST/Types+of+Asterisk+Modules>
> Types of Asterisk Modules*
> https://wiki.asterisk.org/wiki/display/AST/Types+of+Asterisk+Modules
>
> ... finalmente, una joyita, Russell Bryant pone todo en su lugar en
> un único articulo :):
>
> *[5] <http://www.aosabook.org/en/asterisk.html> **The Architecture of Open
> Source Applications: Asterisk *
Reply all
Reply to author
Forward
0 new messages