Está en la página 1de 66

PROYECTO ASIR: VoIP & Asterisk

Proyecto ASIR:

VoIP & Asterisk

1. NDICE:
1 NDICE.................................................................................. .........................................pag.2
1.1- ndice de figuras............................................................................................... pag.4

2 FUNDAMENTACIN............................................................ ...................................pag.5 3 INTRODUCCIN.................................................................. .....................................pag.6


3.1- HISTORIA........................................................................................................ pag.6 3.2- VoIP vs PSTN................................................................................................... pag.7

4 PROTOCOLOS VOIP..................................................................................... ..........pag.8


4.1- H323................................................................................................................... pag.8 4.2- SIP..................................................................................................................... pag.9 4.3- RTP Y RTCP.................................................................................................. pag.10 4.4- H.248................................................................................................................ pag.11 4.5- QoS.................................................................................................................. pag.11

5 FUNCIONAMIENTO DE VOIP.......................................................................... pag.1 2 6 ASTERISK............................................................................ .....................................pag.14


6.1 - Presentacin................................................................................................... pag.14 6.2 - Instalacin...................................................................................................... pag.14 6.3 - Configuracin................................................................................................ pag.15 2

Proyecto ASIR:

VoIP & Asterisk


6.3.1 - Usuarios......................................................................................................pag.16 6.3.2 - Dial plan......................................................................................................pag.18 6.3.3 - Dahdi...........................................................................................................pag.21 6.3.4 - Extras..........................................................................................................pag.21 6.3.5 - Dispositivos................................................................................................pag.22

6.4 - CLI de Asterisk...................................................................................pag.25

7 Proveedores SIP - PSTN Comparativa..................................................... pag.28 8 Conceptos.................................................................................... ............................pag.30 9 Anexos......................................................................................... .............................. pag.31
1 - Variables de sip.conf........................................................................................pag.31 2 - Aplicaciones del Dial Plan...............................................................................pag.35 3 - Variables del Dial Plan....................................................................................pag.61 4 - Features.conf....................................................................................................pag.62

10 Bibliografa.................................................................................. .........................pag.64

Proyecto ASIR:

VoIP & Asterisk

1.1 ndice de figuras


Fig 4.1: Funcionamiento de H323........................................................................................................pag.8 Fig 4.2: Establecimiento de una transmisin SIP............................................................................pag.10 Fig 4.3: Paquete RTP..........................................................................................................................pag.10 Fig 5.1: Cliente marca 2, esta extensin no existe en plan de llamada del servidor.....................pag.12 Fig 5.2: Abriendo un canal SIP.........................................................................................................pag.13 Fig 5.3: Canal RTP.............................................................................................................................pag.13 Fig 5.4: Receptor (usuario2) cuelga al emisor (usuario1)...............................................................pag.13 Fig 6.3.1.1: Ejemplo de la parte general de sip.conf........................................................................pag.16 Fig 6.3.1.2: Extracto de la pgina de un proveedor SIP de como configurar la cuenta ...............pag.17 Fig 6.3.2: Ejemplo de Dial plan.........................................................................................................pag.20 Fig 6.3.5.1: Telfono IP, Grandstream 2110....................................................................................pag.24 Fig 6.3.5.2: Interfaz web de configuracin del telfono IP GXP2124............................................pag.25 Fig 6.4.1: CLI de Asterisk..................................................................................................................pag.26 Fig 6.4.2: Ejemplo del despliegue del comando "sip" con la tecla de tabulacin.........................pag.27

Proyecto ASIR:

VoIP & Asterisk

2. FUNDAMENTACIN:
Un 99,9% de las personas o empresas necesitan comunicarse, ya que al vivir en una sociedad de tal envergadura nuestros actos dependen de los actos o acciones de aquellos que la conforman. Esto hace que necesitemos conocerlos por lo que a lo largo de la historia se han desarrollado varios mtodos de transmitir la informacin, desde los ms sencillos como una carta hasta otros mucho ms complejos como la lengua. La comunicacin evoluciona para satisfacer la necesidades de la sociedad, lo que lleva a que cada vez necesitemos una comunicacin ms fcil, rpida, barata y siempre disponible. De todas estas caractersticas goza VoIP frente al actual (en algunos casos antiguo) sistema de comunicacin telefnica, lo que convierte al sistema VoIP en un candidato a ser el prximo protagonista en la comunicacin. Esto sumado a la fuerza que esta cogiendo el software libre, lo que este llevando a una masiva utilizacin de este haciendo posible encontrar cualquier duda o problema del software (a tal nivel que es mucho mas eficaz el servicio tcnico que ofrece la bsqueda en Google que lo que te podra dar una empresa privativa). Otra ventaja del software libre es la libertad que hay para modificar el cdigo y ajustarlo a cualquier exigencia o especificacin, as como el acceso a ficheros log con el registro de la actividad del software permitindote solventar algn problema tan solo mirando donde falla el software y en que punto. En relacin con el coste al usar VoIP frente a PSTN las llamadas usando un proveedor VoIP son mucho mas baratas sobretodo a nivel internacional, que ya veremos mas adelante una comparacin. Aunque hoy por hoy los telfonos IP son ms caros que los tradicionales.

Proyecto ASIR:

VoIP & Asterisk

3. INTRODUCCIN:
3.1
Historia:
Un micrfono de carbn, una batera, un electroimn y un diafragma de hierro que en conjunto permitieran el envo y recepcin de la voz. A esto se le llam Telfono. El telfono fue inventado en 1876, en una controversia que enfentra a Graham Bell y a Meucci (pero en el 2002 el congreso de los EEUU reconoci a Meucci como inventor del telfono). La primera patente del telfono usaba una topologa punto a punto, sin ningn tipo de marcacin, lo que supona un cable por cada par de telfonos. Despus aparecieron los Switch que trabajan de manera manual, es decir se conectaron los telfonos a un Switch central donde los operadores preguntaban donde queran realizar la llamada y en que momento (PBMX). Al principio ese mtodo funciono pero la creciente demanda empez a hacer imposible el proceso. En 1890 un enterrador de Kansas city, Almon Brown Strowger, dejo de recibir llamadas a su funeraria hasta que se entero de que la mujer de su mayor competidor trabajaba de operadora en la central telefnica, y desviaba todas las llamadas que preguntaban por una funeraria a su marido. Strowger en 1891 patento el Strowger Switch (mas tarde se llamara crossbar Switch) que permita marcar el nmero del telfono que queras y llamar directamente sin intermedios manuales. Esta red, que se basa en la conmutacin por circuitos fue creciendo y cubriendo toda la telefona y adquiri el nombre de PSTN(Public Switched Telephone Network) o en castellano RTC (Red Telefnica Conmutada). Al principio esta red era exclusivamente analgica (RTB) pero con el paso del tiempo se fueron aadiendo a la red tecnologas que permitieran la transmisin digital, GSM y RDSI, que aparecieron en 1994, RDSI y en 1995 GSM. Los primeros rastros de VoIP se tienen de 1973, pero debido a una serie de problemas como el poco acceso a internet en aquella poca, la falta de velocidad de esta, la necesidad de una tarjeta de sonido en los equipos informticos y la limitacin del software hicieron que se dejase apartado el proyecto. En 1995 apareci el primer softphone (software de telfono virtual) que fue diseado para ser usado en cualquier PC y consista en una tarjeta de sonido, altavoces, micrfono y el mismo software en ambos PCs. Fue un fracaso ya que todava no haba comunicaciones de banda ancha. En 1997 se empiezan a formar conjuntos de usuarios que utilizan VoIP que acaban convirtindose en las primeras empresas relacionadas con VoIP. En 1998 se empezaron a fabricar los ATA/Gateway que permitan comunicar un PC con un telfono convencional. Este servicio no tenia coste para los clientes pero a cambio reproducan un anuncio al final y al principio de la llamada. En el 2000 fue cuando VoIP empez su camino fuera de las corporaciones cuando Mark Spencer creo el software libre Asterisk, que permite crear centrales de telfono VoIP (y tambin conectar a la PSTN).

Proyecto ASIR:

VoIP & Asterisk

3.2 VoIP vs PSTN


Tras la aparicin de internet las redes ya no solo se queran para transmitir voz, tambin datos. En ISDN se hace una separacin entre red de datos y red de voz, los datos se transmiten de manera digital y la voz de manera analgica. En cambio con VoIP la voz se transmite de manera digital lo que significa que puede utilizar la conexin a internet para enviar las llamadas, por lo que con una conexin a internet y un software PBX puedes hacer tu propia centralita sin necesitar de los servicios de un proveedor. Esto no quiere decir que no haya proveedores en VoIP ya que necesitas un nmero universal fuera de tu centralita para que usuarios de otras redes puedan establecer contacto y t con ellos. Al crearte tu propia centralita puedes dotarla de tantos servicios o especificaciones como sean necesarias, por ejemplo buzn de voz para determinados usuarios, comportamiento de las llamadas entrantes y salientes segn su prefijo o nmero (por ejemplo que las llamadas internacionales suenen en un departamento especfico), tener varias lneas diferentes en un solo telfono etc. Todas estas caractersticas y la configuracin del plan de llamada (que veremos mas adelante) y el bajo precio de las llamadas hacen que VoIP sea un posible sucesor de PSTN.

Proyecto ASIR:

VoIP & Asterisk

4. PROTOCOLOS VOIP:
VoIP (Voice over IP) es un conjunto de protocolos que hacen posible enviar una seal de voz a travs de internet usando el protocolo IP mediante la conmutacin por paquetes. El cliente (telfono) se registra en el servidor de VoIP (Asterisk) mediante un login, si el login es correcto el servidor validara al cliente. Cuando un cliente introduce un numero y se lo manda al servidor (llamada) este buscara que accin tiene que realizar con ese numero, si es una llamada a otro cliente conocido el servidor indicara al llamante la IP del cliente al que quiere realizar la llamada, el llamador establece la conexin, un circuito virtual y comienzan a enviarse datos, los cuales han de llegar en orden y a tiempo real. Esto se consigue mediante una serie de protocolos que en conjunto hacen posible el envo de voz sobre el protocolo de internet.

4.1. H323:
Fue el primer protocolo abierto de VoIP (pero tienes que pagar para acceder a sus especificaciones) que hacen posible las llamadas usando VoIP, usando los siguientes elementos para el proceso: Terminal: Dispositivo final que recibe o enva la llamada. (Telfono). Getekeeper: Controlador de dominio que administra las llamadas (redireccionamiento, autentificacin, comportamiento.etc.). (Servidor). Gateway: Dispositivo que permite comunicar la red H323 VoIP a otras redes como PSTN, RDSI. Etc. Este protocolo a su vez esta compuesto de una serie de protocolos (H.225, H.245, H235. Etc.) lo que hace que sea un protocolo bastante complejo y este actualmente en desuso.

Fig 4.1: Funcionamiento de H323.

Proyecto ASIR:

VoIP & Asterisk

4.2. SIP:
Son las siglas de Session Initation Protocol y es el protocolo de la capa de sesin que define como establecer una conexin entre dos usuarios. Esta basado en http, por lo que esta en texto plano. Este protocolo no marca como se va a comportar la llamada, solo determina la conexin entre los terminales. La diferencia con H.323 radica en la simplicidad de la que goza el protocolo SIP sumado ha que es un protocolo libre y gratuito lo ha convertido en el protocolo de VoIP por excelencia. SIP utiliza el puerto TCP 5060. Los procesos que realiza este protocolo son el registro de un usuario y la sealizacin: Registro: Los usuarios se registran en el servidor VoIP mediante un usuario SIP para que el servidor conozca su localizacin: 1- Se crean los usuarios SIP en el servidor de VoIP. 2- Se conecta un terminal a la misma red que el servidor y se le configura con los parmetros: usuario, contrasea, IP y direccin del servidor SIP (Servidor VoIP). 3- El servidor recibe la peticin del terminal y si los datos son correctos almacena la ubicacin de ese usuario SIP (la IP) en su base de datos. 4- Si el usuario cambia de lugar (manteniendo el acceso al servidor) este se volver a registrar y el servidor mantendr de manera dinmica la ubicacin de los usuarios. Sealizacin: Los terminales no tienen acceso directo entre ellos por lo que usan un servidor para localizarse, de esto se encarga el servidor SIP, nicamente de conectar a los terminales ya que para el envo de los datos con la voz se ocupa el protocolo RTP. Para la sealizacin utiliza 6 eventos: - INVITE: establece una sesin. - ACK: confirma una solicitud INVITE. - BYE: finaliza una sesin. - CANCEL: cancela el establecimiento de una sesin. - REGISTER: comunica la localizacin de usuario (nombre de equipo, IP). - OPTIONS: comunica la informacin acerca de las capacidades de envo y recepcin de telfonos SIP. Y seis respuestas: - 1xx: respuestas informativas, tal como 180, la cual significa telfono sonando. - 2xx: respuestas de xito. - 3xx: respuestas de redireccin. - 4xx: errores de solicitud. - 5xx: errores de servidor. - 6xx: errores globales.

Proyecto ASIR:

VoIP & Asterisk

Fig 4.2: Establecimiento de una transmisin SIP.

4.3. RTP Y RTCP:


RTP son las siglas de Real-time Transefer protocol y RTCP de Real-time control protocol. Para transmitir la seal de voz entre dos dispositivos que ya han establecido conexin mediante el protocolo SIP que delega en RTP, que es un protocolo entre sesin y transporte, ya que UDP por si solo no tiene control sobre el orden en que llegan las tramas y el tiempo que tardan. Estas dos caractersticas son fundamentales para que la comunicacin sea fluida. Para solventar estos dos inconvenientes aparecieron los protocolos RTP y RTCP. RTP es el encargado de enviar los paquetes de un destinatario a otro aadiendo un sello de tiempo y orden para unirlos correctamente en el destino. RTCP de enviar revisiones peridicas para informar de la calidad de la recepcin y la identidad de los interlocutores .

Fig 4.3: Paquete RTP

10

Proyecto ASIR:

VoIP & Asterisk

4.4. H.248:
Este protocolo es el predecesor del protocolo MGCP (Media Getway control protocol). Ambos proporcionan un control de las comunicaciones, dando conectividad por el lado IP (SIP z H.323 ofrecan la conectividad por el lado de usuario VoIP (sesin)). Adems realiza la funcin de conversin entre una red conmutada por paquetes (IP) a una conmutada por circuitos (PSTN). Pero la diferencia es que el protocolo H.248 o Megaco (RFC3015) permite aadir muchas caractersticas de valor aadido lo que le permite evolucionar, algo que el protocolo MGCP carece. En la actualidad se ha dejado de dar soporte a MGCP. Componentes: -Media Gateway: El Gateway que los dispositivos finales tienen asignado, habr uno por cada red. -Media Gateway Controller: Es el Gateway central que comunica todos los Media Gateway y tiene la informacin de donde se encuentran todos los dispositivos y cual es su Gateway. Funcionamiento: 1- El usuario descuelga el telfono y marca el nmero de telfono del destinatario. Esta llamada, le llega al Media Gateway. 2- El Media Gateway, notifica al Media Gateway Controller de que una llamada est en camino. 3- El Media Gateway Controller busca en su base de datos, el nmero de telfono del destinatario para saber su IP y su nmero de puerto. Entonces, busca el Media Gateway del destinatario, y le enva un mensaje para indicarle que le esta llegando una llamada. 4- El Media Gateway del destinatario abre una RTP cuando el usuario descuelga.

4.5. QoS:
La calidad de servicio o Quality of Service (QoS) es la capacidad de la red para ofrecer mejoras en el servicio de cierto tipo de trfico de red. Para ofrecer una buena calidad en la conversacin, el ancho de banda que necesitan los dos flujos de trfico se debe garantizar con independencia del estado del resto de las conexiones (incluso si la conexin a Internet est altamente ocupada). QoS no es un protocolo de VoIP, ni siquiera es un protocolo, sino la herramienta para garantizar ancho de banda a las conversaciones, ya que sin QoS si la red est sobrecargada las conversaciones mediante VoIP habr retardos en la transmisin de paquetes y la comunicacin se har inviable. Por lo que es necesario configurar QoS en la red (en todos los dispositivos que encaminen la informacin, routers) para un correcto funcionamiento del servicio VoIP.

11

Proyecto ASIR:

VoIP & Asterisk

5. FUNCIONAMIENTO DE VOIP:
Una vez que conocemos el conjunto de protocolos que forman VoIP (SIP, RTP y H.248) podemos pasar a explicar como funcionan en conjunto para que sea posible realizar llamadas (y recibirlas) en la red: Pasos previos: 1- Se configura el servidor VoIP con los usuarios SIP y el plan de llamada. 2- Se configura el cliente con el usuario SIP. Este se intentara autentificar con el usuario que le ha sido asignado al servidor SIP. Proceso: 0-Escenario: Usuario 1 (emisor) llama al usuario 2 (receptor) marcando 002. 1-Un usuario marca un numero en el telfono (Aqu ser 002). Este nmero se denomina extensin y a su vez se crea un canal SIP entre el servidor y el cliente. 2-Al servidor le llega la extensin que ha marcado el cliente en un evento SIP del tipo INVITE, y busca es su plan de llamada una extensin que coincida con la que le ha enviado el cliente. (Una extensin no es el nmero de otro usuario, es una entrada en el plan de llamada del servidor). En este caso encontrara que la extensin 002 es llamar al usuario 2. 2.1-Si no encuentra ninguna correspondencia entre la extensin que ha recibido y el servidor enva un mensaje de error 404 Not found. (intenta llamar a la extensin 2 que no existe):

Fig 5.1: Cliente marca 2, esta extensin no existe en plan de llamada del servidor.

3-Si encuentra una coincidencia (en este caso es llamar al usuario 2 al marcar 002), enva una respuesta al INVITE del emisor del tipo 100 (Trying). 4-El servidor intenta establecer una comunicacin con el receptor de la llamada mediante un INVITE al receptor, compuesta del usuario@IP_usuario. 5-Como respuesta a la invitacin el receptor comunicara su estado al servidor, sonando, ocupado, en espera etc. En este caso la respuesta es del tipo 180 (Rining). 6-Una vez que descuelga el receptor manda una respuesta del tipo 200 (OK) al servidor. 7-El servidor enva una invitacin al emisor con los datos del canal por el que se va a abrir el canal con el receptor. 12

Proyecto ASIR:

VoIP & Asterisk

8-El emisor manda un OK al servidor. Se abre el canal, a partir de ahora le toca a RTP.

13

Proyecto ASIR:

VoIP & Asterisk

Fig 5.2: Abriendo un canal SIP.

9-El protocolo SIP es nicamente de sealizacin, por lo que para la recepcin y emisin de datos multimedia se utiliza el protocolo RTP. Los paquetes con la voz de ambos lados del canal pasan por el servidor y este se encarga de reenviarlo a su destino.

Fig 5.3: Canal RTP

10- Para cerrar la comunicacin vuelve a tomar el control el protocolo SIP. El que cuelga (cerrar canal) enva una un paquete REQUEST del tipo BYE al servidor con la informacin de a que usuario enva el BYE. El servidor lo recibe y lo reenva a ese usuario, cerrando el canal.

Fig 5.4: Receptor (usuario2) cuelga al emisor (usuario1).

14

Proyecto ASIR:

VoIP & Asterisk

6. ASTERISK:
6.1. Presentacin
Asterisk es un software libre creado en el ao 2000 Mark Spencer de la compaa Digium. La funcin de este software es el de un PBX (centralita telefnica), es decir interconectar dispositivos telefnicos para establecer una comunicacin entre ellos mediante un plan de llamada. Adems de eso cuenta con muchas caractersticas aadidas como buzn de voz, interconexin entre distintas redes de distinta tecnologa, videoconferencia etc. Funciona bajo sistemas diversos operativos, Windows, MAC, Solaris, BSD y GNU/Linux, pero en estos dos ltimos es en los que tienes mayor soporte adems de que el rendimiento es ptimo. En la actualidad es sin ninguna duda el software PBX mas extendido por todo el mundo y con mayor soporte en la red. Su versin actual es la 1.8.

6.2. Instalacin
Aunque Asterisk es soportado por varios sistemas operativos nos vamos a centrar en el que esta mas extendido con diferencia, Debian. Sobre la otra plataforma que Asterisk funciona mas usualmente es sobre un sistema llamado FreePBX distro, que esta basado en BSD. Volviendo sobre Debian este no instala ninguna versin de un programa mediante los repositorios que no este en su versin mas estable, una versin anterior a la actualmente estable, por lo tanto no instalaremos la versin mas actual de Asterisk usando los repositorios pero es aconsejable instalarlo desde los repositorios. Antes de instalar Asterisk y que se compile hay que tener en cuenta una serie de cosas, za que sino tendremos que recompilar el programa: - Necesitamos los codecs de audio si no estn instalados. - Si vamos a necesitar una tarjeta para conectarnos a la PSTN necesitaremos dos cosas: 1. Dahdi: Programa que delega Asterisk para el control de las tarjetas ajenas a VoIP. 2. Libpri: Librera que necesita Dahdi. Una vez comprobado estos elementos tendremos dos maneras de instalar Asterisk: 1-Desde los repositorios: Esta es la manera ms aconsejable por Debian. Lo nico que tenemos que hacer para instalar Asterisk usando este mtodo es usar el comando:

# apt-get install Asterisk


2-Descargando y compilando: Usando este mtodo podremos tener muchos mas fallos pero nos instalamos la ultima versin de Asterisk. En http://letitknow.wordpress.com/2011/05/16/how-to-install-asterisk-1-8-4-on-debian-6-0-1/ hay un manual que describe el proceso.

15

Proyecto ASIR:

VoIP & Asterisk

6.3. Configuracin:
Esto es sin ninguna duda el proceso ms complicado y con ms variables que tiene cualquier programa. Asterisk, como cualquier otro programa de software libre, tiene las distintas facetas de su configuracin en distintos ficheros de texto, todos se encuentran en el directorio /etc/asterisk. Estos son los mas importantes: -asterisk.conf: En este fichero se encuentra una serie de variables asignadas a un directorio del sistema de ficheros local del servidor. Estas variables las utiliza para guardar datos como los mensajes, llamadas grabadas etc. Y para buscar archivos como msica de fondo, mensaje del contestador etc. -sip.conf: Aqu se almacenan los usuarios SIP con sus caractersticas: contrasea, nombre, contexto, tipo de usuario etc. Tiene dos partes la especfica por cada usuario y una general que asigna una serie de caractersticas a todos los usuarios: codecs de audio, puerto SIP e IP del servidor. -extensions.conf: En este fichero se encuentra el plan de accin (dial plan) que el servidor utilizara cuando reciba o enve una llamada. -extensions.ael: La misma funcin que extensions.conf pero utiliza un lenguaje parecido al de los scripts de la Shell, por lo que tiene una sintaxis mas clara, depurada y con mas posibilidades que su homologo. -features.conf: Aqu se configuran una serie de caractersticas aadidas para ampliar las funciones de los usuarios, tales como llamadas en espera, redireccionar llamadas si el usuario esta ocupado o no lo coge. -voicemail.conf: En este fichero se crea los usuarios del contestador (estos usuarios se pueden asignar a un usuario SIP). Se establece el contexto del usuario, nombre y e-mail. -manage.conf: Aqu defines unos usuarios que pueden controlar y gestionar el servidor Asterisk mediante rdenes PHP o Java script (usando una tecnologa llamada AJAX). Esta funcionalidad es muz til para poder realizar llamadas desde el navegador y redireccionarlas a tu telfono directamente, sin tener que marcar el nmero o para gestionar el servidor desde una interfaz web, con extensiones tales como FreePBX o FOP2. -zapata.conf dahdi.conf: Ambos ficheros hacen la misma funcin pero Dahdi ha sustituido a Zapata, aunque se sigue usando en versiones anteriores. La funcin de estos ficheros es la gestin de tarjetas ISDN u otra tecnologa que no sea VoIP para enlazar las tecnologas. -modules.conf: Aqu se gestiona los mdulos de Asterisk para que se carguen automticamente o no se carguen, dependiendo de las especificaciones que necesitemos. Tambin sirve para aadir mdulos nuevos. Estos mdulos cargan distintas partes de Asterisk, desde cosas bsicas como la msica de espera, hasta otras ms complejas como cargar el Hardware.

16

Proyecto ASIR:

VoIP & Asterisk

6.3.1 Usuarios:
Como ya hemos visto los usuarios (canales) SIP se almacenan en el fichero sip.conf. Este fichero se divide en dos partes: Parte general: Compuesta por una serie de atributos que afectan a todos los usuarios. Estos son: -bindport o port: Puerto que utilizara el servidor para el protocolo SIP. (Por defecto es el UDP 5060). -bindaddr: IP del servidor que registra a los usuarios SIP. (Generalmente es localhost). -srvlookup: Si deseas que los usuarios puedan utilizar el servidor DNS para las llamadas. -allow: Especificas que codecs de sonido pueden utilizar los clientes (ulaw, alaw, gsm). -disallow: Especificas que codecs de sonido no pueden usar los clientes. -language: El idioma que influir en los mensajes internos que utilice Asterisk, como el mensaje del buzn de voz o el de llamada en espera. Estas son las caractersticas ms habituales que se definen en esta parte pero tambin puedes aadir cualquier otra que vayas a generalizar para todos los usuarios. (En el Anexo 1 hay una lista con todas las variables). En la parte general tambin se definen los registros de usuarios SIP que vamos a utilizar de un proveedor para tener acceso a la red fuera de nuestro servidor y poder realizar llamadas a cualquier telfono, llamadas que el proveedor redireccionara, y el usuario se registrar peridicamente en el proveedor para poder ser localizado, siendo en este caso nuestro servidor el cliente. Podemos tener tantos proveedores como queramos y que nuestro servidor reciba y mande llamadas con distintos nmeros solo hay que especificarlo en el plan de llamada como ya veremos. La sintaxis del registro es la siguiente: - register => usuario:contrasea@dominio/numero

Fig 6.3.1.1: Ejemplo de la parte general de sip.conf.

17

Proyecto ASIR:

VoIP & Asterisk

Parte especfica: Esta parte del fichero de configuracin sip.conf se compondr de tantos sectores como usuarios canales queramos configurar y va a continuacin de la parte general. Cada sector comienza con: [nombre_usuario] y contiene una serie de variables que lo definen: -type: Relacin que tendr este usuario con los dems. Y puede ser de tres tipos: user para recibir llamadas, peer solo hacer llamadas y peer para ambas. -callerID: Nmero o nombre con el que se mostrara el usuario al realizar una llamada. -username: Nombre con el que se autentificara el usuario en el servidor, login. -secret: Contrasea que necesitara el usuario para logearse. -host: Donde se encuentra el cliente, puede ser una IP fija, nombre o Dynamic si usa DHCP. -context: Contexto del plan de llamada en que se mover el usuario. Estas son las variables indispensables para l creacin de cualquier usuario pero luego existe una gran cantidad de variables que amplan la funcionalidad, buzn de voz, llamada en espera, grupos de llamada etc. En el anexo hay una lista mas completa de todas las variables. En esta parte tambin se definen los usuarios que no son locales al servidor sino que dependen de un servidor externo, es decir un proveedor. Estos usuarios requieren esta parte para ser definidos y el register => para que pueda ser localizado por el proveedor. Normalmente la parte de definicin del usuario te la da el propio proveedor y solo tienes que copiarla en el fichero sip.conf de tu servidor.

18

Proyecto ASIR:

VoIP & Asterisk

Fig 6.3.1.2: Extracto de la pgina de un proveedor SIP que te muestra como configurar la cuenta.

19

Proyecto ASIR:

VoIP & Asterisk

En la actualidad Asterisk esta empezando a promover un protocolo llamado IAX2 que cumple la misma funcin que el protocolo SIP, son tan parecido que toda la configuracin que acabamos de ver se aplica exactamente igual al protocolo IAX2, lo nico que cambia es el fichero de configuracin que en vez de ser sip.conf es iax.conf que se encuentra en el directorio /etc/asterisk.

6.3.2 Dial Plan:


Sin duda alguna este es el punto ms potente y donde se encuentra toda la complejidad de Asterisk as como su funcionalidad. El dial plan o plan de llamada es el comportamiento que adquiran las llamadas entrantes o salientes al servidor. Este plan se encuentra en el fichero '/etc/asterisk/extension.conf'. La estructura se basa en dos elementos:

Contextos
Cada contexto tiene un nombre y es nico, ya que no puede haber dos contextos iguales, y se nombran entre corchetes; [contexto1]. Est compuesto por extensiones. Cuando definimos los usuarios les asignamos un contexto ya que un usuario solo se mueve en un contexto determinado.

Extensiones
Las extensiones se encuentran dentro de un contexto y estas se pueden repetir en contextos diferentes, pero una extensin tiene que ser nica para un contexto. Las extensiones son las que definen el comportamiento de las llamadas, es decir la aplicacin que se ejecutara al recibir un determinado nmero, y una extensin se suele componer de ms de una lnea. La estructura es: Exten => Nombre,Prioridad,Aplicacion

Nombre: o numero que define la extensin. Asterisk ejecutara una extensin cuando el nombre o el numero de esta coincida con lo que ha recibido. Por ejemplo si un usuario marca 1 Asterisk buscara en el contexto de ese usuario una extensin de nombre "1" y la ejecutara. Prioridad: Orden en que se ejecutara la extensin. Las lneas con nmero menor se ejecutaran antes, tambien se puede usar el valor "n" que lee por lineas. Aplicacin: La accin que ejecutara en ese punto de la extensin. Como llamar mediante la aplicacion "Dial()", coger el telfono con "Answer()", colgar "Hungup" etc.

Ejemplo de una extensin, de nombre 1 en un contexto llamado "local", que espera 2 segundos y llama al usuario SIP 1: [local] Exten => 1,1,Wait(2) Exten => 1,n,Dial(SIP/1)

20

Proyecto ASIR:

VoIP & Asterisk

Patrones
El problema que nos encontramos al definir los nmeros de las extensiones es que no podemos crear una extensin por cada nmero de telfono existente, es inviable. Para ello existen una serie de patrones que generalizan las extensiones: _ : Elemento que determina que estas comenzando una cadena de patrones. X : Coincide con cualquier digito del 0 al 9. Z : Coincide con cualquier digito del 1 al 9. N : Coincide con cualquier digito del 2 al 9. [1,5-7] : Coincide con un solo digito a partir de la serie de dgitos especificado. En este caso, el patrn coincide con 1, 5,6, o 7. . (punto) : Coincide con uno o ms caracteres. ! : Coincide con cero o mas caracteres. Nota: Si Asterisk encuentra dos extensiones que sean validas para la llamada que est gestionando coger la que este mayor especificada, sino la ultima. (Ej: Coger antes "_[1-9]" que "_."). Ejemplo, para llamar necesitas empezar marcando "00": Exten => _00X.,1,Dial()

Aplicaciones
Las aplicaciones son la esencia de las extensiones ya que dicen que tiene que hacer en cada punto. Hay gran cantidad de aplicaciones con distintas funciones, las aplicaciones principales son: - Wait (n): Espera n segundos, ignorando los dgitos marcados durante. - WaitExten(n):Espera n segundos, pero gestionando los dgitos marcados. - WaitMusicOnHold(n):Reproduce msica en espera durante n segundos. - Answer(): Acepta la llamada entrante por el canal. - Busy(): Enva la seal de ocupado al origen. - Hangup(): Cuelga la llamada. - Ringing(): Enva la seal de tono de llamada. - Dial ( tipo/identificador,timeout,opciones,url ): Aplicacin para llamar. - Goto (contexto, extension, prioridad): Salta al contexto, extensin y prioridad del argumento. - GotoIf ( condicion ? prioridad1 : prioridad2 ): Salta a la prioridad1 si la condicin se cumple. Salta a la prioridad2 si la condicin no se cumple. - GotoIfTime(<times>|<weekdays>|<mdays>|<months>?[[context|]exten|]priority): Igual que GotoIf teniendo en cuenta la fecha y hora actual. - PlayBack (fichero ): Reproduce el fichero, continua la ejecucin cuando finaliza. - Background (fichero): Reproduce el fichero, pero continua la ejecucin inmediatamente.

En el anexo 2 hay una lista completa de las aplicaciones. 21

Proyecto ASIR:

VoIP & Asterisk

Variables
A la hora de llamar a las aplicaciones al igual que en el nombre de las extensiones necesitamos definir una serie de parmetros que es inviable hacerlo de manera manual. Las variables se llaman usando: ${variable}. Hay dos tipos de variables: -Globales: Variables que creamos estticamente y se definen al comienzo del fichero extension.conf en una seccin que comienza con [globals] y prosigue con la definicin de cada una con la siguiente sintaxis: Nombre = Valor . Ejemplo: Crear variable asociada a un usuario SIP y llamar al marcar 001 en el contexto llamadas_locales: [globals] Pepe = SIP/1 [llamadas_locales] Exten => 001,1,Dial(${Pepe})

-De canal: Estas variables dependen del canal sobre el que se est ejecutando la extensin, es decir variaran si llamo al usuario "Juan" o al usuario "Pepe". Estas variables estn predefinidas por Asterisk y son las siguientes: - ${CALLERID}: Caller ID actual, nombre y nmero del que realiza la llamada. - ${CONTEXT}: Contexto actual. - ${EXTEN}: Extensin actual, es decir numero al que se est llamando. - ${DIALSTATUS}: Estado de la llamada: UNAVAILABLE, CONGESTION, BUSY, NOANSWER, ANSWERED, CANCEL o HANGUP. - ${DATETIME}: Hora actual. En el anexo 3 hay una lista completa de las variables.

Fig 6.3.2: Ejemplo de Dial plan

22

Proyecto ASIR:

VoIP & Asterisk

6.3.3 Dahdi:
Asterisk no solo permite la interaccin entre usuarios SIP, ya que si as fuera no podras realizar la mayor parte de las llamadas, ni te podran llamar la mayor parte de la poblacin ya que la red PSTN, analgica sigue teniendo la mayor parte del mercado. Para solventar este problema y poder utilizar un numero analgico de la red PSTN con Asterisk solo necesitas dos cosas una tarjeta ISDN y tener el modulo Dahdi instalado en Asterisk. (OJO: Antes de instalar Asterisk tienes que instalar los drivers de la tarjeta ISDN, Dahdi y la librera libpri, sino no se compilaran con Asterisk y no funcionaran). Los ficheros de configuracin son: /etc/dahdi/system.conf y '/etc/asterisk/chan_dahdi.conf'.

6.3.4 Extras:
Voicemail.conf
Este fichero se encuentra en el directorio '/etc/asterisk/' y es donde se definen los usuarios del correo de voz que se definen mediante nmeros. Estos usuarios no tienen por qu ser los mismos que los usuarios SIP pero pueden coincidir. Cada usuario se establece con la siguiente sintaxis: Numero_usuario => contrasea,nombre,e-mail Contexto: Se pueden crear contextos con distintos usuarios [contexto1], pero si no especificas ninguno se creara en el contexto " default". Pero si creas contextos distintos tendrs que llamar a los usuarios mediante el numero y el contexto separado con @: "1234@correo_ventas". Usuarios SIP: Los usuarios de correo no son los mismos que los SIP, aunque tengan el mismo nmero, pero puedes asociarlos aadiendo la variable en el fichero " sip.conf" en la seccin del usuario que quieres asociar la siguiente lnea: Mailbox=numero_usuario@contexto Opciones: Puedes definir una serie de opciones dentro del fichero de cmo se comporta el sistema, y algunas de las opciones ms importantes son: - attach: Enviar archivos en las notificaciones de e-mail - format: Especifica el formato para los mensajes de voz. - maxmessage: Limitar el tiempo mximo del mensaje de voz. - minmessage: Limitar el tiempo mnimo del mensaje. - saycid: Anunciar el numero que llam antes de repetir el mensaje . - maxlogins: Limitar el nmero de intentos de registro.

23

Proyecto ASIR:

VoIP & Asterisk

Features.conf
Es el fichero para configurar el parking de llamadas (llamadas en espera) y las teclas especifcas para el uso de las funciones de centralita como transferencia, captura de llamada etc, ademas de los timeout para digitos, tranferencias etc.. Este fichero se encuentra en el directorio de Asterisk "/etc/asterisk/". En el anexo 4 hay una lista de la aplicaciones ms habituales de este fichero.

6.3.5 Dispositivos:
Una vez configurado el servidor necesitaremos los clientes que van a utilizar el servicio. Estos clientes pueden ser: Softphone: Software que emula el funcionamiento de un telfono IP. Un ejemplo de este software puede es el Skype. Pero un software que nos podamos descargar para configurarlo a nuestro servidor es "3CXPhone" software gratuito para Windows (http://www.3cx.com/VOIP/softphone.html) y para GNU/Linux esta est entre otros Twinkle (http://mfnboer.home.xs4all.nl/twinkle/index.html).

Configuracin de 3CXPhone Vamos a ver como se configura este dispositivo virtual: 1- Nos descargamos he instalamos el software desde la pgina anterior. 2-Una vez instalado lo ejecutamos, al no tener usuarios creados nos saldr esta ventana:

3-Le damos a "Create Profile". Se nos abrir una ventana con la lista de usuarios creados, estar vaca asique le damos a "New". 24

Proyecto ASIR:

VoIP & Asterisk

4-Nos saldr la siguiente ventana que rellenaremos:

*Los nicos campos requeridos son los que estn marcados en rojo y corresponden a las variables del fichero "sip.conf": Account Name: Nombre que usa el programa para la gestin. Caller ID: Corresponde a "CallerID", solo se usa si no est configurada esta variable de ese usuario. Extensin: Lnea con la que comenzamos un usuario [usuario1]. ID: Identificador del usuario, ser la misma que el campo anterior a nos que lo hayamos especificado con la variable Password: El valor de la variable "secret". 5-Una vez rellenados los campos le damos a OK, no saldr la interfaz del telfono y si consigue conectarse al servidor pondr "On Hook" (Telefono colgado) y "Available". Si no significa que hemos metido algn parmetro mal o que algn elemento lo est bloqueando, como el firewall.

25

Proyecto ASIR:

VoIP & Asterisk

Telfono IP: Los telfonos IP cumplen la misma funcin que un telfono normal pero con la caracterstica de poder ser configurados con cuentas SIP. Hay muchas marcas de telfonos IP, Cisco, Grandstream etc. Pero en esencia todos se configuran de la misma manera, desde el propio telfono con los atributos de: IP o nombre del servidor ("Registrar") y cuenta SIP y contrasea, o tambin se pueden configurar desde una interfaz web (ya que al ser telfonos IP tienen IP). Otra opcin para la configuracin es que los proveedores proporcionan una aplicacin que mediante un fichero CSV que contiene la MAC de los dispositivos y una serie de parmetros como nombre de usuario o servidor al que se van a registrar nos permite crear ficheros que alojados en un servidor HTTP o TFTP el dispositivo cojera el fichero, (mirar si su MAC coincide) y aplicara la configuracin, pero aun as hay que configurar en los dispositivos el nombre o la IP del servidor HTTP o TFTP.

Fig 6.3.5.1: Telfono IP, Grandstream 2110

26

Proyecto ASIR:

VoIP & Asterisk

Fig 6.3.5.2: Interfaz web de configuracin del telfono IP GXP2124.

Pero esta configuracin conlleva un problema y es tener que configurarlos uno a uno todos los telfonos, algo viable para una red de entre 1-20 dispositivos. Para ello existen una serie de vas que permiten la configuracin masiva de dispositivos. Es el uso de una opcin del servidor DHCP, la opcin 66, que es proporcionar a los clientes de DHCP la IP o nombre de un servidor TFTP. De esta manera los dispositivos conocern la ubicacin de sus ficheros de configuracin y la aplicaran automticamente.

Una vez configurados estos puntos (Usuarios: sip.conf, Dial Plan: extension.conf y los dispositivos) el sistema puede empezar a funcionar.

6.4. CLI de Asterisk


Asterisk tiene una herramienta que permite gestionar el sistema mediante una serie de comandos. Permite por ejemplo ver que usuarios hay registrados y con qu IP, ver que canales estn abiertos, reiniciar el sistema, cargar codecs o mdulos, realizar llamadas... etc. Ademas al estar conectado al podrs ver todo movimiento del sistema, usuarios que se registran, llamadas entrantes y salientes... etc. 27

Proyecto ASIR:

VoIP & Asterisk

Para entrar en el CLI de Asterisk ejecutaremos el comando: asterisk -rvvvvvv -r:Conecta al CLI de Asterisk. v: Determina el nivel de debug que veremos dentro de la consola. -rx "comando": Ejecutamos un comando de Asterisk sin entrar a la consola.

Fig 6.4.1: CLI de Asterisk

Los comandos de Asterisk se componen de varias rdenes. La primera orden hace referencia al campo sobre el que queremos enviar la orden, SIP, Dahdi, Module etc. Los siguientes campos especifican la accin sobre ese campo, y variaran segn el primero, ver usuarios SIP ( sip show users). Al Podemos autocompletar ordenes pulsando la tecla de tabulacin. Las ordenes ms importantes son: - core restart now: Reinicia Asterisk. - core restart when convenient: Reinicia Asterisk cuando no haya ningn canal abierto. - core show channels: Muestra que canales de comunicacin estn abiertos. - sip reload: Recarga la configuracin del fichero sip.conf sin reiniciar Asterisk. - sip show peers: Muestra los usuarios sip y si estn registrados y que IP tienen. - dialplan reload: Recarga el fichero extensions.conf sin reiniciar Asterisk. - dialplan show [extension]@[contexto]:Muestra el proceso del dialplan que hara esa extensin en ese contexto. - console dial [extensin]@[contexto]: Realiza una llamada desde el CLI.

28

Proyecto ASIR:

VoIP & Asterisk

Fig 6.4.2: Ejemplo del despliegue del comando "sip" con la tecla de tabulacin.

Nota: Los mensajes de error que tenga el sistema se guardaran en el fichero /var/log/asterisk/messeges.

29

Proyecto ASIR:

VoIP & Asterisk

7. Proveedores SIP-PSTN Comparativa:


Uno de los factores esenciales para elegir un sistema u otro es, como siempre, el factor econmico ya que determina el gasto que realizaremos, tanto a largo como a corto plazo. Los proveedores ms importantes en Espaa ahora mismo de telefona corriente, no quiere decir los nicos, son Movistar, Orange, Ya.com, Jazztel, Ono y Vodafone. La primera diferencia en que con VoIP podemos contratar cualquier proveedor de cualquier parte del mundo ya que solo necesitamos la conexin a internet. Los proveedores de VoIP mas importantes son: Sipgate, Ipcomms, Telemo, voz.com, Telefaciletc. En VoIP podemos encontrar una enorme cantidad de proveedores, y adems, como hemos dicho antes, no hace falta que sean nacionales. Pero un problema que nos encontramos es que los proveedores de Internet no garantizan la disponibilidad y del servicio, por ejemplo Movistar responde de la siguiente manera ante la pregunta de qu poltica siguen las nuevas tarifas de Movistar ante VoIP: En referencia a las nuevas tarifas de datos excepto la tarifa de 45 son incompatibles con VoIP y desconocemos si funciona con aplicaciones como skype o viber, pero no os garantizo que os funcione. 15-11-2011. Vodafone, en internet mvil, solo permite la comunicacin IP a partir de una tarifa llamada @M, la que estn por debajo no podrn usar VoIP. Yoigo ofrece VoIP pero pagando una tarifa adicional de 6 mensuales por 100MB de llamadas VoIP (entre 300 y 600 minutos). Por lo tanto hay que prever si vamos a utilizar VoIP antes de contratar un proveedor de internet o consultar si el nuestro es compatible y cuanto hay que pagar. Ahora analizaremos las tarifas de llamada al usar un proveedor u otro, Movistar para telefona normal y Llevoip para telefona VoIP: -Mensualidades: Movistar: La mnima mensualidad, en las tarifas para empresa de solo lnea de voz, esta en un plan llamado "Plan Profesional con Movilidad" que esta en 14,47 sin IVA (17,07 con IVA) y adems hay que aadir a este precio la cuota de mantenimiento de lnea que est en 13,75 con IVA. Esto hace una total de 30,82 al mes, sin contar llamadas, tan solo la lnea y el nmero. Llevoip: No hay ningn tipo de cuota mnima mensual en ninguna de las dos tarifas, Free y Low.

30

Proyecto ASIR: -Llamadas: Movistar (E.L/.min)


Metropolitana

VoIP & Asterisk

Llevoip (.min)

/0,0240 /0,0384 /0,0645 0,00589 - 0,02663


**Depende del destino Min(UK) - Max

Llamadas nacionales.

Provincial Interprovincial

0,00870

Llamadas internacionales a fijo. (Europa)

0,34/ 0,48

Llamadas a mviles.

0,0685 /0,1571
*De Movistar a Movistar

0,03977

Llamadas internacionales a mviles. (Europa) *E.L: Establecimiento de llamada

0,34/ 0,57

0,02287 - 0,03920
**Depende del destino Min - Max

Nota: En Llevoip pagas por segundos no por minutos.

-Conclusin: El precio de VoIP es mucho menor, pero cada proveedor tiene precios distintos, aunque todos oscilan en este rango. La diferencia est en que un proveedor PSTN te ofrece tanto la conexin a internet como la red de voz, lo que (adems de facilitar todo para el cliente) da un inconveniente a los proveedores VoIP y es que no garantizan la disponibilidad, ya que nosotros podremos configurar QoS en nuestra red, pero cuando las llamadas VoIP salgan a la nube no sabremos si tendrn o no preferencia, algo que podra interferir o incluso arruinar la comunicacin VoIP. En Espaa no est muy evolucionado VoIP, aunque hay bastantes proveedores.

31

Proyecto ASIR:

VoIP & Asterisk

8. CONCEPTOS
VoIP: Conjunto de protocolos que permiten realizar llamadas usando la red de datos. PSTN: Red telefnica conmutada. Conjunto de redes que permiten la comunicacin telefnica en todo el mundo. RTB: Tecnologia analogica que forma parte de la PSTN. RDSI Y GSM: Tecnologas digitales que forman parte de la PSTN. PBX: Centralita telefnica. QoS: Quality of Service. Tecnologa que permite dar preferencia a ciertos protocolos en una red. SIP: Protocolo o denominacin de usuario que usan VoIP. Canal: Conexin que se establece entre emisor y receptor, que dura hasta que uno cuelgue. Extensin: Lo que en la telefona tradicional se considera el numero que marcas. Pero en Asterisk al marcar una extensin no llamas al telfono directamente. Softphone: Software que emula un telfono. CLI: Consola o terminal de texto. Dial plan o plan de llamada: Proceso por el que pasan las extensiones, tanto las entrantes como las salientes.

32

Proyecto ASIR:

VoIP & Asterisk

9. Anexo
1. Variables de Sip.conf
allow = <codec>: Permite los codecs en orden de preferencia (use DISALLOW=ALL primero, antes de permitir otros codecs) disallow = all : Rechaza todos los codecs (configuracin global) allowexternalinvites = yes|no: Habilita/Deshabilita los INVITE y REFER a dominios no locales. Por defecto yes. (Nuevo en la version 1.2.x). allowguest = yes|no: Permitir o rechazar las llamadas de invitados (guest) (por defecto est en yes, esto se puede tambin poner en osp si el asterisk fue compilado con soporta para OSP). (Nuevo en 1.2). autocreatepeer = yes|no: Si est habilitada, cualquier persona podr logearse como un peer (sin chequeo de credenciales; til para la operacin con SER). por defecto no. autodomain = yes|no: habilita/deshabilita la capacidad de asterisk de agregar hostnames locales e IP address locales a la lista de dominios. por defecto no. bindaddr = direccion_IP: la direccion IP en la cual escuchar. por defecto 0.0.0.0 (todas los interfaces de red). bindport = nmero: Puerto UDP donde escuchar. por defecto 5060. callerid = <string>: informacin de identificacin de llamada a utilizar cuando no este disponible. por defecto asterisk. canreinvite = update,yes,no (configuracin global): Por alguna razn esto viene en yes, as que cuidado. checkmwi = nmero: El intervalo global (en segundos) entre chequeos de casillas de mensajes. por defecto 10 segundos. compactheaders = yes,no: Indica si el asterisk debe enviar encabezados compactados (abreviados) en los mensajes de SIP. por defecto no. context = <nombredelcontexto>: ste es el contexto por defecto y se utiliza cuando un terminal no tiene ningun contexto definido. El contexto en la seccin de un terminal se utiliza para encaminar llamadas desde ese terminal hacia el destino deseado. El cuerpo del contexto est situado en el extensions.conf. defaultexpirey = numero : duracin (en segundos) de las registraciones entrantes/salientes. por defecto 120 segundos. dtmfmode = inband,info,rfc2833 (configuracin global). por defecto rfc2833. domain = dominios: lista separada por comas de los dominios por los cuales el Asterisk es responsable. dumphistory = yes,no: Permitir el soporte para descargar el historial de transaccines de conversacines SIP a LOG_DEBUG. por defecto no.

33

Proyecto ASIR:

VoIP & Asterisk

externip = direccion IP o un hostname: direccion que vamos a poner en los mensajes SIP si estamos detrs de un NAT. Si un hostname se utiliza como valor, entonces la direccion IP asociada al hostname se resolvera solamente una vez durante la lectura del sip.conf. Si deseas soporte para un hostname asociado a una direccion IP dinmica, utiliza externhost. externhost = dominio.com externrefresh = nmero: Especifica cuantas veces (en segundos) las operaciones de bsqueda del hostname DNS se deben realizar para el valor configurado en externhost. por defecto 10 segundos. ignoreregexpire = yes|no: Indica si utilizar la informacin de contacto de un peer aunque la informacin sea vieja porque ha alcanzado su tiempo de expiracin. Por defecto no. language = <string>: lenguaje por defecto usado por Playback() y Background(). localnet = direcciondelared/mascaradered: red y mscara locales. fromdomain = dominio : Setea el From: dominio por defecto a utilizar en los mensajes SIP al actuar como un SIP UA (cliente) insecure = very,yes,no,invite,port: Especifica cmo manejar las conexiones con los peers. Por defecto no (autenticar todas las conexiones). maxexpirey = nmero: Duracin mxima (en segundos) de las registraciones entrantes que permitimos. Por defecto 3600 segundos. musicclass = una de las clases especificadas en musiconhold.conf musdiconhold = lo mismo que musicclass nat = yes,no,never,route. Por default no, que realmente significa utilizar las tcnicas rfc3581. notifymimetype = tipodemedio/subtipo: Permitir la sobreescritura del tipo de mime en los MWI NOTIFY utilizados en los mensajes de voicemail. Por defecto es application/simplemessage-summary. notifyringing = yes,no: Notificar la suscripcin en estado de RINGING. Por defecto yes. outboundproxy = direccion IP o nombre de DNS SRV (excluyendo el prefijo _sip._udp): nombre SRV, nombre del host, o direccion IP del proxy de salida. outboundproxyport = nmero: Nmero de puerto UDP del proxy de salida. pedantic = yes|no: Permitir la comprobacin lenta, pedantica de caller id, encabezados SIP multilnea y encabezados URI-codificados. Por defecto no. port = <numero de puerto>: Puerto SIP por defecto del peer. (ste no es el puerto en que escucha el asterisk. Ver bindport. progressinband = never|no|yes: Si generamos o no el sonido in-band siempre. Por defecto never. promiscredir = yes|no: Permite el soporte para redirecciones 302; (Nota: redireccionara todas a la extensin local devuelta en Contact y no a esa extensin en el destino). Por defecto no.

34

Proyecto ASIR:

VoIP & Asterisk

qualify = yes|no|milliseconds: Comprobar si el cliente esta accesible. Si esta en yes, los chequeos ocurren cada 2000 milisegundos (2 segundos). Por defecto no. realm = mi realm (cambia el realm de autentificacin del asterisk (default) al tuyo. recordhistory = yes|no. Activa el logeo del historial de transaccines de conversacines SIP. Por defetcto no. regcontext = contexto: El contexto por defecto a utilizar para las respuestas SIP REGISTER del SIP REGISTRAR server. register <nombredeusuario>:<password>:[id de autentificacion]@<clientesip/peerid en sip.conf>/<contacto> : Registrarse con un proveedor SIP registerattempts = nmero: Nmero de mensajes REGISTER de SIP a enviar a un SIP REGISTRAR antes de desistir. Por defecto 0 (sin lmite). registertimeout = nmero: El nmero de segundos a esperar una respuesta de un SIP REGISTRAR antes de dar el timeout de ese REGISTER. Por defecto 20 segundos. relaxdtmf = yes|no: Por defecto no. rtautoclear = yes|no|nmero: autoexpirar los friends creados en el momento. Si esta en yes el autoexpire sera de 120 segundos. Por defecto yes. rtcachefriends = yes|no: cachear a los friends creados en tiempo real agregndolos a la lista interna como los friends agregados desde el archivo de configuracion. Por defecto no. rtpholdtimeout = nmero: Nmero mximo de segundos de inactividad antes de terminar una llamada en espera. Por defecto 0 (sin lmite). rtpkeepalive = nmero: Nmero de segundos, cuando un paquete RTP Keepalive ser enviado si no hay ningn otro trfico de RTP en esa conexin. Por defecto 0 (ningn RTP Keepalive). rtptimeout = nmero: El nmero de segundos, a esperar trfico de RTP antes de clasificar la conexin como discontinuada. Por defecto 0 (sin RTP timeout). rtupdate = yes|no: Enviar actualizaciones de registro a la base de datos al usar soporte para tiempo real. Por defecto yes. sendrpid = yes|no: Si se enva un encabezado SIP Remote-Pary-ID. Por defecto no. sipdebug = yes|no. seteo por default para que el SIP debug este habilitado al cargar el archivo sip.conf. Por defecto no. srvlookup = yes|no: Permitir las operaciones de bsqueda DNS SRV en las llamadas. Por defecto no. tos = <valor>: Fijar los parmetros de QoS para el flujo de medios salientes (valores numricos tambin se aceptan, como tos=184) trustrpid = yes|no: Si se confa en el encabezado SIP Remote-Party-ID. Por defecto no. useclientcode = yes|no: Si esta en yes, entonces Origen de la llamada segn lo indicado en los CDR sera cambiado a aquello que se especifica en el encabezado SIP X-ClientCode. Por defecto no.

35

Proyecto ASIR:

VoIP & Asterisk

usereqphone = yes|no: Indica si agregar un user=phone al URI. Por defecto no. useragent = <string>: Permitir la modificacin del encabezado User-Agent. Por defecto asterisk. videosupport = yes|no: Habilitar el soporte para vdeo SIP. Por defecto no. vmexten = <string>: Extensin del Dialplan para abrir la casilla de mensajes. Por defecto asterisk. callevents = yes|no: setear a yes para recibir eventos en AMI cuando una llamada es puesta en espera.

36

Proyecto ASIR:

VoIP & Asterisk

2. Aplicaciones del Dial Plan


*Extraido de http://info.linuxmall.cl/wiki/index.php/Aplicaciones_de_Asterisk
AbsoluteTimeout: Establece el tiempo mximo de una llamada (en segundos).

Parmetros: Segundos ... Valor en segundos de espera.


AddQueueMember: Aade a una Cola de Llamadas la extensin desde la que se llama, o el agente o extensin determinada por el parmetro Interface. Adems es posible "penalizar" la extensin con un nivel de prioridad.

Parmetros: Nombre Queue ... Nombre de la cola de llamadas (Verificar que existe). Interface ... Se puede especificar un interface con el formato: Tecnologa/recurso (o agent/identificador). Prioridad ... Penaliza la extensin con una prioridad.
ADSIProg: Script con informacin que se pasa a la pantalla del terminal ADSI.

Parmetros: Script ....Nombre del script que se envia al terminal.


AgentCallbackLogin: Login como Agente del sistema. La extensin recibe las llamadas del Agente especificado.

Parmetros: Nmero Agente ....Identifica al Agente que previamente debe estar dado de alta en "agents.conf". Opciones ....Opciones de Agente.
AgentLogin: Login como Agente del sistema, en modo exclusivo. Es decir, el telefono siempre esta activo y escuchar un tono de beep cuando se le asigne una llamada.

<pre>Parmetros: Nmero Agente ....Identificador del Agente que debe de estar dado de alta en "agents.conf". Opciones ....Opciones: s - no escucha el mensaje de bienvenida al sistema.

AgentMonitorOutgoing: Muestra el Identificador del Agente que realiza una llamada usar con AgentCallbackLogin.

37

Proyecto ASIR:

VoIP & Asterisk

Parmetros: Opciones

....Opciones (n o d).

Agi: Ejecuta un script o programa creado por el usuario.

Parmetros: Script ....Nombre Script. Argumentos ....Argumentos que acompaan la llamada al script.

AlarmReceiver: Recepcin de Seal de Alarma desde un dispositivo especial.

Parmetros: NINGUNO ....' '


Answer: Descuelga inmediatamente.

Parmetros: NINGUNO ....' '


AppendCDRUserField: Aade el valor especificado en el campo User del registro de la llamada en el CDR.

Parmetros: Valor ....Valor que se inserta en el registro CDR.


Authenticate: Pide al interlocutor que introduzca una clave vlida para continuar.

Parmetros: Password ....Contrasea vlida, que puede ser un archivo conteniendo contraseas.
Background: Reproduce una meloda o mensaje de audio mientras se espera la marcacin de las teclas.

Parmetros: Archivo ....Especifica el archivo que contiene la Meloda o Mensaje. Opciones ....Skip no answer.

38

Proyecto ASIR:

VoIP & Asterisk

Language ....Se puede seleccionar un lenguage para seleccionar el idioma.


BackgroundDetect: Reproduce una meloda o un mensaje mientras intenta detectar un digito que corresponda con una extension.

Parmetros: Archivo ....Especifica el archivo que contiene la Meloda o Mensaje. Periodo ....Periodo de silencio en milisegundos (si sigue a un periodo de No Silencio salta a la extensin talk). Min. No-Silencio ....Minimo periodo de No-Silencio en milisegundos. Max. No-Silencio ....Periodo de No-Silencio Maximo en milisegundos.
BLQ_ERROR_REGLA: Reordena el ndice de la extensin, insertando un salto de 101 posiciones sobre el ndice que se seala en el parmetro "Indice Regla". A partir de esta posicin las reglas son tabuladas hacia la derecha, y mientras no aparezca otra Aplicacin BLQ_ERROR_REGLA, el ndice sigue incrementndose. CUIDADO: con incluir ndices iguales en la misma extensin. Se ejecutar la aplicacin del primero de los ndices repetidos.

Parmetros: Indice Regla '0' ....Seala la Regla que puede obligar a desviar el flujo de la llamada n+101 posiciones. Busy: Devuelve la seal de ocupado hasta colgar o expirar el timeout. Parmetros: Timeout ....Tiempo que espera antes de colgar. En segundos.
Callingpres: Cambia la representacion del CID en una llamada externa.

Parmetros: CID ....Incluye el Nmero y el nombre del CID. "nombre" (Nmero).


capiNoES: Deja de aplicar la supresion de eco en un canal CAPI.

Parmetros: NINGUNO

39

Proyecto ASIR:

VoIP & Asterisk

....' '
ChangeMonitor: Cambia el Archivo donde se almacena el archivo de audio en un canal que se est monitorizando.

Parmetros: Archivo ....Nombre del Archivo dnde se almacenar ahora la grabacin.


ChanIsAvail: Actualiza la vble. AVAILCHAN con el primer canal que est libre. Se identifica un canal como: Tecnologa/recurso, pudiendo anidar ms canales aadindo "& Tecnologa/recurso ". Por ejemplo, SIP/100&SIP/101&SIP/102... para elegir el primero de los recursos SIP libres.

Parmetros: Lista Canales ....Formato: Tipo_Canal/Recurso[&Tipo_Canal/Recurso].


CheckGroup: Controla que no se desborda el tope de las llamadas en el grupo activo (SetGroup).

Parmetros: Llamadas ....Indica el mximo nmero de llamadas que admite el grupo actualmente.
Congestion: Reproduce el sonido de "Congestion en la linea" hasta que finalice la llamada o expire el valor de Timeout.

Parmetros: Timeout ....Tiempo que espera antes de colgar. En segundos.


ControlPlayback: Reprocude un archivo, y se controla con algunas teclas su reproduccion siempre que no coincida con una extensin.

Parmetros: Archivo ....Nombre Fichero que contiene la meloda a reproducir. Skipms ....Finaliza la reproduccin. Tecla de avance ....Establece la tecla que permite un avance rpido de la audicin. Tecla de rebobinar ....Establece la tecla que permite retroceder en la audicin.

40

Proyecto ASIR:

VoIP & Asterisk

Tecla de parada ....Establece la tecla que permite parar la reproduccin. Tecla de pausa ....Establece la tecla que permite parar la audicin.
Cut: Permite asignar a una variable el valor de PARTE de otra. El resultado que se almacena es una subdivisin de la antigua variable, la divisin del parmetro "Bloque". La variable se divide en tantos trozos, como aparezca el delimitador.

Parmetros: Nueva Variable ....Nombre de la Variable dnde se almacena el resultado. Vieja Variable ....La Variable de dnde se desean extraer los datos. Delimitador ....El carcter separador a partir del cual se realiza el corte. Bloque ....Especifica el bloque que se selecciona para asignar a la nueva variable.
DateTime: Reproduce una fecha a partir de una dada en formato unixtime. El formato unixtime representa una fecha expresada en la cantidad de segundos desde el 1 de enero de 1970 hasta el momento expresado en la fecha. La reproduccin de las fechas se realiza de acuerdo a un formato determinado.

Parmetros: Fecha y Hora ....Fecha y Hora espresada en formato "unixtime". Zona Horaria ....Zona horaria (revisar zonas horarias en Linux). Formato Reproduccin ....Formato de reproduccion de la fecha (por defecto: ABdY "digits/at" IMp).
DBdel: Elimina un dato de la base de datos interna, la cual se organiza en Familias de datos, y datos con valores dentro de la familia. De esta manera, para acceder a una variable, hay que especificar su Familia y el Valor determinado.

Parmetros: Valor ....Valor a eliminar, indicndose en la forma (Familia/Valor).

41

Proyecto ASIR:

VoIP & Asterisk

DBdeltree: Elimina una Familia de datos de la base de datos interna. A veces es necesario indicar una clave para realizar esta operacin.

Parmetros: Familia ....Nombre de la Familia ([/Clave] si es necesario la password se aade de la forma indicada).
DBget: Obtiene el valor de un campo de la base de datos interna, especificado por la familia y el nombre del campo, y lo almacena en la variable especificada.

Parmetros: Variable ....Variable dnde se almacena el resultado de la consulta a la Base de datos interna. Campo BD ....Nombre del Campo del que se extra el dato, expresado con la forma "Familia/Campo".
DBput: Inserta el valor especificado, dentro de un campo de la base de datos interna, especificado por la familia y el nombre del campo.

Parmetros: Campo BD ....Nombre del Campo que se inserta en la BD, expresado con la forma "Familia/Campo". Valor ....Valor que contendr el campo de la base de datos.
DeadAgi: Ejecuta un script o programa creado por el usuario, al colgar la llamada en curso. (Observar tambin la situacin de contexto H hangup).

Parmetros: Script ....Nombre Script. Argumentos ....Argumentos que acompaan la llamada al script.
Dial: Realiza una llamada a la extensin o nmero determinado en el campo "Num.Llamada", esperando una cantidad de segundos para que se establezca la comunicacin. En caso de que no se establezca la comunicacin pasar a la siguuiente regla, pero si la comunicacin no se establece por estar ocupado el interlocutor, saltar a la regla n+101.

Parmetros: Canal Comunicacin

42

Proyecto ASIR:

VoIP & Asterisk

....Tipo de tecnologa que se usa en la llamada: Zap, SIP, IAX, H323. Extension/Nmero ....A una extensin interna slo indicar la Extensin. Si es una llamada externa: Recurso/${EXTEN} (o Nmero al que se llama). Segundos de espera ....Segundos de espera a que se establezca la comunicacin.
DigitTimeout: Nmero de segundos vlidos entre una y otra pulsacin de los digitos.

Parmetros: Segundos ....Segundos de espera.


Directory: Accede a un servicio de directorio, apoyado en la informacin almacenada para la gestin de un contexto de Voicemail, en este caso el Apellido y Nombre de los usuarios. Con ello, se consigue que un usuario pueda acceder a la extensin "escribiendo el nombre" del usuario de la extensin a quien llama, de manera similar a como se dan de alta los nombres en una agenda de un mvil. SOLO FUNCIONA con aquellos usuarios que tengan activado el buzn de voz.

Parmetros: Contexto Voicemail ....Usar: voip-h323. Contexto de Llamada ....Contexto de Llamada donde se sita la regla de llamada a la extensin. Opciones ....Opciones: busca por el nombre. Por defecto busca por apellidos.
Disa: Permite hacer una llamada al exterior y colgar; en caso de que descuelgue el llamante recibimos la llamada.

Parmetros: Clave ....Clave de acceso (usar: "no-password" si no se desea). Contexto ....Contexto dnde se trata la llamada al interior en caso de que descuelgue el interlocutor. Caller ID ....Caller ID. Formato "My Phone" (Nmero).

43

Proyecto ASIR:

VoIP & Asterisk

EAGI: Ejecuta un script o programa creado por el usuario, con la particularidad de que EAGI permite controlar el flujo de audio.

Parmetros: Script ....Nombre Script. Argumentos ....Argumentos que acompaan la llamada al script.
Echo: Permite escuchar el eco de lo que se est hablando.

Parmetros: NINGUNO ....' '


EnumLookup: Establece el valor de la variable ENUM de acuerdo a la extension pasada.

Parmetros: Extension ....Extensin que v a ser modificada a su valor ENUM.


Eval: Evala una variable y se asgina a otra nueva. Formato: Nueva Variable = Algo (que puede ser otra variable representada por ${Variable}).

Parmetros: Variable ....Variable que es actualizada. Valor ....Valor con el que se actualiza, que puede ser otra variable (${vble}).
Exec: Ejecuta una aplicacin de las de esta lista, cuando es invocada, de tal manera que no est establecida en el Dialplan de manera fija.

Parmetros: Aplicacion ....Cualquiera de las aplicaciones soportadas por Asterisk. Parmetros ....Los que soporte la aplicacin seleccionada (deben separarse con comas, caundo exista ms de uno).
Festival: Reproduce una cadena de texto usando el software Festival.

Parmetros: Texto

44

Proyecto ASIR:

VoIP & Asterisk

....Texto a Reproducir. Tecla ....Tecla que permite interrumpir la alocucin y continuar el dialplan (usar "any" para cualquiera).
Flash: Enva el evento Flash a la lnea (es usado dentro de un AGI normalmente para producir una transferencia).

Parmetros: NINGUNO ....' '


ForkCDR: Inserta un nuevo Registro en la tabla CDR contando a partir de este instante el temporizador.

Parmetros: NINGUNO ....' '


GetCPEID: Obtiene de telefonos ADSI la informacin CPE ID, para configurar al canal zaptel adecuadamente en operaciones "on-hook".

Parmetros: NINGUNO ....' '


GetGroupCount: Obtiene el numero de llamadas al grupo de llamadas en un momento dado. El valor obtenido actualiza la variable GROUPCOUNT.

Parmetros: Grupo Llamadas ....Nombre del Grupo de Llamadas (@categoria, opcional)


Goto: Envia el flujo de la llamada a una determinada posicin del dialplan, establecida por los Parmetros de Contexto + Extension + Prioridad. Entre los contextos hay que tener en cuenta que adems de los creados por el usuario exusten otros de creacin automtica: default controlado desde la pestaa "Control IVR"; voip-h323: controla las extensiones del sistema; outgoing que gestiona todas las extensiones de salida creadas dentro de la opcin "Comunicacin Exterior"; servicios contexto administrado desde la ventana homnima (Tener en cuenta las maysculas y minsculas).

Parmetros: Contexto ....Contexto al que se desva la llamada. Los contextos: default, servicios, outgoing, voip-h323; son creados por el sistema, y pueden referenciarse. Extension

45

Proyecto ASIR:

VoIP & Asterisk

....Especifica la extensin, dentro del Contexto, a la que se desva (si no se especifica nada, ir a la extensin "s"-start. Prioridad ....Ultimo nivel de detalle al que se puede llegar, y expresa el ndice de una regla dentro de las de la extensin.
GOTO-IF: Ejecuta la Sentencia Goto solo si se PULSA la opcin especificada. En realidad, lo que realiza es la construccin de una extensin con una sla Regla: exten=>Opcion,1,Goto(Contexto,Extension,Prioridad). Sirve cuando no se quiere en realidad construir una extension con ms reglas, como sucede en contextos de IVR, dnde se desea una regla para controlar la opcin de salida.

Parmetros: Opcion a Teclear ....Se especifica lo que debe. Contexto ....Contexto al que se redeirige el flujo de la llamada. Extension ....Extensin de destino dentro del contexto sealado. Prioridad ....Por ltimo, el orden dentro de las reglas que gobiernan la extensin.
GotoIf: Permite un desvo del flujo de la llamada dentro de las reglas definidas para la misma extensin (ojo, no permite el salto directo a otro contexto o extensin). Adems con la particularidad de que se v a controlar el salto en funcin de la evaluacin de una expresin condicional. Esta expresin condicional se conforma como: ${VARIABLE} [Elemento Condicional] Valor/${Variable}. Teniendo en cuenta que hay que separar con un espacio en blanco los elementos.

Parmetros: Condicion ....Expresin Condicional que ser evaluada (separados por un espacio en blanco): ${VARIABLE} [Condicion] [${Variable} o Valor]. Regla de Salto True ....Nmero de la Regla a la que salta en caso de ser Verdadera la Expresion. Regla de Salto False ....Nmero de la Regla a la que salta en caso de ser Falsa la Expresion.

46

Proyecto ASIR:

VoIP & Asterisk

GotoIfTime: Desva el flujo de la llamada a un contexto y extensin especificados, SOLO cuando se est en dentro del rango fecha-hora especificado en los Parmetros (Un smbolo * indica todo el rango posible en el parmetro).

Parmetros: Rango Horario ....En formato de 24 Horas, y con una hora de comienzo y otra de final (Por ejemplo: 08-14. Las 24 horas se indican con *). Dias Semana ....Indica un numero de Dias habiles en la semana (0 y 7 indican Domingo; * indica todos). Dias del Mes ....Indica que dias del mes se desean (* indica todos). Meses ....Indica que meses se desean (* indica todos). Regla de Salto True ....Nmero de la Regla a la que salta en caso de ser Verdadera la Expresion. Regla de Salto False ....Nmero de la Regla a la que salta en caso de ser Falsa la Expresion.
Hangup: Cuelga inmediatamente.

Parmetros: NINGUNO ....' '


HasNewVoicemail: Esta aplicacin permite determinar si el usuario del buzn tiene mensajes almacenados. Si no existen mensajes, el flujo de la llamada salta a la regla siguiente; mientras que el flujo de la llamada se desva a la regla con el ndice n+101 si existen mensajes en el buzon especificado.

Parmetros: Nmero del Buzn ....El Buzn se puede completar adems con el contexto con "@contexto". Opcionalmente, se puede almacenar el nmero de mensajes existentes en una variable para ser consultada posteriormente. Variable ....El Nmero de Mensajes en el Buzn son almacenados en la variable especificada.
ICES: Conecta a un servidor ice-cast de streaming. Necesita un archivo de configuracin.

47

Proyecto ASIR:

VoIP & Asterisk

Parmetros: Fichero ....Fichero de configuracin.


INCLUDE: Direcciona a un contexto, de una forma especial, ya que al introducir una regla include, se toman en consideracin los valores temporales, que se pueden modificar en los parmetros del contexto.

Parmetros: Contexto ....Contexto destino.


LookupBlacklist: Mira si el CallID de la llamada est dentro de la lista negra de llamantes. Si est, salta a la regla n+101.

Parmetros: NINGUNO ....' '


LookupCIDName: Mira si el CallID de la llamada est dentro de la lista "cidname". Si est, establece la variable CIDNAME al valor de la lista.

Parmetros: NINGUNO ....' '


Macro: Ejecuta una Macro. Las Macros son Contextos especiales, en los cuales solo caben reglas para la extension "s" las cuales son ejecutadas en orden ... para posteriormente devolver el flujo de las acciones al siguiente paso en la llamada a esta aplicacin Macro. Los argumentos dentro del contexto macro se referencian con ${ARG1} ${ARG2} ...

Parmetros: Nombre ....Nombre de la Macro a la que se llama como macro->nombre>. Argumentos ....Los Argumentos se separan por comas en caso de existir ms de uno.
MailboxExists: Es una funcin que permite un salto condicional a la regla n+101. Comprueba si existe el Buzon de Voz. En caso de que exista salta a la regla n+101.

Parmetros: Nmero Buzon ....Nmero del Buzon (seguido de "@contexto del buzon", opcional).
MeetMe: Encamina una llamada a una sala de conferencia, dnde podr escuchar la conversacin de los que all se agreguen, en funcin de la opcin que se determine. Entre las principales opciones: a-Modo

48

Proyecto ASIR:

VoIP & Asterisk

Administrador; s-Slo escuchar; t-Slo hablar; p-Salir pulsando #; M- escuchar msica cuando esta slo en la sala; x-cierra la sala cuando no haya nadie ... consultar ms opciones en la documentacin.

Parmetros: Sala ....Indicativo de la sala (un Nmero de Sala). Opciones de Entrada ....Condiciones en las que se entra en la sala.
MeetMeAdmin: Ejecuta un comando de administrador sobre la conferencia dada o sobre un usuario dado de la sala. Los comandos que se tienen: M- Activa el sonido; m- Pone en silencio (mute); L- Bloquea la sala; l- Desbloquea la sala; K- Saca todos los usuarios de la sala; k- saca solo un usuario de la sala.

Parmetros: Sala ....Indicativo de la sala (un Nmero de Sala). Comando ....Uno de los indicados anteriormente (M m L l K k). Usuario ....Si se especifica un usuario, se aplica el comando al usuario especificado (Solo comando k).
MeetMeCount: Dice el nmero de participantes en la sala de conferencias especificada. Si adems se especifica una variable, se almacena en la variable el valor hallado.

Parmetros: Sala ....Indicativo de la sala (un Nmero de Sala). Variable ....Nombre de la Variable dnde se almacena el resultado.
Milliwatt: Genera un tono constante de 1000Hz a 0dbm (mu-law).

Parmetros: NINGUNO ....' '


Monitor: Graba la comunicacin en curso en un formato de Audio (wav, gsm, mp3) y la almacena en un archivo de audio la salida y en otro la entrada .. a menos que se seleccione la opcin "m", en cuyo caso son mezclados los archivos en uno solo. Otra opcin, "b" indica que no se quieren grabar los saltos de una extensin a otra, en caso de que se produzcan.

Parmetros: Formato Audio

49

Proyecto ASIR:

VoIP & Asterisk

....Especifica si se desa almacenar el Audio en formato wav, gsm, mp3. Archivo ....Nombre con el que se almacena (se pueden usar nombre de Variables). Opciones ....m- mezcla sonidos de entrada y salida; b-no graba mientras hay una transferencia a otro canal.
MP3Player: Ejecuta a travs del programa mpg123 un fichero o un stream de audio (especificar URL).

Parmetros: Localizacion ....Direccin URL


MusicOnHold: Ejecuta la audicin de la msica en espera de la clase seleccionada. Las clases se definen dentro del archivo musiconhold.conf (Por defecto estn las clases default y random. default es la que se activa si no se especifica ninguna clase). La clase default, puede tomar los valores de otra existente, mediante la aplicacin SetMusicOnHold.

Parmetros: Clase Musical ....Valor: random o "no poner nada"


MYSQL: Ejecuta una sentencia MySQL (Connect Query Fetch Clear Disconnect), incluso almacena el resultado en variables que pueden ser accesibles en el DialPlan. Observar su sintaxis: Connect Conector Lista_Vbles (dbhost dbuser dbpass dbname) Query Resultado Conector Consulta (SELECT algo FROM Tabla WHERE sentencia_sin_espacios) Fetch Resultado Conector Lista_Vbles (vble1 vble2 ...) Clear Conector Disconnect Conector.

Parmetros: Sentencia ....Una de las Siguientes: Connect Query Fetch Clear Disconnect. Resultado ....Vble en la que se almacena el resultado de la ejecucin de la sentencia SQL. (Para Connect,Query,Fetch). Conector ....Variable que seala dnde buscar los datos a Query/Fetch/Clear/Disconnect. Siempre es ${variable_resultado}. Consulta SQL/Lista V ....Consulta SQL (Sin entre comillar, y separando el espacio en blanco como " ") o

50

Proyecto ASIR:

VoIP & Asterisk

Lista de Variables donde almacenar (Fetch) o dnde se almacenan los datos de conexion (Connect).
NBScat: Reproduce un stream NBS local.

Parmetros: NINGUNO ....' '


NoCDR: No almacena la informacin de la llamada en la tabla CDR.

Parmetros: NINGUNO ....' '


NoOp: No ejecuta nada.

Parmetros: NINGUNO ....' '


Park: Auto Aparca al usuario en el espacio de "parking" de llamadas, normalmente para poder determinar como est ese espacio. Se usa junto a una transferencia supervisada. Debe existir el contexto "parkedcalls".

Parmetros: Extension ....Nmero de la Extension correspondiente al Rango de "Parking" dnde se aparca la llamada.
ParkAndAnnounce: Aparca la llamada indicando dnde es aparcada, y que hacer si expira un tiempo mximo de segundos en espera sin ser atendida.

Parmetros: Avisar ....Indicando que va a ser aparcado, con PARKED, o el Nmero de Extensin en la que se aparca. Timeout ....Tiempo mximo en espera antes de ir al contexto de retorno. Marcar Aviso de Llam ....Permite especificar una llamada de aviso a una extensin. Formato: Aplicacin Dial. Ejemplo: SIP/${EXTEN}. Contexto de Retorno

51

Proyecto ASIR:

VoIP & Asterisk

....Contexto al que retorna la llamada en caso de timeout. Formato: Contexto,Extension,Prioridad.


ParkedCall: [NULL]. Parmetros: Extension ....Recupera una llamada aparcada previamente en la extensin especificada. ParkedCall: [NULL]. Parmetros: Extension ....Recupera una llamada aparcada previamente en la extensin especificada. Playback: [NULL]. Parmetros: Fichero ....Reproduce un archivo de audio, mientras no se cuelgue la llamada. Playtones: [NULL]. Parmetros: Tono registrado o Li ....Reproduce un tono, dado desde una lista, o registrado en el archivo "indications.conf". Prefix: [NULL]. Parmetros: Prefijo ....Aade un prefijo al nmero/mscara tratados en la extensin. PrivacyManager: Pide el nmero de telfono (10 cifras) en caso de no llevar CID. Parmetros: NINGUNO ....' ' Progress: Indica que por este canal se puede conocer el progreso de la llamada ("in-band progress"). Parmetros: NINGUNO ....' ' Queue: Envia la llamada en curso a una cola de llamadas, previamente dada de alta. Adems se puede acompaar de diversas acciones el desvio a la cola.

Parmetros: Nombre de Cola ....Cola de llamadas dada de alta en el sistema. Opciones de Llamada ....tT-Permite Transferir la llamada; r-Escuchar Tono Ring (por defecto tT). Direccion URL ....Permite ejecutar un comando via URL. Mensaje ....Mensaje de anuncio de algun evento. Timeout ....Tiempo maximo de espera a ser atendido en la Cola.
Random: Salto condicional basado en una probabilidad.

Parmetros: Valor ....Valor Probable (entre 1 y 100). Contexto de Salto ....Formato: contexto,extension,prioridad.
Read: Lee un numero de digitos (que finalizan con la tecla # o al llegar a un lmite marcado) y se asignan a una variable.

52

Proyecto ASIR:

VoIP & Asterisk

Parmetros: Variable ....Nombre de la variable dnde se almacenar el resultado de la lectura. Archivo ....Archivo de audio con un mensaje, que se reproduce antes de la lectura. Max. Digitos ....Nmero Mximo de dgitos permitidos en la lectura. Opciones ....Se aplican si la linea no est activa: skip- sigue en la siguiente regla; noanswer- lee datos aunque no est la linea activa.
Record: Graba en un archivo un mensaje de voz en el formato especificado.

Parmetros: Nombre Fichero ....Nombre del archivo que almacena la grabacin. Formato ....Formatos de grabacin: g723, g729, gsm, h263, ulaw, alaw, vox, wav, WAV. Max. Silencio ....Si detecta Silencio durante los segundos especificados, termina la grabacin. Max. Duracion ....Tiempo limite de la grabacin, en segundos. Opciones ....Se aplican si la linea no est activa: skip- sigue en la siguiente regla; noanswer- graba aunque no est la linea activa.
RemoveQueueMember: Nombre de la Cola de la que se desea dar de baja, como agente de ella. Si no se especifica nada, el sistema entiende que es desde la misma extensin desde dnde se llama, en caso de rellenar el campo Interface, se dar de baja lo especificado en ese parmetro.

Parmetros: Cola ....Nombre de la Cola. Interface ....Indica el interface que quiere darse de baja. Ejemplo: SIP/ ${CALLERIDNUM}.

53

Proyecto ASIR:

VoIP & Asterisk

ResetCDR: Pone a Cero el registro con la informacin de la llamada en curso, que va a ser almacenado en la tabla CDR. La opcin CDR almacena previamente el contenido.

Parmetros: Opcion ....CUIDADO!! Pone a cero el CDR. Opcin: w, almacena todo.


ResponseTimeout: Establece el tiempo de espera a la marcacin de una extensin.

Parmetros: Segundos ....Tiempo de espera.


Ringing: Devuelve la seal de RING.

Parmetros: NINGUNO ....' '


RxFAX: Recibe un FAX y lo enva a un archivo. Modifica adems las variables REMOTESTATIONID, FAXPAGES, FABITRATE, FAXRESOLUTION.

Parmetros: Nombre de Archivo ....Nombre del archivo que contiene lo que se v a enviar va fax.
SayAlpha: Deletrea la cadena de texto. Esta cadena puede tener letras, nmeros o los smbolos ! @ # $ * - + = / (espacio en blanco).

Parmetros: Cadena Texto ....Cadena de Texto sin entrecomilla.


SayDigits: Deletrea los dgitos pasados, en el lenguage activo en ese canal.

Parmetros: Nmero ....Nmero a Deletrear ... puede ser el contenido de una variable.
SayNumber: Dice el Nmero pasado, en el lenguage activo en ese canal.

Parmetros: Nmero ....Nmero que se leer (entre 0 y 99.999.999). Sin decimales.

54

Proyecto ASIR:

VoIP & Asterisk

Gnero ....Entonacin del audio: m-masculino; f-femenino; c-entonacin de ordenador.


SayPhonetic: Deletrea la cadena pasada, usando el alfabeto fontico que es usado por la NATO.

Parmetros: Cadena Texto ....Cadena de texto a deletrear.


SayUnixTime: Nos dice la fecha y hora en funcin del valor pasado en formato unixtime (segundos desde 1/ene/1970). </pre>Parmetros: UnixTime ....Valor temporal en formato unixtime. Zona Horaria ....Zona Horaria como las especificadas en Linux. Formato de dictado ....Forma en la que se escuchar la fecha dada. Ejemplo: ABdY "digits/at" IMp.</pre> SendDTMF: Envia una cadena de digitos, a travs de la seal DTMF establecida en el canal.

Parmetros: Dgitos ....Dgitos (vlidos: 0-9 *#abcd).


SendImage: Envia una cadena de digitos, a travs de la seal DTMF establecida en el canal.

Parmetros: Imagen ....Archivo con imagen.


SendText: Envia un mensaje de texto al cliente. Si el cliente no soporta la recepcin de texto, el dialplan continuar en la regla n+101, si existe.

Parmetros: Mensaje ....Mensaje de texto.


SendURL: Enva una direccin URL al cliente, siempre que lo soporte. En caso de no soportarlo, se desvia la ejecucin a la regla n+101.

Parmetros: URL ....Direccin URL. Opciones ....wait - indica que espera a que se haya cargado la URL antes de continuar.
SetAccount: Establece el valor del campo Account en el CDR, para control de llamada.

55

Proyecto ASIR:

VoIP & Asterisk

Parmetros: Valor ....Valor que se introduce en el campo Account (puede ser el contenido de una variable).
SetAMAFlags: Establece el valor del campo amaflags en el CDR, para control de llamada.

Parmetros: Flags ....Valores posibles: default, billing, documentation, omit.


SetCallerID: Establece un nuevo valor para el CallerID de la llamada.

Parmetros: CID ....NuevoCID.


SetCallerPres: Presentacion del CallerID de la llamada: allowed_not_screened allowed_passed_screen allowed_failed_screen allowed prohib_not_screened prohib_passed_screen prohib_failed_screen prohib unavailable.

Parmetros: Presentacion ....Valores: allowed_not_screened allowed_passed_screen allowed_failed_screenallowed prohib_not_screened prohib_passed_screen prohib_failed_screen prohib unavailable.
SetCDRUserField: Establece el valor del campo User en el registro CDR para la llamada en curso.

Parmetros: Valor ....Valor que se inserta en el campo User.


SetCIDName: Establece un nuevo valor para la parte del Identificador de Nombre (no el nmero) del CallerID de la llamada.

Parmetros: Nombre ....Nuevo Nombre asignado a la parte del nombre dentro del CID.
SetCIDNum: Establece un nuevo valor para la parte del Nmero (no el nombre) del CallerID de la llamada.

Parmetros: Nmero de Telfono

56

Proyecto ASIR:

VoIP & Asterisk

....Nuevo Nmero telefnico.


SetGlobalVar: Establece una variable Global, que se puede usar en otro canal de comunicacin al ser de mbito global a todo el Dialplan.

Parmetros: Variable Global ....Nombre de la Variable Global. Valor ....Valor al que se establece.
SetGroup: Especifica la creacin de un grupo para control de acceso. Por ejemplo, muy til para limitar el numero de llamadas a una extensin. </pre>Parmetros: Grupo ....Nombre del grupo (puede ser una extensin o una variable).</pre> SetLanguage: Establece el directorio por defecto de donde coger los archivos de voz para los mensajes. Por defecto es ingles (en), para el idioma espaol (es) .. se delimitan por abreviaturas del pais, por lo general.

Parmetros: Pais ....Abreviatura del lenguage, segn pais. ej: language=es


SetMusicOnHold: Establece la "clase" musical por defecto, para MusicOnHold.

Parmetros: Clase ....Clase Musical definida en el archivo musiconhold.conf.


SetVar: Establece el valor de una variable global, que se puede usar durante la comunicacin de cualquier canal.

Parmetros: Variable ....Nombre de la variable global.


SetVar: [NULL]. Parmetros: Valor ....Valor al que se establece. SIPDtmfMode: Establece el parametro dtmfmode para una llamada a travs de un canal SIP. Valores vlidos: inband,info, rfc2833.

Parmetros: DTMF Mode ....Nuevo valor de sealizacin de la seal dtmf, en el canal de comunicacin en curso.

57

Proyecto ASIR:

VoIP & Asterisk

SoftHangup: Cuelga un canal en curso, aunque hay que saber con anterioridad el identificador correcto de la comunicacin, que suele ser: Tecnologa/Canal-recurso (por ejemplo: SIP/701-af23). Formato: Tipo_Canal/identificador_recurso.

Parmetros: Canal ....Formato: Tipo_Canal/identificador_recurso.


StopMonitor: Finaliza la grabacin de la llamada en curso.

Parmetros: NINGUNO ....' '


StopPlaytones: Finaliza la reproduccin de la lista de tonos especificada en Playtones.

Parmetros: NINGUNO ....' '


StripLSD: Trunca por la Izquierda el nmero o mscara de la extensin actual.

Parmetros: Digitos ....Nmero de Dgitos que seran eliminados.


StripMSD: Trunca por la Derecha el nmero o mscara de la extensin actual.

Parmetros: Digitos ....Nmero de Dgitos que seran eliminados.


Suffix: Aade los digitos especificados al final del nmero o mscara actual.

Parmetros: Nmeros ....Nmero que ser aadido al valor ${EXTEN}, para formar el nmero: ${EXTEN}"Nmeros".
System: Ejecuta una aplicacin en Linux.

Parmetros: Aplicacin ....Aplicacion Linux como si se lanzase desde el intrprete de comandos.

58

Proyecto ASIR:

VoIP & Asterisk

TestClient: Ejecuta un test sobre el cliente dado, almacenando el resultado en "/var/log/asterisk/testreports/testid.txt".

Parmetros: Cliente ....' '


TestServer: Ejecuta un test sobre Servidor y almacena el resultado en "/var/log/asterisk/testreports/testid.txt".

Parmetros: NINGUNO ....' '


Transfer: Transfiere la llamada en curso a otra extensin, siempre que est dentro de su mismo Contexto. En caso de ser fallida, salta a la regla n+101.

Parmetros: Extension ....Nmero de extensin a la que se pretende realizar el Salto.


TrySystem: Ejecuta una aplicacin en Linux. Si existe un error en la ejecucin sigue en la regla n+101.

Parmetros: Aplicacin ....Aplicacion Linux como si se lanzase desde el intrprete de comandos.


TxFAX: Envia el Archivo especificado. Ademas usa las variables LOCALSTATIONID y REMOTESTATIONID.

Parmetros: Archivo ....Nombre del Archivo en formato TIFF.


TXTLookup: Busca el interlocutor que llama a partir del campo de texto via DNS. en la base de Datos Interna. Actualiza la variable TXTCIDName.

Parmetros: CID ....Identificador de la llamada (puede ser una variable).


UserEvent: Enva al subsistema "Manager" un evento que podr ser usado por el usuario. Como parmetros se pasa al Manager, un nombre de evento y opcionalmente un campo con ms opciones.

Parmetros: Nombre

59

Proyecto ASIR:

VoIP & Asterisk

....Nombre de Evento. Cuerpo de Evento ....Las Opciones posibles que se pueden gestionar desde el manager.
Verbose: Nivel de detalle de la presentacin de mensajes en consola.

Parmetros: Nivel ....De 0 hasta 7. Mensaje ....Mensaje Personalizado que ser presentado en los archivos de "log".
VoiceMail: Desva al buzn de voz de la extensin especificada, la llamada en curso. Es posible especificar el motivo del desvo, mostrando un mensaje segn se indique en el campo de Mensaje de Aviso(b=ocupado, u=no disponible), o no emitir ninguna alocucin previa a la grabacin del mensaje (s=Sin Mensaje previo).

Parmetros: Mensaje de Aviso ....b- ocupado; u- no disponible; s- sin mensaje. Extensin ....Nmero de Extension ( y en algunos casos la definicin del contexto al que pertenece mediante "@contexto", opcionalmente).
VoiceMail2: Desva al buzn de voz de la extensin especificada, la llamada en curso. Es posible especificar el motivo del desvo, mostrando un mensaje segn se indique en el campo de Mensaje de Aviso(b=ocupado, u=no disponible), o no emitir ninguna alocucin previa a la grabacin del mensaje (s=Sin Mensaje previo).

Parmetros: Mensaje de Aviso ....b- ocupado; u- no disponible; s- sin mensaje. Extensin ....Nmero de Extension ( y en algunos casos la definicin del contexto al que pertenece mediante "@contexto", opcionalmente).
VoiceMailMain: Accede al sistema de control del buzn de voz. El subsistema de Buzn de voz, le indicar mediante un men de voz como acceder a todas las funciones. Se puede acceder directamente a un buzn especfico, sealando el campo "Buzon de Voz", con el valor de la extensin a la que acceder. Si no, si se deja en blanco, accede al men principal de la aplicacin, pidindo los datos necesarios. Si se indica "s", en el campo Mostrar Mensaje, no ser reproducido el mensaje de bienvenida.

60

Proyecto ASIR:

VoIP & Asterisk

Parmetros: Mostrar mensaje ....slo cabe dejarlo en blanco, o poner el valor "s". Buzon de Voz ....Extensin(@contexto) del buzn de voz a analizar. Si no se indica nada, accede al men principal.
VoiceMailMain2: Accede al sistema de control del buzn de voz. El subsistema de Buzn de voz, le indicar mediante un men de voz como acceder a todas las funciones. Se puede acceder directamente a un buzn especfico, sealando el campo "Buzon de Voz", con el valor de la extensin a la que acceder. Si no, si se deja en blanco, accede al men principal de la aplicacin, pidindo los datos necesarios. Si se indica "s", en el campo Mostrar Mensaje, no ser reproducido el mensaje de bienvenida.

Parmetros: Mostrar mensaje ....slo cabe dejarlo en blanco, o poner el valor "s". Buzon de Voz ....Extensin(@contexto) del buzn de voz a analizar. Si no se indica nada, accede al men principal.
Wait: Espera un tiempo expresado en segundos antes de continuar.

Parmetros: Segundos ....Segundos de Espera.


WaitExten: Espera los segundos expresados, que se marque una nueva extensin antes de continuar.

Parmetros: Tiempo ....Segundos de Espera.


WaitForRing: Espera los segundos especificados a recibir la seal de Ring.

Parmetros: Timeout ....Valor en segundos.


WaitMusicOnHold: Durante el tiempo que se especifique se retiene la llamada con Musica, la que est establecida en la clase "default".

Parmetros: Tiempo ....Segundos de espera.

61

Proyecto ASIR:

VoIP & Asterisk

Zapateller: Genera un tono que bloquea a los televendedores que llamen. Opciones: answer-responde despues del tono, nocallerid-genera el tono si no hay CID.

Parmetros: Opciones ....valores posibles: Answer o nocallerid.


ZapBarge: Controla un canal Zap, que est siendo monitorizado.

Parmetros: Canal ....Canal zap indicado por Zap/recurso.


ZapRAS: Permite acceso RAS a otro servidor usando una conexin pppd -en una linea RDSI-. Solo funciona para lineas RDSI controlado por un driver Zaptel.

Parmetros: Argumentos ....La lista de argumentos debe separarse con el smbolo "|".
ZapScan: Permite el control de los canales Zap, para encaminarlos adecuadamente. (#-selecciona siguiente canal; *-termina.

Parmetros: NINGUNO ....' '

62

Proyecto ASIR:

VoIP & Asterisk

3. Variables Dial Plan


* Extraido de http://www.voip-info.org/wiki/view/Asterisk+variables

${ACCOUNTCODE}: Account code, if specified. ${ANSWEREDTIME}: This is the amount of time(in seconds) for actual call. ${BLINDTRANSFER}: The active SIP channel that dialed the number. This will return the SIP Channel that dialed the number when doing blind transfers. ${CALLERID(all)}: The current Caller ID name and number. ${CALLERID(name)}: The current Caller ID name. ${CALLERID(num)}: The current Caller ID number. ${CALLINGPRES}: PRI Call ID Presentation variable for incoming calls. ${CHANNEL}: Current channel name ${CONTEXT}: The name of the current context ${DATETIME}: Current date time in the format: DDMMYYYY-HH:MM:SS This is deprecated in Asterisk 1.2, instead use :${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)}) ${DIALEDPEERNAME}: Name of the called party. Broken for now. ${DIALEDPEERNUMBER}: Number of the called party. Broken for now. ${DIALEDTIME}: Time since the number was dialed (only works when dialed party answers the line?!) ${DIALSTATUS}: Status of the call. ${DNID}: Dialed Number Identifier. Limitations apply. ${EPOCH}: The current UNIX-style epoch (number of seconds since 1 Jan 1970) ${EXTEN}: The current extension - cannot be modified with the set command- just use the GoTo to change the EXTEN variable! ${HANGUPCAUSE}: The last hangup return code on a Zap channel connected to a PRI interface ${INVALID_EXTEN}: The extension asked for when redirected to the i (invalid) extension ${LANGUAGE}: The current language setting. ${MEETMESECS}: Number of seconds a user participated in a MeetMe conference ${PRIORITY}: The current priority ${RDNIS}: The current redirecting DNIS, Caller ID that redirected the call. Limitations apply. ${SIPDOMAIN}: SIP destination domain of an inbound call (if appropriate) ${SIP_CODEC}: Set the SIP codec for the inbound (=first) call leg (see channelvariables.txt or README.variables in 1.2); Asterisk 1.6.2 also comes with SIP_CODEC_OUTBOUND for the remote (=second) call leg. ${SIPCALLID}: The SIP dialog Call-ID: header ${SIPUSERAGENT}: The SIP user agent header ${TIMESTAMP}: Current date time in the format: YYYYMMDD-HHMMSS This is deprecated as of Asterisk 1.4, instead use :${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}) ${TRANSFERCAPABILITY}: Type of Channel ${TXTCIDNAME}: Result of application TXTCIDName (see below) ${UNIQUEID}: Current call unique identifier ${TOUCH_MONITOR}: used for "one touch record" (see features.conf, and wW dial flags). If is set on either side of the call then that var contains the app_args for app_monitor otherwise the default of WAV||m is used ${TOUCH_MONITOR_PREFIX}: used for "one touch record" (see features.conf, and wW dial flags). This set Prefix to ${TOUCH_MONITOR} default: auto "New in 1.8"

63

Proyecto ASIR:

VoIP & Asterisk

4. Features.conf
*Extracto de la pgina http://www.voztovoice.org/?q=node/78
parkext => 700 parkpos => 701-710 context => parkedcalls ; La extensin donde transferir la llamada para parquearlas ; el numero de extensiones reservadas para parquear las llamadas ; el contexto usado para parquear las llamadas (luego hay que definirlo en extension.conf) parkinghints = yes parkingtime => 45 ; si est en yes podemos monitorear las extensiones donde se parquean las llamadas ; Numero de segundos despus de los cuales la llamada parqueada viene transferida a la extensin definida por el prximo parmetro comebacktoorigin = yes ; si est en yes la llamada parqueda, despus del parkingtime, vuelve a

la extensin que la parque, si est en no la llamada ser transferida alcontexto parkedcallcallstimeout a la extensin 's' y la prioridad '1' que tendremos que crear en extensions.conf courtesytone = beep parkedplay = caller ; El sonido que ser enviado a la llamada parqueada cuando alguien la llama o cuando empieza y termina la grabacin de la llamada ; A quien enviar el beep cuando se llama la extensin parqueada. Puede ser: parked(canal parqueado), caller(llamante) y both(ambos) parkedcalltransfers = caller ; Habilita o deshabilita la secuencia de tonos para transferir la llamada cuando es una llamada parqueada. Puede ser: habilitar para: callee(llamado), caller (llamante), both (ambos). Si se quiere deshabilitar hay que poner no. parkedcallreparking = caller ; Habilita o deshabilita la secuencia de tonos para parquear una llamada cuando era ya una llamada parqueada. Puede ser: habilitar para: callee(llamado), caller (llamante), both(ambos). Si se quieres deshabilitar hay que poner no. parkedmusicclass=default transferdigittimeout => 5 ; La clase de msica en espera que escuchar la extensin que ha sido parqueada ; Numero de segundos de espera entre cada dgito cuando se esta transfiriendo una llamada xfersound = beep ; El sonido que indicar que la transferencia de la llamada "asistida" se complet xferfailsound = beeperr pickupexten = *8 featuredigittimeout = 2000 ; El sonido que indicar que la transferencia de la llamada fracas ;numero de milisegundos entre cada dgito cuando se activan le funcionalidades que veremos ms adelante. El predefinido el 500 milisegundos pero a mi no me funcionaba. Tuve que subir este valor as que cuidado. atxfernoanswertimeout = 15 ; Tiempo mximo para contestar una llamada transferida con el mtodo "asistido". Ya veremos que significa ; Extensin a la que llamas para transferirte una llamada en espera

64

Proyecto ASIR:

VoIP & Asterisk

atxferdropcall = no

; Si quien transfiere una llamada con el mtodo "asistido" cuelga antes que la llamada sea transferida completamente, asterisk devuelve la llamada a quien la estaba transfiriendo. Si est en yes la llamada no se devuelve y se considera terminada.

atxferloopdelay = 10

; Numero de segundos de espera antes de devolver la llamada (si atxferdropcall = no)

atxfercallbackretries = 2 ; Las veces que se intentar devolver la llamada

65

Proyecto ASIR:

VoIP & Asterisk

10. BIBLIOGRAFIA
"Historia del telfono": http://www.taringa.net/posts/imagenes/1532507/Historia-del-telefono.html Libro: "VoIP: La telefona de Internet" por Jos Antonio Carballar : http://books.google.es/books? id=j7Nuzoet5gIC&pg=PA85&lpg=PA85&dq=RTCP+voip&source=bl&ots=E3RxM4wEgC&si g=biYAk7fUBLJpBzZnmKd2c29Lyes&hl=es&sa=X&ei=d2O6TbMHKaC4gSWhcDPCQ&ved=0CH8Q6AEwBw#v=onepage&q&f=false "CURSO VOZ SOBRE IP Y ASTERISK v1.0 . Mdulo III" por Gorka Gorrotxategi e Iaki Baz: http://documentacion.irontec.com/cursoAsteriskVozIP-3-introduccionAsterisk.pdf Proyecto de fin de Carrera: "Diseo e implementacin de una solucin VoIP" por Erika Soler Palacn de la universidad politcnica de Catalua: http://upcommons.upc.edu/pfc/bitstream/2099.1/8373/1/Memoria%20PFC%20-%20Erika %20Soler.pdf Proyecto de fin de Carrera: "Estudio y montaje a medida de Centralita Telefnica VoIP Asterisk" por David Escauela Alonso de la Escuela Universitaria de ingeniera Vitoria-Gasteiz. http://lsi.vc.ehu.es/pablogn/docencia/PFC/Documentacion%20Final%20PFC%20David %20Esca%C3%B1uela.pdf Consultor de tarifas de Movistar: http://www.ecomovil.com/catalog/tarifas_movistar.htm#tarifas http://www.movistar.es Proveedor de VoIP "Llevoip": https://www.llevoip.com "VoIP en Orange, Vodafone, Movistar, Yoigo, Pepephone y otras operadoras": http://www.marcefx.com/voip-en-orange-vodafone-movistar-yoigo-pepephone-y-otrasoperadoras/ Wiki sobre VoIP: http://www.voip-info.org/ Pgina principal de Asterisk: http://www.asterisk.org/ Email de Juan Carlos por Juan Carlos Nuo Y Rogelio Montaana. Wiki de Bytespring: http://www.bytespring.de

66

También podría gustarte