DIALPLAN BASICO
SINTAXIS DEL DIALPLAN: un dialplan esta formado por 4
conceptos principales:
1. Contexto: Se define dándole el nombre del contexto
dentro de corchetes [ ].
Hay dos contextos especiales [general] y [globals].
Al definir un canal (por ejemplo un archivo sip.conf,
iax.conf, chan_dahdi.conf) uno de los parámetros requeridos en cada definición
del canal es el contexto.
El contexto es el punto del dialplan donde las conexiones
desde cada canal se inicia.
2. Extensions: Serie de pasos que contienen una
aplicación a través de las cuales Asterisk tomara la llamada.
La sintaxis para una extensión es la palabra exten:
(exten=>). Cada paso en una extensión esta compuesto por 3 opciones:
exten=> nombre, prioridad, aplicación()
3.Prioridades:
exten => 123,1,Answer()
exten => 123,2,do something
exten => 123,3,do something else
exten => 123,4,do one last thing
exten => 123,5,Hangup()
exten => 123,1,Answer()
same => n,do something
same => n,do something else
same => n,do one last thing
same => n,Hangup()
4.Aplicaciones:
Answer(): Traducción directa de "Responder". La
función de esta aplicación básicamente es la de descolgar la llamada entrante
Playback(): Sirve para reproducir una pista de audio
contenida en un archivo dentro del directorio especifico de pistas en español
(var/lib/asterisk/sounds/es/)
Hangup(): Simplemente, cuelga la llamada. No es necesario
pasarle ningún parámetro especifico.
DIALPLAN INTERACTIVO
-Goto() Envía una llamada a otra parte del diaplan
same => n,Goto(context,extension,priority)
- Background() Al igual que la aplicación Playback(),
esta reproduce un archivo de audio grabado, sin embargo, al momento de presionar
una tecla se interrumpe la grabación pasando la llamada a la extensión que
corresponde con el numero que se presiono.
-WaitExten() Esta aplicación espera que el que esta
llamando ingrese dígitos mediante DTMF y es usada directamente con la
aplicación Background()
MANEJO DE ENTRADAS NO VÁLIDAS Y TIEMPOS DE ESPERA
En Asterisk cuando un contexto recibe una solicitud de
una extensión no valida, la llamada es enviada a la extensión i.
Cuando al estar llamando no se oprime la tecla dentro del
tiempo valido (10 segundos por defecto) la llamada será enviada a la extensión
t
Ejemplo: exten => 201,1,Goto(TestMenu,start,1)
[TestMenu]
exten => start,1,Answer()
same => n,Background(main-menu)
same => n,WaitExten(5)
exten => 1,1,Playback(digits/1)
same => n,Goto(TestMenu,start,1)
exten => 2,1,Playback(digits/2)
same => n,Goto(TestMenu,start,1)
exten => i,1,Playback(pbx-invalid)
same => n,Goto(TestMenu,start,1)
exten => t,1,Playback(vm-goodbye)
same => n,Hangup()
Para ver la configuración en vídeo, ir al siguiente enlace: Aplicación Goto()
No hay comentarios:
Publicar un comentario