sábado, 5 de febrero de 2011

Teoría de Contextos de Asterisk - Parte II

Amigos, en la Parte I quedamos pendiente con unas interrogantes, a continuación les refresco el escenario:

Analicemos entonces: 

La diferencia es que el dispositivo SIP/101 está registrado en el contexto [ventas] y en este contexto ninguna extensión hace referencia a este dispositivo.  Planteo entonces los siguientes escenarios.

a) El dispositivo SIP/101 disca 201: en este caso, el dispositivo SIP/101 busca la extensión 201 en el contexto en el que está registrado [ventas], en este caso hace match con la sentencia de la extensión 201 y por ende asterisk ejecuta el dial al dispositivo correspondiente (SIP/201).

b) El dispositivo SIP/101 disca 102: igual que en el caso anterior, el dispositivo SIP/101 busca la extensión 102 en el contexto en el que está registrado [ventas], en este caso NO hace match y por ende asterisk va a la extensión i (invalida)

c) El dispositivo SIP/201 disca 101:  El dispositivo SIP/201 busca la extensión en el contexto en el cual está registrado [ventas], en este caso NO hace match y por ende asterisk va a la extensión i (invalida). 

Este escenario es muy importante y es el punto principal de este post, porque demuestra que un dispositivo SIP (como en este caso el SIP/101) puede estar registrado en un contexto que no tenga una extensión que haga referencia a él. por tanto puede llamar a todas las extensiones del contexto pero nadie lo puede llamar a él.

d) El dispositivo SIP/102 disca 101:  El dispositivo SIP/102 busca la extensión en el contexto en el cual está registrado [compras], en este caso hace match y por ende asterisk ejecuta el dial al dispositivo correspondiente (SIP/101) pero resulta que en el contexto [compras] no hay registrado ningún dispositivo SIP/101 y Asterisk no puede entonces conocer a cual dirección IP va a enviar la llamada, arrojando un advertencia que indica que no posee ruta al host.


Hago entonces énfasis en lo que es la base de la teoría de contextos en Asterisk
Un dispositivo SOLO tiene acceso a las extensiones declaradas en el contexto en el cual está registrado.
Si tienes bien claro esta afirmación, tienes ganado una gran parte de lo que debes conocer en el mundo de la telefonía IP Asterisk.

Te recuerdo:

1.- Podemos interactuar a través de los comentarios de cada post.
2.- Puedes ayudarme a difundirlo a través de tus redes sociales haciendo click en los botones que siguen:

4 comentarios:

  1. Me ha sido de mucha utilidad tu post Ramón. No me había quedado lo sufucientemente clara la diferencia entre extensión y dispositivo. Tengo una duda sólamente. En algunas GUIs para asterisk, caso concreto Free PBX se menciona que es posible realizar una marcación como dispositivo en lugar de como extensión. Corrígeme si estoy equivocado, pero esto permitiría la marcación entre usuarios que no necesariamente esten el el mismo contexto. Gracias por tu post y por tu respuesta a una interrogante mas.

    SAludos

    ResponderEliminar
  2. g!0,
    Gracias por el comentario.. lo veas como extensión o por dispositivo, nunca se podrá marcar entre usuarios que estén registrados en contextos diferentes a menos que estén hagas el include.

    ResponderEliminar
  3. Ramón, excelente post.
    Entendí finalmente de que se trata el asunto de los contextos en asterisk.

    ResponderEliminar
  4. Excelente aclaración, que bueno que hicieras un ejemplo asi como este de contextos, con llamadas automaticas (AGI)...

    ResponderEliminar