Aplicaciones Básicas

De Asterisk Wiki
Ir a la navegación Ir a la búsqueda
Format.png Formatear
Esta página necesita ser editada para cumplir los requisitos del wiki.
Puedes revisar todas las páginas sin suficiente formato en este enlace.
Alert.png To Do
Esta página necesita ser completada.
Puedes revisar todas las páginas por completar en este enlace.


El mundo de las Aplicaciones en Asterisk es tan extenso que merece ser tratado independientemente. Concretamente existen una serie de aplicaciones que son utilizadas recurrentemente, y es importante que sean vistas y tratadas de manera especifica, como parte del formato de construcción de nuestros Planes de Marcación.

Logo Asterisk

Aplicación Answer

Traducción directa de "Responder". La función de esta aplicación básicamente es la de descolgar la llamada entrante. Puede resultar trivial, pero hay que entender que en función de las aplicaciones que vengan a continuación es posible que sea necesario que nuestra máquina Asterisk ya tenga el control sobre el canal entrante (mediante el uso de esta aplicación), o no lo requiera de momento.

A nivel de mensaje SIP ejecutar esta aplicación es lo mismo que enviar un mensaje al par que llama de OK. Hay que considerar que en el momento que lanzamos esta aplicación al descolgar la llamada, ya comenzaría el ciclo de facturación del llamante por lo que eventualmente, a no ser que sea estrictamente necesario, no es una buena idea incluirla en nuestro dialplan por sistema o costumbre. Tenemos que saber si las aplicaciones sucesivas, realmente requieren que el canal este "contestado" para que funcionen correctamente.

Puede recibir un solo parámetro Answer(<retraso>), numérico en milisegundos, tiempo que esperara antes de recepcionar la llamada. Es equivalente a poner la aplicación Wait previa a esta, por lo que no es muy común, dado que "complica" un poco el código.

Aplicación Progress

Contrariamente a la aplicación Answer, es posible enviar un mensaje llamado 183 Session Progress. Es considerado una forma de enviar "Audio por adelantado" y solo funciona evidentemente en entornos donde este mensaje sea permitido como SIP e IAX. Con este mensaje lanzado, podríamos a continuación ejecutar alguna aplicación o recurso que necesite este mensaje "Early Audio" como laMúsica en Espera

Aplicaciones para Depuración de Errores

Aplicación NoOp

Significa literalmente No Operation, es decir, Sin Operación, así que esta aplicación no hace nada. ¿Utilidad? Se puede insertar cualquier mensaje a voluntad, inclusive variables y se visualizarían directamente durante el registro de detalle en nuestra interfaz CLI. Es muy práctica para saber por ejemplo el estado de una variable en un momento determinado si estamos teniendo algún tipo de problema que no somos capaces de resolver, por tanto es una gran aplicación para Depuración en tiempo real.

Considerar también que es una muy buena práctica poner esta aplicación, en la prioridad numero 1. Ya que al no hacer nada especial, directamente podemos empezar a poner aplicaciones a voluntad en las siguientes prioridades utilizando el sistema de conteo automático (n, n+1) y podemos luego alterar el orden o incluir nuevas aplicaciones a voluntad en el futuro sin que afecte al orden de prioridades.

Ejemplo. Si tenemos la siguiente secuencia:

exten => 111,1,Answer()
same => n,Dial(...)
same => n,Hangup()

Si queremos introducir una aplicación al principio, tendríamos que modificar bastante código:

exten => 111,1,Wait(3)
same => n,Answer()
same => n,Dial(...)
same => n,Hangup()

En cambio si hubieramos tenido una operación NoOp() al principio, hubiera sido muy fácil insertarlo

exten => 111,1,NoOp()
same => n,Answer()
same => n,Dial(...)
same => n,Hangup()

Solamente agregando una linea a la secuencia. Puede resultar insignificante, pero es un sistema para mantener un código con mayor flexibilidad y calidad.

exten => 111,1,NoOp()
same => n,Wait(3)
same => n,Answer()
same => n,Dial(...)
same => n,Hangup()

Aplicación Verbose

Es exactamente igual que la aplicación NoOp con la diferencia que NoOp siempre imprime en el nivel de detalle (verbose) número 3 o superior, y esta aplicación puede especificar el nivel concreto.

Recordar que los niveles de Detalle (verbose) se pueden especificar tanto al cargar la interfaz CLI con el parámetro -v (-vvv 3 niveles por ejemplo), tanto por defecto en el archivo asterisk.conf

Aplicación DumpChan

Muestra información sobre el canal en curso. Puede recibir un parámetro DumpChan(<nivel>) siendo al igual que la aplicación Verbose, el nivel desde el cual podríamos ver esta información.


Subtitulo 2.1

Info del Subtitulo 2.1

Subitutlo 2.1.1

Info del Subtitulo 2.1.1 [1]

Referencias

  1. 10000 Horas, Manuel Camargo (2010)

Véase también

Enlaces Externos