martes, 7 de octubre de 2008

Plan de Marcado

Según el libro “Asterisk PBX Guía de Configuración” de Flavio E. Gonçalves.
“El plan de marcado es sin duda el área de configuración de Asterisk mas importante y es el responsable del funcionamiento de la conmutación de las llamadas.”

El Plan de Marcado o Dialplan es, por decirlo de alguna manera, el cerebro de Asterisk; es aquí donde se ejecutan todas las decisiones que toma el programa y se configura en el archivo extensions.conf que se encuentra en /etc/asterisk. Este controla como las llamadas, tanto de entrada como de salida, son encaminadas y configuradas.

Para crear el plan de marcado tenemos que abrir el archivo extensions.conf y configurarlo de la siguiente manera:

Primero, al igual que en iax.conf y sip.conf, se configura la sesión general.

[general]

static=no
Esta opción afecta la operación del comando “save dialplan”. El valor estándar es “no”

writeprotect=yes
Esta opción afecta la operación del comando “save dialplan”. El valor estándar es “no”

Según el Libro “Asterisk PBX Guía de Configuración” de Flavio E. Gonçalves.
“Save dialplan sobrescribirá su archivo extensions.conf con uno nuevo generado por el plano de numeración actual. Una copia de su archivo extensions.conf viejo no sera guardada. Todos los comentarios seran perdidos. El archivo ejemplo de asterisk viene con esta configuracion peligrosa writeprotect=no, static=yes”

autofallthrogh=yes
Si estuviera configurado para yes, al final de un conjunto de comandos para una extensión este terminará la ejecución con un BUSY, CONGESTION o HANGUP dependiendo de que el Asterisk encuentre mas conveniente.

clearglobalvars=yes
Limpia y recarga las variables globales cada vez que ocurre un reload en Asterisk.

priority jumping=yes
Las aplicaciones que soportan saltar prioridades fundamentado en el resultado de las operaciones correrán de forma normal.

Después de configurara la sesión general, se creara el o los contextos de cada usuario. Nosotros en las extensiones anteriores colocamos context=out_general, entonces debemos crear un contexto que lleve por nombre out_general.

La estructura del plan de marcado es la siguiente:


exten=extensión,prioridad, aplicación

Ejemplo:
[out_general]
exten=30,1,wait(3) Con esto lo que estamos haciendo es
que cuando se marque la extensión 30
espere 3 segundos antes de pasar a la
siguiente prioridad.
exten=30,2,dial(SIP/30) Luego de esperar los 3 seg, llamar a
las extensión SIP 30
exten=30,3,hangup() Colgar la llamada

Aquí tenemos un plan de marcado básico, donde al marcar la extensión 30 podremos realizar la llamada.

Como Crear Extensiones?

Antes que nada tenemos que decidir que protocolo vamos usar, o si vamos a usar los dos protocolos. Aquí explicaremos como crear extensiones para ambos protocolos.

Primero vamos a utilizar el protocolo SIP. Para crear una cuenta debemos abrir el archivo sip.conf que se encuentra en /etc/asterisk/

El contexto general es el primero que se configura y se hace de la siguiente manera:

[general]
bindport=5060
Puerto donde asterisk debe esperar por conexiones de entrada SIP. Por lo general se usa 5060

bindaddr=0.0.0.0
Dirección Ip donde asterisk ira a esperar las conexiones SIP. Puede ir la dirección IP del servidor

context=default
Configura el contexto general donde todos los clientes serán colocados, a menos que se especifique un contexto diferente.

disallow=all
Prohíbe todos los codec

allow=ulaw
allow=gsm
allow=alaw
permite un determinado codec

maxexpirey=120
Tiempo máximo para registro en segundos

defaultexpirey=80
Tiempo por defecto para registrarse en segundos

realm=172.16.1.134
Dirección IP del servidor

language=es
Lenguaje en español

pickupgroup=1
callgroup=1
Con estos dos comandos configuramos todas las extensiones SIP en el mismo grupo para así poder realizar la captura de llamadas.

Ahora configuramos cada una de las extensiones:

[Nombre o nº usuario]

type=friend
Configura la clase de conexión

secret=su clave
Usado para autenticar los peers y users

host=dynamic
Configura la dirección ip. La opción dynamic: se espera que el teléfono se registre.

context=out_general
Ver en extension.conf

callerid="nombre"
Identificador de llamada

canreinvite=no
Asterisk tratará de redireccionar de forma predeterminada.

pickupgroup=1
callgroup=1
Con estos dos comandos configuramos todas las extensiones SIP en el mismo grupo para así poder realizar la captura de llamadas.

Con esto ya creamos un usuario SIP, ahora para crear extensiones IAX tenemos que abrir el archivo iax.conf y configurar lo siguiente:


Al igual que en el sip.conf, el contexto general es el primero que se configura.

[general
]
bindport=4569 Se especifica el puerto.
bindaddr=0.0.0.0 Se especifica la dirección IP del servidor
language=es Se especifica el lenguaje
disallow=all Se deniegan los codec
allow=gsm Se permite el codec gsm
allow=alaw Se permite alaw
allow=ulaw Se permite ulaw
pickupgroup=1
callgroup=1 con estos dos comandos se configura las extensiones en un mismo
grupo para poder realizar la captura de llamadas .


Ahora configuramos cada una de las extensiones:


[nº extensión]

type=friend
username=nombre
secret=su clave
host=dynamic
context=out_general
callerid="identificador"
pickupgroup=1
callgroup=1

Como podemos observar, las extensiones IAX se configuran exactamente igual que las extensiones SIP. También se puede ver en ambas extensiones, IAX y SIP, el parámetro context=out_general, este contexto se configura en el archivo extensions.conf y contiene el plan de marcado de la extensión.
 
Alojamiento Web