Download - Guia Teorica Elastix
-
1
Captulo 1
INSTALACIN DE ELASTIX
Es recomendable instalar la ultima versin estable de Elastix
disponible en la pagina del proyecto.
Para realizar la instalacin desde CD, debemos descargar el
archivo de imagen (con extensin iso), y grabarlo en un disco en
blanco.
Instalando desde CD (1)
Es importante grabar el iso usando software especializado para
este propsito.
muchas veces caemos en el error de descomprimir la imagen y
copiar la estructura de directorios resultantes en un disco, con lo
cual NO obtendremos un CD de arranque.
Una vez que tenemos un CD de instalacin creado, lo insertamos
en la unidad y procedemos a encender el equipo.
Es importante verificar que el computador est configurado para
arrancar desde CD.
Esto puede ser configurado en el BIOS.
El instalador de Elastix aparecer en nuestra pantalla.
Instalando desde CD (2)
-
2
Instalacin desde CD (3)
Para realizar una configuracion estandar basta con presionar ENTER
Advertencia: La instalacin estandar borrara completamente el
disco duro
Instalando desde CD (4)
Seleccionamos el idioma para la instalacin.
Instalando desde CD (5)
El instalador nos pide seleccionar el esquema del teclado
Instalando desde CD (6)
Seleccionamos el tipo de particionamiento (primera
opcin).
-
3
Instalando desde CD (7)
Confirmamos que se remuevan todas las particiones (S)
Instalando desde CD (9)
Configurar interfaces de red (S).
Instalando desde CD (10)
Seleccionar que se active al inicio y soporte para IPv4.
Instalando desde CD (11)
Seleccionar ya sea DHCP o configuracin manual.
-
4
Instalando desde CD (12)
Si se utiliza configuracin manual, ingresar la direccin y la
mscara.
Instalando desde CD (13)
Ingresar la direccin IP de la puerta de enlace y del servidor DNS.
Instalando desde CD (14)
Ingresar el nombre del host.
Instalando desde CD (15)
Seleccionamos el huso horario adecuado.
-
5
Instalando desde CD (16)
Ingresar la contrasea del usuario root
Instalando desde CD (17)
Esperar hasta que finalice la instalacin automtica de paquetes.
Instalando desde CD (18)
Ingresamos la contrasea para el usuario root de MySQL
(no confundir con usuario root de linux).
Instalando desde CD (19)
Ingresar nuevamente la contrasea de root de MySQL.
-
6
Instalando desde CD (20)
Ingresar la contrasea para el usuario admin del web GUI de Elastix.
Nota: Esta ser adems la contrasea para los siguientes servicios:
FreePBX, Vtiger, A2Billing y FOP. Aunque no se menciona esta
contrasea es adems la contrasea del AMI admin.
Instalando desde CD (21)
Ingresar nuevamente la contrasea admin de Elastix.
Instalando desde CD (22)
La instalacin ha sido completada, podremos ingresar a nuestro
sistema con usuario root y su contrasea ingresada durante la
instalacin.
RAID hace referencia a utilizar varios discos duros en arreglo,
principalmente para ofrecer redundancia de informacin.
Dependiendo el n mero de discos que se disponga y la forma en
la que se configure el arreglo, se pueden obtener diferentes niveles
de RAID.
El que se ver a continuacin es de nivel 1, en el que intervienen
dos discos duros y uno es espejo del otro.
Instalacin con Soft RAID (1)
-
7
Es preferible tratar de hacer arreglos RAID usando hardware, en
la medida de lo posible.
Si nuestro servidor no tiene una controladora de discos que
permita crear el arreglo podemos recurrir a hacerlo mediante el
sistema operativo, sacrificando algo de rendimiento en pro de la
redundancia.
Instalacin con soft RAID (2)
Esta tcnica es conocida como soft RAID.
Es importante recalcar que el RAID en hardware hace
espejos de
discos, a diferencia del RAID en software hace espejos
de particiones.
Instalacin con soft RAID (3)
El proceso empieza de manera idntica a una instalacin normal
hasta el momento de seleccionar el tipo de particionamiento
Ahora seleccionamos diseo personalizado
Instalacin con soft RAID (4)
Observaremos ambos discos, debemos crear tres (3)
particiones en cada uno.
Seleccione la opcin nuevo
-
8
Tamaos de Discos:
Instalacin con Soft Raid (5)
1era Particin: 100 MB para el boot.
2da Particin: El doble del tamao del RAM del sistema para swap ( en este ejemplo el RAM es
de 512 MB ).
3era Particin: Debe ser completada con el espacio disponible
Instalacin con soft RAID (6)
En cada particin debemos seleccionar "software RAID" como el "Tipo de sistema de archivos".
Recuerde seleccionar la correspondiente "Unidad admisible", en la imagen del ejemplo es "hda".
Imagen del proceso para la 2da particin swap
Instalacin con Soft RAID (7) Instalacin con soft RAID (8)
Imagen del proceso para la 3era particin (seleccionamos ocupar
todo el espacio disponible).
-
9
Instalacin con Soft RAID (9)
Al final tendremos 3 particiones en cada disco.
No se preocupe por el orden de cada particin se re-ordenarn
cuando configuremos el RAID.
Instalacin con soft RAID (10)
Para iniciar la particin en espejos debemos seleccionar la opcin
"RAID".
Aqu seleccionaremos las particiones que sern miembros del
RAID, el "Tipo de sistema de archivos" y el "Punto de montaje".
Punto de Montaje: particin boot = /boot, swap = no coloque
nada, particin "root" = use /.
Instalacin con Soft RAID (11)
Tipo de Sistemas de Archivos: Particin boot = seleccione
ext3 particin swap= seleccione swap, y seleccione ext3 para la
particion root
Niveles de RAID: Seleccione RAID I para todas las particiones
Miembros del RAID: Escoja el par de particiones que han sido
creadas en cada uno de los discos respectivamente
Instalacin con soft RAID (12)
Ejemplo del espejo en la particin boot
Nota: Es importante seleccionar las particiones correspondientes en la
seccion Miembros del RAID en este ejemplo hda2 y sda2 son las
particiones con 100 MB para boot.
-
10
Instalacin con soft RAID (13)
Las configuraciones de RAID aparecern sobre las particiones
previamente creadas.
Cuando finalice seleccione "Aceptar" para continuar con la
instalacin normalmente.
Captulo 2
VIRTUALIZACION
Virtualizacin
Una maquina virtual simula un sistema fsico con
caractersticas de hardware especificas.
En un solo servidor se pueden implementar varias m quinas
virtuales para cumplir varios servicios.
Esto nos permite la reutilizacin de hardware existente, lo cual
implica ahorro de recursos.
Nos permite adems reduccin de costos y una administracin
global centralizada y simple.
Virtualizacin (1)
-
11
Virtualizacin (2)
En un solo espacio podemos tener varios servidores
virtuales sin incrementar el consumo de energia.
Eso ha hecho muy populares los servidores del hostep
PBX, debido a la posibilidad de virtualizar Elastix en
lugar de disponer de un servidor por cliente.
Permite crear un ambiente de pruebas, sin afectar la
operacion real, lo cual es util previo a una actualizacion
y nos sera util en este curso para probar el potencial de
Elastix.
Entre las alternativas que revisaremos estn:
VMware
VirtualBox
XEN
Virtualizacin (3)
VMware fue fundado en 1998 y es una de las soluciones de
virtualizacion con mayor tiempo en el mercado.
Desarrollaron un rango amplio de productos, de lo cuales el
mas notable es hypervisors un VMM (virtual machine
manager)
Proporciona la mayor parte del software de virtualizaci n
disponible para ordenadores compatibles X86.
VMware (1)
VMware Player est creada para usuarios sin licencia para usar
Workstation.
Inicialmente no permita crear mquinas virtuales, pero esta limitacin
fue removida en la versin 3.0.1. Est disponible para Windows y Linux.
VMware Server es distribuida gratuitamente para uso no comercial y es
la alternativa para servidores. Se recomienda para pruebas y no para
servidores en produccin
Pgina web: http://www.vmware.com/
VMware (2)
-
12
VirtualBox (1)
Es un Software de virtualizacin para arquitecturas x86/amd64
desarrollado actualmente por Oracle Corporation .
Funciona bajo concepto de sistemas tipo Guest instalados en un
sistema operativo host, cada uno con su propio ambiente virtual.
Sistemas operativos soportados en modo de anfitrion: GNU linux,
Mac OS X, OS/2, Microsotf Windows y Solaris/Open Solaris.
Sistemas operativos Guest: freeBSD, GNU/linux, OpenBSD, OS/2,
Warp, Windows, Solaris, MS-DOS entre otros.
Desde la versin 4 se distribuye bajo la licencia GNU GPLv2.
Un Extension Pack que permite la utilizacin de USB se distribuye
bajo una licencia de uso personal y de evaluacin (PUEL).
Los discos duros son emulados en tres formatos de imagen: Virtual
Disk Image (VDI), VMware virtual machine disk format (VMDK) y
Microsoft Virtual PC VHD.
Esto quiere decir que discos que han sido creados en VMware of
Virtual PC pueden ser usados.
VirtualBox (2)
Virtual Box (3)
Una imagen ISO puede ser usada directamente sin necesidad de
quemarla en CD
No es reconmendable usarlo servidores en produccion pero para
pruebas es una excelente herramienta
Usaremos VirtualBox como parte de este curso para demostrar la
funcionalidades de Elastix
Pagina web: http://virtualbox.org/
Es necesario configurar el tipo de red que utilizar Elastix.
Existen 6 tipos de redes :
No conectado: simula una computadora sin cable de red.
NAT: Funciona slo para acceder a redes externas pero no se
puede acceder a la mquina remotamente.
Adaptador puente: Simula redes. Cuando est habilitado,
VirtualBox conecta uno de los dispositivos de red e intercambia
paquetes directamente.
Redes en VirtualBox (1)
-
13
Red interna: Sirve para simular redes con otras m quinas virtuales
Adaptador solo-anfitrin: La maquina virtual es vista como otra
maquina en la red.
Controlador genrico: usado para compartir una interfaz de red
genrica. Un ejemplo es la interconexin entre dos maquinas virtuales
ubicados en diferentes hosts.
Con Elastix podemos usar: Adaptador puente y Adaptador solo
anfitrion. Para este curso utilizaremos Adaptador puente.
Redes en VirtualBox (2)
Es la alternativa m s eficiente de virtualizacin
Solucin recomendada para servidores por su eficiencia
Es lo que utilizan la mayor a de proveedores de hosting de
VPS con Elastix
Existe 2 tipos de virtualizacin: completa y para-virtual
Permite hacer migraciones de m quinas virtuales en caliente
Es software libre: http://www.xen.org/
XEN
XEN se comunica directamente con el hardware a traves de un
componente llamado Hipervisor.
Cuando XEN arranca levanta automticamente un dominio
conocido como dom0
Dom0 es un dominio privilegiado donde se administran otros
dominios.
Los demas dominios son conocidos como domU
Arquitectura de XEN (1)
Arquitectura de Xen (2)
-
14
Existen varias formas en las que se puede instalar Elastix con XEN
Se necesita un servidor XEN sobre el cual se instalar Elastix.
CentOS es muy buena opcin para este servidor
Se puede instalar con virtualizacin completa o paravirtual
Se puede instalar sobre una mquina virtual de CentOS 5.x, esto
es muy util si tenemos un servidor VPS remoto con centOS
cargado.
Instalar Elastix en Xen
Captulo 3 LINUX PARA
ADMINISTRADORES DE ELASTIX
GNU/Linux es un sistema operativo de software libre.
Asterisk y Elastix funcionan sobre Linux.
Para administrar una central Elastix no es necesario ser
experto en Linux pero es muy til conocer del tema.
Introduccin
Es la interfaz de texto entre el usuario y el sistema operativo.
Se puede acceder localmente.
Se puede acceder remotamente a trav s del protocolo SSH
(Secure Shell).
El SSH es un protocolo encriptado.
Lnea de Comandos en Linux
-
15
Lnea de Comandos en Linux
Ejemplo terminal Linux de Elastix:
Comandos Basicos
Comandos Bsicos Sistema de Archivos
Estructura de rbol de directorios
Todos empiezan en la raz /
Directorios importantes en Elastix:
o /etc/asterisk: Guarda la configuracion de asterisk.
o /var/www/html/: Se encuentra Elastix.
o /var/lib/msqly: Las bases de datos de msqly
o /var/log: Los archivos de log
-
16
Todo archivo pertenece a un usuario y a un grupo
Los permisos son 3 niveles: usuario, grupo, otros
Los permisos pueden ser de escritura(r), lectura(w) y
ejecucion(x).
Ejemplo: rwx-rw-rw juan elastix archivo.
Permisos
o En este caso el archivo pertenece a juan y al grupo elastix.
Los permisos para juan son de rwx, grupo elastix rw y otros
rw.
Permisos: Notacin Octogonal
Los permisos se pueden representar con n meros
r=4, w=2 y x=1
Ejemplos:
o 766=rwx-rw-rw
o 600= rw rwx
o 644=rw-r--r--
RPM (1)
Forma tradicional de instalar paquetes
Se usa para instalar y desinstalar paquetes:
o Instalar: rpm -ivh paquete.rpm
o Desinstalar: rpm -e paquete
Consultas sobre paquetes instalados
Todos paquetes instalados: rpm -qa
Todos los paquetes que contengan asterisk: rpm -qa |
grep asterisk
Rpm tiene problemas de dependencias
RPM (2)
-
17
Maneja la instalacin de paquetes desde repositorios
Los repositorios pueden estar en Internet o en la lan
No existe problemas de dependencias
Ejemplos de uso:
YUM
o Instala paquete: yum install paquete
o Borra paquete: yum remove paquete
o Actualiza paquete: yum update paquete
o Actualiza todo el sistema operativo: yum update
Laboratorio 1
INSTALANDO ELASTIX
Laboratorio 2 LINUX PARA
ADMINISTRADORES DE ELASTIX
Captulo 4 ELASTIX:
GENERALIDADES
-
18
Una solucin de servidor de comunicaciones unificadas:
telefona, fax, IM, email, colaboracin.
Es Software Libre.
Se distribuye como una imagen ISO para quemar en CD.
Incluye instalador.
Qu es Elastix? (1)
Basada en Linux (CentOS), Asterisk, FreePBX, Hylafax, Postfix
y Openfire.
Adems de otros paquetes de cdigo abierto.
Rpido crecimiento, 1000.000 descargas hasta Noviembre de
2010.
Reconocimiento con el premio INTERNET TELEPHONY product of
the year Award aos 2011 y 2012.
Qu es Elastix? (2)
Integracin de diferentes sistemas de comunicaciones.
Por ejemplo, el telfono es contestado por Asterisk (telefona) y
en caso de resultar un documento de fax le pasa el control a
Hylafax (FAX) quien recibe el documento y lo enva por email a
travs de Postfix a su destinatario.
Mejora la productividad: ahorro de tiempo, papel, mejor acceso
a la informacin n compartida.
Servidor de Comunicaciones Unificadas?
Esquema General
-
19
Lanzado en Marzo de 2006 por la compa a PaloSanto Solutions de Ecuador.
Inicialmente no era una distro sino una interfaz de reportacion para llamadas de Asterisk.
En Diciembre de 2006 se lanza la primera version en formato distro. Gan popularidad por su usabilidad.
En 2007 y 2008 el proyecto estuvo nominado a los premios CCA de SourceForge.
Actualmente es una de las distros basadas en Asterisk lider del mercado.
Breve historia del Proyecto
Caractersticas de Elastix
Algunas de las caractersticas y funcionalidades de
Elastix son:
Voicemail
Fax-a-email
Soporte para soft phones
Consola de operador
IVR (recepcionista digital)
Interfaz de configuracin Web
Sala de conferencias
Music-on-hold con soporte mp3s
Campaas de tele-mercadeo
Grabacin de llamadas
Parqueo de llamadas
Call-pickup
Colas de atencin
Limitacin de tiempo de llamada
Least Cost Routing
Roaming de extensiones
Interconexin entre PBXs
Identificacin del llamante
CRM incluido Reportacin avanzada
Personalizacin y desarrollo
Para un mayor detalle de todas las funcionalidades consulte Elastix.org
Elastix es software libre licenciado bajo GPL versin 2:
http://elx.ec/gpl2
Esto quiere decir que se puede copiar, distribuir y modificar el
software libremente.
No existen versiones cerradas ni doble licenciamiento (como es el
caso de Asterisk o MySQL).
Por si todava existe la duda: Elastix puede ser descargado sin
costo alguno.
Licenciamiento de Elastix Interfaz Web de administracin
-
20
Interfaz Web de administracin (2)
Men System
Dashboard
Dashboard Applet Admin
Network
Network Parameters
DHCP Server
DHCP Client List
Assign IP Address to Host
Users
Groups
Group Permissions
Shutdown
Hardware Detector
Updates
Repositories
Packages
Backup/Restore
Preferences
Language
Date/Time
Themes
Currency
Men PBX
PBX
Configuration
Operator Panel
Voicemail
Monitoring
Endpoint
Configurator
Conference Batch
of Extensions
Interfaz Web de administracin (3)
Tools
Asterisk-Cli
Asterisk File Editor
Text to Wav
Festival
Recordings Flash
Operator Panel VoIP
Provider
Interfaz Web de administracin (4)
Men Email
Domains
Accounts
Relay
Webmail
Antispam
Remote
SMTP
Email list
Email stats
Vacations
Menu Agenda
Calendar
Address
Book
Menu IM
Openfire
Interfaz Web de administracin (5)
Virtual Fax List Fax Clients
New Virtual Fax Fax Viewer
Send Fax Email Template
Fax Master
Men Fax
-
21
Interfaz Web de administracin (6)
CDR Report Channels
Usage
Billing
Summary
Rates
Billing Report
Destination Distribution
Billing Setup Asterisk
Logs Graphic Report
Menu Reports
Interfaz Web de administracin (7)
Men Desplegable
Extras Addons
Settings
vTigerCRM
Calling Cards
Admin
Agent
Customer
Downloads Softphones
Fax Utilities Instant
Messaging
Firewall
Firewall Rules
Define Ports
Audit
Weak Keys
Advanced Settings
My Extension Security
Interfax Web de
administracin (8)
Modulo Add-ons: funcionalidad adicional disponible en un solo clic Sitio Web oficial del proyecto.
Mantenido por PaloSanto Solutions y la comunidad Elastix.
Aqu podemos encontrar:
Foros
Wiki (Documentacin)
Chat en vivo IRC
Suscripcin a listas de correo
Links de descargas
Informacin Comercial y Proyectos
Eventos
www.elastix.org
-
22
Capitulo 5
FUNCIONAMIENTO
INTERNO DE FreePBX
Software de configuracion de Asterisk.
Integrado en la distribucin Elastix.
Genera los archivos de configuracion de Asterisk:
o Incluye el plan de marcado
o Basados en la configuracion ingresada por el usuario.
Fundamentos de FreePBX (1)
Fundamentos de F reePBX (2)
Dos pasos para la Configuracion:
Guarda la informacion en una base de datos de configuracion
En el caso de Elastix el motor de base de datos es MySQL
Convierte la informacion de la base de datos en archivos de
configuracion a traves de parsing
Fundamentos de FreePBX (3)
-
23
Organizacin de archivos (1) Organizacin de archivos (2)
Archivo de texto plano, ledo por FreePBX.
Informacin general de configuracin.
Editable en caso de requerirse.
Informacin de acceso a la base de datos.
Tipo de autenticacin para usuarios Web.
Documentacin para manejo de opciones y directivas de configuracin.
Configuracin de FreePBX
amportal.conf:
Escrito en PHP
Genera el plan de marcado a partir de la informacin almacenada en la base de datos.
Programa ejecutable desde la linea de comandos.
retrieve.conf (1)
-
24
retrieve.conf (2)
Se ejecuta a travs de un script PHP, cada vez que se da clic en la barra roja de FreePBX (Apply Configuration Changes Here ).
Esta operacion sera muy frecuente en la mayoria de las configuraciones que realicemos en el menu de FreePBX.
Script AGI escrito en PHP
Se ejecuta desde el plan de marcado cuando se realiza una llamada.
Revisa el estado de la extensin y otras configuraciones de la misma (call forward, call waiting, do not disturb).
Toma acciones a partir del estado y la configuracion de la extensin.
dialparties.agi (1)
dialparties.agi consulta la base de datos de Asterisk ubicada en /var/lib/asterisk/astdb/
Se puede ejecutar desde el CLI (Command Line Interpreter) de asterisk
dialparties.agi est ubicado en /var/lib/asterisk/agi-bin/ dialparties.agi
dialparties.agi (2)
Mdulo de FreePBX: Estructura
-
25
Para poder embeber FreePBX en Elastix se desarrollo un cdigo WRAPPER
Este cdigo se acopla los mdulos de FreePBX como un modulo Elastix.
Este desarrollo consiste en:
Mdulo pbxadmin de Elastix
Archivo /var/www/html/config.php
Cmo se embebe en
Elastix? (1)
Encargado de obtener el contenido de mdulos de freePBX por
medio de inclusin de archivos de PHP.
El index.php de ste mdulo (Elastix) es muy parecido al index de freePBX (llamado config.php), pero quitando todos los estilos propios
de freePBX.
Contiene un archivo javascript (libfreepbx.javascripts.js) que es una copia mnima del que esta ubicado dentro del cdigo de freePBX
para mantener las acciones que se dan en la GUI.
Cmo se embebe en Elastix? (2)
Mdulo pbxadmin de Elastix
Cmo se embebe en Elastix? (3)
Archivo /var/www/html/config.php
Este archivo recibe las peticiones hechas desde mdulos
de freePBX.
Lo que hace es redireccionar las peticiones al mdulo
pbxadmin de Elastix e incluir el index.php del framework
Elastix.
Grfico ilustrativo de FreePBX embebido
WRAPPER Obtiene el contenido de mdulos de FreePBX pero sin estilos
4 1
Mdulo pbxadmin de Elastix
Redirecciona a
Mdulos de FreePBX Hacen las peticiones al config.php ubicado en la raz
2
3
Redirecciona las peticiones a
Index.php Framework Elastix
Conf: php
-
26
Captulo 6
CONFIGURACIN BSICA DE ELASTIX
Ingreso a Elastix va Web
Abrir en un navegador web: https://ip-servidor (Direccin IP de Elastix).
La primera vez se debe aceptar el certificado digital. De ser necesario establezca un excepcin en su navegador web.
Ingreso a Elastix va Web
Ingresar con los siguientes datos Usuario: admin
Password: La clave de admin registrada durante la
instalacin.
Elastix utiliza DHCP por defecto En la mayor a de casos se debe configurar: o IP esttico
o Puerta de Enlace
o DNS
Para configurar se debe acceder al men Sistema Red
Los dispositivos de red se reconocen como ethernet1, ethernet2, etc.
Configuracin de Red
-
27
se pueden crear extensiones: sip, iax, zap, dahdi y custom
SIP: protocolo estndar para terminales de voz/ip. Soportado por la mayor a de telfonos de ip
IAX: Protocolo propio de Asterisk y no muy difundido. Se comporta mejor que sip en ambientes nat
Zap: Usada para extensiones anlogas o tradicionales
dahdi: Usada para extensiones anlogas o tradicionales
Custom: Se puede utilizar para opciones avanzadas. Por ejemplo mapear una l nea externa a una extensin.
Creando una extensin
Para crear una extension ingrese a:
PBX PBX Configuration extensiones
Seleccione: Generic SIP Device
Como mnimo debe ingresar: n mero de extensin, display name y el secret
El mode DTMF (dtmfmode) de la extensin y telefono debe ser el mismo.
Ejemplo para crear extensin SIP
Ejemplo para crear extensin SIP
El dtmfmode predeterminado es: rfc2833
Otras opciones para el modo rfc son:
o info
o inband
o auto
Ejemplo: Configuracin de Softphone
La configuracion de un telfono IP de software debe incluir por lo menos: el usuario (normalmente la extensin), el Password
(secret) y la direccin IP del servidor Elastix.
En la grafica: configuracin de cuenta en el softphone Zoiper
-
28
Configuraciones importantes.
Opciones de marcado: Se definen opciones como transferencia de llamada y grabacin de llamadas
Company Directory: Para acceder al directorio telefnico desde un ivr con *411 o #.
Security Settings: No permite llamadas sip annimas
Actualizaciones: Bloqueada por defecto.
Configuraciones generales
Agrupan a varias extensiones conocidas como agentes
Agentes estticos o dinmicos
Existen varias Estrategias de marcado:
Sonar todos: Timbra a todos los miembros de la cola
Agente con ltima llamada ms antigua: Timbra al agente que fue llamado menos recientemente
Agente con menos llamadas: Timbra al agente que menos llamadas a contestado
Colas (1)
Colas (2)
Aleatorio: Timbra aleatoriamente
Con memoria: Timbra a cada agente de manera secuencial
Linear: Timbra a los agentes en el orden especificado
Wrandom: Timbra las extensiones de los agentes e manera aleatoria
pero utilizando una penalidad como medida de probabilidad.
Estrategias de marcado:
Queue number: El numero por el que se podra llamar a la extension.
Queue name: El nombre de la cola que usaremos para identificar en la interfase administrativa.
Queue password: Clave que deber ingresar un agente dinamico.
CID name prefix: Como un agente puede logonearse en varias colas al mismo tiempo, es util colocarle un prefijo al Caller ID para que
cuando el agente vea la llamada entrante en el telefono sepa a que
cola pertenece la llamada.
Static Agents: Se lista las extensiones a agentes y su prioridad en la cola.
Colas (3): Configuracin Bsica
-
29
Max callers: El numero mximo de personas que esperan en una cola si todos los agentes estan ocupados.
Join Empty: Se puede permitir que la cola funcione sin agentes. No se recomienda.
Leave when empty: Se pone yes si se quiere sacar a los agentes
Ring strategy: Existen 6 tipos de estrategias: ringall, leastrecent, fewestcalls, random, rrmemory, linear, wrandom.
Colas (4): Configuracin Bsica
Wrap-up-time: Tiempo entre llamadas exitosas por agente
Call Recording: Opci n para grabar llamadas
Fail Over Destination: Destino a donde van las llamadas entrantes no contestadas
Colas (5): Configuracin Bsica
Un IVR funciona como una recepcionista digital
Es necesario grabar o subir sonidos al servidor antes de configurar el IVR
Se pueden tener tantos IVR como sean necesarios
Para que sean accesibles desde las troncales se deben configurar rutas entrantes
IVR (1)
IVR (2): Grabar o Subir Sonido
Para grabar o subir un sonido se debe ingresar a PBX PBX Configuration Grabaciones del Sistema
-
30
IVR (3): Grabar o Subir Sonido
Para subir un audio haga clic en Subir un Archivo, navegue hasta ubicarlo, seleccinelo y haga clic en Enviar.
Contine al paso 2, asigne un nombre a su grabacin y haga clic en Guardar.
Archivos WAV deben estar codificados en PCM, 16 bits y a 8000Hz.
IVR (4): Grabar o Subir Sonido
Si desea grabar desde un telfono ingrese el numero de extensin y haga clic en ir.
Marque *77 para grabar el mensaje (desde la extensin que ingres )
Marque *99 para escuchar la grabacin (desde la extensin que ingres )
Una vez grabado el mensaje asignamos un nombre y hacemos clic en Guardar
Ir a PBX PBX Configuration IVR clic en A adir IVR
Configurar las siguientes variables:
Cambiar nombre: Asignamos un nombre al IVR
Tiempo de espera: Tiempo de espera, en segundos, antes de ir al destino por defecto.
Habilitar marcacin directa: Permitir marcar directamente a extensiones
Anuncio: Seleccionamos un anuncio previamente grabado o cargado en el sistema.
IVR (5): Crear IVR IVR (6): Crear IVR
Se agregan los n meros de opcion y sus destinos.
La opcion t sirve para timeout
La opcion i para opciones equivocadas
Una vez concluido hacemos clic en Guardar
-
31
IVR (7): Crear IVR
La forma mas sencilla de hacer un IVR es con nico Audio
que al ser reproducido indique todas las opciones.
Cuando tenemos varios Audios, tendremos que hacer un IVR
para cada Audio.
Una vez que tenemos cada IVR creado, los relacionamos en
orden colocando t como la opcin que enlazar el actual IVR
al siguiente (siendo t la opcin de timeout).
Es necesario incluir todas las opciones de marcado
disponibles en todos los IVRs creados para no tener errores.
Una sala de conferencia permite hablar a 3 o m s personas simultneamente.
Se pueden hacer conferencias con extensiones locales y numeros remotos.
Existen 2 tipos de salas de conferencias:
o Permanentes y temporales.
o De ser necesario se pueden proteger con clave.
Salas de conferencia (1)
Salas de conferencia (2): temporales
Se crean por un tiempo definido y desaparecen
Para crear se debe ingresar a PBX Conference
Ejemplo de configuracin:
Salas de conferencia (3): Estticas
Se crean para uso permanente
Ejemplo de Configuracion: Ir a PBX PBX Configuration Conferencias
N mero de conferencia: la extensin a la que marcaremos para acceder.
Nombre de la conferencia: Un nombre referencial
PIN de usuario: Clave para acceso a la conferencia (opcional)
PIN de administracin: Necesaria nicamente si se selecciona la opcion esperar al administrador.
-
32
Salas de conferencia (4): Estticas
Opciones de la conferencia:
Sirve para colocar una llamada en hold y retomarla desde otra extensin.
Se transfiere la llamada a una extensin X y se recupera en un n mero asignado dentro del lote:
o Ejemplo: En la llamada presione: ## 70 # ; escuchar el numero de
estacionamiento usualmente 71, 72, 73.
o Luego usted puede recuperar la llamada desde una extensin diferente
marcando el numero que escucho (ejemplo 71).
Para configurar se debe ir a PBX PBX Configuration Estacionamiento.
Parking (estacionamiento)
Se puede subir msica en formatos WAV o mp3 al servidor
Se pueden crear listas de msica para asignar en diferentes lugares de nuestra central. Ej. Callcenter, colas, etc..
Para configurar se debe ingresar a PBX Configuracion Msica en Espera.
Es recomendable usar .WAV estar codificado en PCM, 16 bits y a 8000Hz. Mp3 podr consumir mas recursos.
Msica en espera
Elastix 2.2 permite marcar menes comunes para fcil.
Esta funcionalidad est localizada en la esquina derecha de cada seccin con un icono (estrella).
Para aadir un bookmark basta con hacer clic en Iy la seccin se mostrar en el men de la columna izquierda.
Bookmark de menes comunes
-
33
Es una aplicacin web hecha en flash que permite monitorizar la central
Cumple las funciones de un telfono de recepcionista
Se pueden transferir llamadas, crear conferencias, etc.
La clave de administracin es la que configuramos al instalar Elastix en la clave del admin de la interfaz web.
Flash Operator Panel es un desarrollo de terceros. Elastix introdujo desde la versin 2.0 su propio panel de operador denominado: Elastix
Operator Panel.
Flash Operator Panel (1) Flash Operator Panel (2)
Pantalla del FOP:
Elastix Operator Panel
Captulo 7
CONFIGURACIN DE TELFONO IP
-
34
Qu es un telfono IP?
Un telfono IP es un dispositivo que permite realizar una comunicacin de voz utilizando la red IP, ya sea mediante red de
rea local o a travs de Internet.
La tecnologa que hace esto posible esto se conoce como VoIP (Voz sobre IP).
El telfono IP convierte y comprime la se al de la voz en paquetes de datos que ser n enviados en la red IP, en lugar de utilizar una
conexin de red telefnica.
Configuracin de telfono IP (1)
Para configurar un telfono IP debemos tener en cuenta tres aspectos:
1. Configuracion de red
2. Registro del dispositivo con el servidor Elastix
3. El Tel fono IP apropiado
Para ilustrar de mejor manera los puntos mencionados, utilizaremos un telfono Yealink SIP-T22P.
Configuracin de telfono IP (2)
Configuracin de red
o La configuracin de red puede realizarse por DHCP (lo ms
comn) o se puede asignar una direccin IP esttica.
DHCP
o Mediante esta opcin, el telfono obtendr una direccin IP
desde un servidor DHCP ubicado dentro de la red local.
o Elastix puede ser nuestro servidor DHCP, si no se cuenta con
uno en la red local.
IP esttica
Esta opcin es til si deseamos contar contar con un registro exacto de las direcciones IP de cada telfono.
Es tambin til si deseamos colocar los dispositivos IP en segmentos especficos de nuestra red.
En esta opcin, adems de la IP se necesita ingresar la mascara de red y la puerta de enlace en el caso de que su telfono se
encuentre en otro segmento de red.
Configuracin de telfono IP (3)
-
35
La configuracion de Tel fonos Yealink SIP-T22P o cualquier otro modelo de Yealink se puede realizar ingresando a un web browser
colocando la direccin IP del telefono.
El usuario y contrasea por defecto en todos los modelos Yealink es: admin.
Nota: tambin es posible configurar la extensin del telfono desde el
Endpoint Configurator de Elastix (PBX Endpoint Configurator) , esto lo veremos mas adelante.
Configuracin de telfono IP (4)
Para configurar la extension debe ir a Cuenta.
El telfono Yealink SIP-T22P puede ser configurado con 3 cuentas.
La informacin bsica necesaria para la configuracion es:
Lnea Activa: Habilita la cuenta
Nombre de registro: Extensin de usuario
Nombre de usuario: Extensin de usuario
Contrasea: Secret - La contrasea de la extensin
Servidor SIP: Direccin IP del servidor Elastix
Servidor de salida Proxy: IP del servidor Elastix
Configuracin de telfono IP (5)
Configuracin de telfono IP (6)
Interfaz de administracin web de Yealink El aprovisionamiento permite la configuracion en lote de telfonos IP.
Este proceso se realiza desde la interfaz web de Elastix y su principal herramienta es el modulo de configuracion de Endpoints
(Endpoint Configurator).
El proceso adecuado es:
o Creacin de extensiones
o Habilitar los telfonos IP para el aprovisionamiento
o Deteccin de los dispositivos en la red
o Asignacin de extensiones desde la interfaz.
Aprovisionamiento
-
36
El Endpoint Configurator realiza un scan de la red del servidor Elastix.
En el scan se obtiene informacin de las direcciones IP y MAC de los dispositivos conectados.
Al obtener la informacin de todos los dispositivos este trata de identificar los equipos que pudieran ser telfonos IP.
Luego trata de recabar informacin del fabricante y modelo para elegir cuales se pueden configurar.
Aprovisionamiento:
Endpoint Configurator (1)
Actualmente Elastix soporta las siguientes marcas:
Aastra, Atcom, AudioCodes, Cisco, Grandstream, Linksys, Polycom, Siemens, Snom, Yealink y Zultys.
Se prev soportar en versiones telfonos Escene, Voptech y otros.
Cuando ya se tiene el grupo de telfonos a configurar se presenta la informacin de los mismos en la interfaz Web de Elastix.
Se mostrar algo similar a la diapositiva siguiente.
Aprovisionamiento:
Endpoint Configurator (2)
Aprovisionamiento:
Endpoint Configurator (3)
Para la mayor a de telfonos, el Endpoint Configurator generar un archivo de configuracion que se graba en el directorio /tftboot
del servidor Elastix.
Este archivo lleva el nombre mac_address_del_telefono.cfg (ej: 0015651ab08f.cfg).
En este archivo se guarda la configuracion de los telfonos para hacer el aprovisionamiento va tftp desde Elastix.
Aprovisionamiento:
Endpoint Configurator (4)
-
37
En la actualidad la mayor a de las marcas de tel fonos IP permiten configuracion para aprovisionamiento.
Hay algunas marcas (e.g. Atcom) en que aprovisionamiento no requiere de configuracion previa.
Para habilitar tel fonos Yealink, debemos configurar los siguientes par metros desde la interfaz administrativa del telfono:
o Ir a: Actualizar Advanzado
o Configurar URL: direccin IP del Servidor Elastix
o Check New Config: Encendido.
Aprovisionamiento: Habilitacin de Telfonos IP (1)
Aprovisionamiento:
Habilitacin de Telfonos IP (2)
1. En la interfaz web de Elastix ir a PBX.
2. Luego Endpoint Configurator .
3. Hacer clic en: Descubrir Endpoints en esta Network.
4. En la columna Configurar, marcar la casilla correspondiente.
5. En la columna Modelo, elegir el modelo correspondiente.
Aprovisionamiento: Asignacin de extensiones (1)
6. En la columna Extensin a asignar, elegir la extensin que queremos asignar al telfono.
(ya debe haber sido creada previamente).
7. Hacer clic en Configurar
Reiniciamos el telfono (accedemos a su interfaz web haciendo clic en la IP correspondiente). Una vez dentro: Upgrade Basic Reboot).
Nota: Algunos modelos se reinician automticamente.
Aprovisionamiento: Asignacin de extensiones (2)
-
38
Aprovisionamiento:
Asignacin de extensiones (3)
Qu es un Softphone?
Es un software que hace una simulacin de telfono IP por computadora.
Es decir, permite usar la computadora para hacer llamadas a otros softphones, telfonos IP o a otros telfonos
convencionales analgicos.
X-Lite Counterpath Zoiper Softphone
Configurando un Softphone (1)
Presionamos el botn con la figura de la herramienta y accedemos al men de opciones.
All veremos una pantalla con opciones para configurar nuevas extensiones SIP y tambin IAX. Zoiper cuenta con soporte
para ambos protocolos.
En nuestro ejemplo configuraremos una extensin SIP. Usuario: 5678 Contrasea: 5678.
Configurando un Softphone (2)
-
39
La informacin requerida es:
Domain: La IP o nombre de dominio del servidor Elastix.
Username: 5678
Password: 5678
Caller ID Name: El nombre que aparecer en los telefonos que reciban nuestras llamadas.
Despues de llenar la informacin hacemos clic en OK.
Una vez que volvemos a la pantalla de inicio de Zoiper hacemos clic en register.
Configurando un Softphone (3) Configurando un Softphone
(4)
Si el Zoiper se registra correctamente veremos que junto al nombre
de nuestra cuenta Test aparecer la palabra Registered.
Laboratorio 3 CONFIGURACIN BSICA
DE ELASTIX
Captulo 8
CONFIGURACIN DE
HARDWARE
-
40
Tipos de tarjetera
Esta tarjetera est disponible tanto para interfaces telefnicas analgicas como digitales.
Dentro de cada una de estas categoras existen las siguientes sub-categoras:
Analog: FXO FXS
Digital: E1/T1/J1 BRI
EHCP (ELASTIX HARDWARE CERTIFICATION PROGRAM)
El Equipo de Desarrollo Elastix trabaja con varios fabricantes para incluir los controladores de su hardware.
Adems Elastix cuenta con un programa que pone a prueba toda la funcionalidad para certificar la interoperabilidad con el software.
Este programa es conocido como Elastix Hardware Certification Program o EHCP por sus siglas en ingls.
Hay muchos modelos y fabricantes de tarjetas compatibles e incluidos en la distro.
Fabricantes soportados
Elastix ha probado el soporte para muchos modelos y fabricantes de tarjeter a. Los siguientes son los modelos
soportados oficialmente a la fecha:
La lista es actualizada constantemente enhttp://elx.ec/ehcp
Hardware modular
Existen fabricantes que disean su hardware de manera modular, de tal forma que pueda ser expandible.
ranuras para mdulos
Conexin Fuente de alimentacin
Puertos Mdulo FXO
(rojo)
Mdulo FXS (verde)
Sangoma TMD Card Model A20101
-
41
Instalando una tarjeta de telefona
Esto no involucra ninguna tarea complicada, solo las precauciones obvias al instalar tarjetas electr nicas en un
computador.
Luego de encender el equipo podemos ir a consola y ejecutar el comando lspci para ver el hardware enlistado.
Nota: En caso de instalar hardware FXS es muy comun que se requiera conectar un cable de poder a la tarjeta pues
hay que recordar que las interfaces FXS deben proveer potencia el ctrica a los dispositivos que se conecten a ella.
Una vez que la tarjeta ha sido instalada es hora de detectarla.
En versiones muy antiguas de Elastix esta tarea se hace a manualmente ejecutando un comando desde la consola del equipo.
Actualmente se cuenta con una interfaz Web que detecta el hardware automticamente y nos muestra grficamente el hardware
detectado.
Esta opcion podr encontrarse en el Men System Hardware Detector
Deteccin de hardware (1)
Deteccin de hardware (2)
Para detectar una tarjeta hacemos clic en Avanzado y seleccionamos la opcion Reemplazar el archivo chan_dahdi.conf.
Despus debemos dar clic en Detect New Hardware y despus de algunos segundos, el proceso estar finalizado.
Deteccin de hardware (3)
Para este modelo hemos seleccionado una tarjeta Sangoma modelo A102. Este hardware utiliza Wanpipe el cual usa sus
propios drivers para comunicarse con Asterisk.
Para detectar la tarjeta debemos dar clic en Avanzado y seleccionar:
Reemplazar el archivo chan_dahdi.conf y Deteccin de Hardware Sangoma.
Despus de esto podemos dar clic en Detectar Nuevo Hardware.
-
42
Para la deteccin de tarjetas que usan Dahdi simplemente se debe seleccionar la opcion Reemplazar el archivo chan_dahdi.conf y despus clic en Detectar Nuevo Hardware.
Es importante verificar que la tarjeta esta dentro de la lista de hardware certificado de Elastix, ECHP.
El reemplazo de chan_dahdi.conf permite al sistema detectar la tarjeta de forma permanente.
Deteccin de hardware (4)
Este accion sobre escribe los siguientes archivos:
/etc/asterisk/chan_dahdi.conf /etc/dahdi/system.conf
/asterisk/dahdi-channels.conf
Si ya se tiene una tarjeta instalada y deseamos detectar una
nueva tarjeta, es recomendable realizar un respaldo de estos
archivos para permitir incluir estas configuraciones previas en los
nuevos archivos.
Deteccin de hardware (5)
La herramienta de deteccin de hardware basada en Web que viene con Elastix nos permite detectar el hardware de manera sencilla.
La herramienta puede configurar exitosamente el hardware digital en muchos casos, sin embargo hay que tener en cuenta que la herramienta realiza su trabajo suponiendo muchos par metros que pueden diferir de la realidad.
Se puede cambiar estos par metros usando la interfaz web o mediante consola. A continuacion explicaremos como realizar estas configuraciones por consola.
Configuracin Span
Configuracin Span:
Bajo Nivel (1)
Un span es un grupo de canales digitales.
El span se puede configurar en el archivo /etc/dadhi/system.conf.
Usualmente un span representa un puerto digital de la tarjeta.
Por ejemplo, si la tarjeta contiene 4 puertos E1 entonces usualmente deber amos definir 4 spans, uno por cada puerto.
Un span define en una sola l nea, la cual tiene el siguiente formato:
-
43
Configuracin Span:
Bajo Nivel (2)
Spannum
Es un identificador numrico nico para etiquetar el span. Se debe empezar con el nmero 1 e ir incrementando este
identificador secuencialmente de uno en uno.
Timing
Es un dgito que define la forma en la cual se manejar la sincronizacin del span.
LBO (Line Build Out)
Es un dgito que representa la longitud del cable entre la tarjeta y el equipo (modem) provisto por la compaa telefnica.
Framing
Como recordaremos, los protocolos de comunicacin digital T-Carrier y E-Carrier dividen la informacin en frames, donde cada
frame transporta un nmero determinado de timeslots.
Estos frames pueden ser de diferentes formatos y eso es lo que se define aqu.
Configuracin Span:
Bajo Nivel (2)
Configuracin Span:
Bajo Nivel (4)
Coding Es necesario codificar la informacin enviada para
hacerla menos susceptible
a errores. Esto es as porque la propia data se suele usar como fuente de sincronizacin (o reloj).
Si se transmiten tramas largas de ceros (largos segmentos sin variacin de voltaje) se puede perder
dicha sincronizacin.
Configuracin Span:
Bajo Nivel (5)
Despus de realizar los cambios en el archivo system.conf,
es necesario reiniciar DAHDI. (Asterisk CLI: service dahdi
restart) }
Despus de haber reiniciado DAHDI se ejecuta el
comando lsdahdi.
Si todo ha sido configurado de forma correcta, se podr ver
las tarjetas configuradas y el respectivo estado de canal.
-
44
En la interfaz web tenemos las siguientes opciones: Configuracion de Span y Par metros de Span.
En Par metros de Span podremos configurar el timing source, LBO, Framing y Coding. Tambien podemos
seleccionar el tipo de tarjeta T1/E1 (para tarjetas que
soporten modo de seleccion por software).
En la Configuracion de Span podemos seleccionar por cada canal el software de cancelacion de eco.
Configuracin Span:
Interfaz Web (1) Configuracin Span
Interfaz Web
Tarjeta detectada con formato TI
Cambio de formato a E1
Asterisk cuenta con un modulo llamado chan_dahdi que sirve para conectarse con los drivers de DAHDI y de esta manera
conectar Asterisk con hardware telefnico.
Este modulo se configura a travs de un archivo llamado chan_dahdi.conf
En el archivo chan_dahdi.conf bsicamente se configura la sealizacin de los canales de voz y se mapean los canales de
Asterisk con los circuitos o l neas telefnicas definidos en el
archivo system.conf que configuramos antes.
Estos canales se pueden agrupar en troncales troncales.
Troncalizacin:
chan_dahdi.conf (1) Troncalizacin: chan_dahdi.conf (2)
La siguiente imagen muestra el archivo chan_dahdi.conf:
-
45
Signalling:
Este parmetro define la sealizacin de cada canal o grupo de canales.
Lo ms comn que veremos para circuitos analgicos ser fxs_ls y para circuitos digitales pri_cpe.
Switchtype: Este parmetro es para circuitos digitales y especifica el tipo de switch PRI usado.
Lo ms comn es national y euroisdn, dependiendo de en qu pas nos encontremos claro est.
Troncalizacin: chan_dahdi.conf (3)
Laboratorio 4
CONFIGURACIN DE
HARDWARE
Captulo 9
ASTERISK ESSENTIALS
Es un sistema de telfono a basado en software libre que proporciona todas las funcionalidades que se espera de una central telefnica (PBX).
Esto hace posible conectar un n mero determinado de telfonos para hacer llamadas entre s y conectar a un proveedor de VoIP PSTN.
As tambin proveedores PSTN de telefona digital y anloga usando hardware especializado, esto es tarjetas telefnicas FXO/FXS, ISDN pri/bri, entre otras.
Qu es Asterisk?
-
46
Asterisk fue creado por Mark Spencer quien es su principal desarrollador.
Al ser Software libre, tiene tambin una amplia comunidad de desarrolladores que contribuyen a corregir errores y a adir
novedades y funcionalidades.
Mark haba creado en 1999 la empresa "Linux Support Services" con el objetivo de dar soporte a usuarios de Linux.
Para ello necesitaba una centralita telefnica, pero ante la imposibilidad de adquirirla dados sus elevados precios, decidi
construir una con un PC bajo GNU/Linux, utilizando lenguaje C.
Breve Historia de Asterisk
Asterisk puede funcionar como un sistema IP nativo o uno hibrido, manejando el ruteo de llamadas, interconectando
protocolos y transcodificando medios.
Tiene muchas caractersticas internas como buzn de voz, conferencias, IVRs, CDRs, distribucin automtica de
llamadas, parqueo, transferencias, captura, msica en espera
Entre muchas otras funcionalidades.
Funcionalidad de Asterisk (1)
Asterisk tambin soporta mltiples protocolos y codecs.
PROTOCOLOS CODECS
IAXTM (Inter-Asterisk Exchange) ADPCM
H.323 G.711A/U (A-Law y -Law) SIP (Session Initiation Protocol) G.722
MGCP (Media Gateway Control Protocol) G.723.1
SCCP (Cisco Skynny ) G.726
G.729 (con una licencia comercial)
GSM
iLBC
Linear
LPC-10
Speex
Funcionalidad de Asterisk (2) Funcionalidad de Asterisk (3)
Asterisk soporta diferentes sealizaciones y protocolos para la interconexin con sistemas de telefona tradicionales.
Sealizacin Protocolos PRI
E&M 4ESS E&M Wink BRI (ISDN4Linux)
Feature Group D DMS100 FXS EuroISDN
FXO Lucent 5E
GR-303 National ISDN2
Loopstart NFAS Groundstart
Kewlstart
Soporte para MF y DTMF
Se alizaci n Robbed-bit (RBS)
MFC-R2 (a traves de parches de codigo)
-
47
Asterisk cuenta con scripts ubicados en /etc/rc.d/init.d/asterisk y podemos iniciarlo con el comando /etc/init.d/asterisk start y
detenerlo con /etc/init.d/ asterisk stop.
Sin embargo en Elastix es recomendable manejar su inicio o apagado con el script amportal, mismo que a su vez llama a
otros scripts que inician adems otros servicios necesarios
para ciertas funcionalidades
Su uso es:
o amportal start inicia asterisk
o amportal stop detiene asterisk
Encendido y apagado de Asterisk
Estructura de directorios
de Asterisk
Directorio Descripcin
/etc/asterisk archivos de configuracin de Asterisk /usr/lib/asterisk/modules/ mdulos de Asterisk
/usr/sbin/ incluye el Binario de Asterisk /var/log/asterisk/ logs de Asterisk
/var/lib/asterisk/agi-bin/ AGI scripts
/var/lib/asterisk/mohmp3 archivos d audio para Music On Hold
/var/lib/asterisk/sounds Incluye sonidos que Asterisk utiliza como prompts de voz
/var/spool/asterisk/ archivos generados por Asterisk durante su operacin normal (tales
como grabaciones y voicemails)
/var/run/ archivos PID
/var/log/asterisk/ Aqu residen los archivos de log de Asterisk como los CDRs o el
/var/log/asterisk/full
Asterisk utiliza mdulos para extender su funcionalidad.
Estos m dulos residen en la carpeta /usr/lib/asterisk/modules/ (32
bits) /usr/ lib64/asterisk/modules/ (64 bits).
Son archivos con extension .so
Es posible controlar estos modulos desde el archivo modules.conf,
en la carpeta /etc/asterisk.
Este archivo controla cuales mdulos se cargan o no (load, noload).
Adem s puede controlar el orden en que se cargan con la opcion
preload .
Mdulos de Asterisk (1)
Por defecto en elastix se cargan todos los mdulos que estan en /usr/lib/ asterisk/modules/ a no ser que sea especificado en el archivo modules.conf que no lo haga
Ejemplos en el archivo modules.conf:
noload => chan_modem.so ; Hace que no se cargue el mdulo.
load => format_ogg_vorbis.so ; Hace que se cargue el mdulo.
preload => res_config_mysql.so ; Hace que se cargue primero ese mdulo
Mdulos de Asterisk (2)
-
48
Dahdi es, bsicamente, un conjunto de drivers para controlar hardware telefnico, principalmente tarjetas.
Estas tarjetas son como cualquier otra tarjeta de expansion de una computadora pueden usar bah as PCI, puertos USB, etc.
Dahdi tiene su propio archivo de configuraci n /etc/dahdi/system.conf
DAHDI
En el ao 2000 Jim Dixon lanza el proyecto Zaptel bajo licencia
GPL.
El nombre es una abreviacin de Zapata Telephony Project. Lo
nombra as en honor a Emiliano Zapata, hroe de la revolucin
mexicana.
Inicialmente Zaptel contena drivers para tarjetas Tormenta
fabricadas por Zapata Telecom.
Digium comienza a mejorar los drivers y extender el soporte
para nuevos modelos de hardware, entre ellos los que el mismo
Digium fabricaba.
Pronto Digium se convirti en el principal desarrollador de
Zaptel.
Historia del proyecto Zaptel
Comunicacin Asterisk con DAHDI
Asterisk interacta con dahdi mediante el modulo
chan_dahdi.so, mismo que se controla a travs del archivo
chan_dahdi.conf.
En este archivo se mapean los puertos fsicos hacia canales
tipo DAHDI, estos canales son usados por Asterisk.
Archivos de configuracin
Los archivos se encuentran en /etc/asterisk
extensions.conf
sip.conf iax.conf
chan_dahdi.conf
Reside el plan de marcado, los archivos adicionales empiezan con extensions_.
Se definen los endpoints SIP. Se definen los
endpoints IAX.
Archivo de configuracin para canales DAHDI, se troncalizan los canales.
-
49
El plan de marcado se configura en el archivo extensions.conf, existen otros archivos que contienen
porciones del plan de marcado:
o extensions_additional.conf: el plan de marcado variable
escrito por FreePBX, los cambios realizados manualmente se
pierden cunado FreePBX sobreescribe este archivo.
o extensions_custom.conf: el plan de marcado definido por el
usuario, no se pierden los cambios que se realizan
manualmente.
Todos los archivos son de texto plano en formato definido por Asterisk.
Se dividen en secciones llamadas contextos.
Plan de marcado (dialplan)
Agrupan la lgica del plan de marcado.
Pueden incluir otros contextos con la clausula include .
El plan de marcado se agrupa en contextos.
Se definen como agrupadores u organizadores del plan de marcado.
Deben tener un nombre nico que va entre los simbolos [ ].
Existen dos contextos reservados [globals] y [general].
Dialplan: Contextos
Son lineas del plan de marcado.
Son instrucciones llamadas extensiones.
Tienen la siguiente sintaxis:
exten => nombre_extension, prioridad, aplicacin
Una l nea del plan de marcado es una serie de lgica del plan de marcado.
Se puede crear la lgica necesaria para un marcado especifico.
Dialplan: Extensiones
Es un identificador numrico de la extensin.
Se lo puede asociar al n mero de telfono.
Existe una extensin particular s.
La extensin s significa cualquier extensin.
Esta extensin s se usa cuando el usuario que llama no ha presionado el n mero de extensin. Por ejemplo, cuando este en el
IVR de bienvenida.
Dialplan: Extensiones (Nombre_extensin)
-
50
Indica el orden de ejecucin de una instruccin.
La primera prioridad debe ser siempre 1 porque Asterisk busca esta prioridad cuando lee un contexto para ejecutarlo.
Existe una prioridad especiales n.
La prioridad n indica que a la prioridad de la instruccin anterior se le debe sumar uno. Sirve para facilitar la estructura del plan de marcado.
Dialplan: Instrucciones (Prioridad)
Las aplicaciones de un plan de marcado equivalen a las
funciones de un lenguaje de programacin.
Permiten realizar acciones programadas en el plan de marcado.
Las aplicaciones permiten realizar ejecuciones entre contextos.
Pueden recibir par metros para su ejecucin.
Dialplan: Instrucciones (Aplicaciones)
Las variables en el plan de marcado equivalen a las variables de un lenguaje de programacin.
Son abstracciones que almacenan informacin de naturaleza variable.
Tiene la siguiente sintaxis:
${NNNN}
donde NNNN es el nombre de la variable
Dialplan: Variables (1)
Pueden ser de tres tipos:
Globales: Se definen en la seccin [globals] del archivo extensions.conf o en globals_custom.conf dentro de cualquier
Elastix, pueden ser referenciadas desde cualquier lugar del plan
de marcado.
De canal: Pueden ser definidas usando el comando (o aplicacin) Set .
Dialplan: Variables (2)
-
51
Predefinidas: Asterisk administra algunos nombres de variables con nombres predefinidos
o ${CALLERID(all)}, ${CALLERID(name)}, ${CALLERID(num)},
${CHANNEL}, ${CONTEXT}, ${EPOCH}, ${EXTEN},
${SIPUSERAGENT}, ${UNIQUEID},
Estas variables almacenan cierta informacion dependiendo del comportamiento de la llamada u otros factores.
Dialplan: Variables (3)
Answer
o Sintaxis: Answer ([delay]) o Contesta un canal si este esta timbrando, recibe el
parmetro delay que indica el tiempo en milisegundos antes de contestar.
Background
o Sintaxis: Background(filename1[&filename2...][|opciones[|langoverride] [|context]])
o Reproduce un listado de archivos mientras Asterisk continua ejecutando el plan de marcado.
o Aplicacin usada para reproducir el mensaje de IVR.
Aplicaciones (1)
Playback
o Sintaxis: Playback(filename1[&filename2...][,options]) o Reproduce archivos de audio, a diferencia de Background, no permite a Asterisk tener el control mientras no acabe de reproducir los archivos.
Hangup
o Sintaxis: Hangup() o Cuelga el canal y retorna -1.
Aplicaciones (2)
Goto
o Sintaxis: Goto([[context|]extension|]priority) o Salta la ejecucin del plan de marcado a un contexto,
extension o prioridad indicada. Si se pasa un solo par metro se entiende que es una prioridad del mismo contexto.
Dial
o Sintaxis: Dial(type/identifier, timeout, options, URL) o Marca un canal especificado y lo vincula con el canal
corriente.
Aplicaciones (3)
-
52
Asterisk C LI , L(1)
Es s l nombre de la consola de Asterisk .
Lnea de comandos para controlar Asterisk directamente.
Para ingresar a la consola se ejecuta el comando asterik - r
Cuando se obtiene un prom t I>, , se pueden ejecutar comandos en Asterisk.
Provee informacin en tiempo real actividad de Asterisks.
Permite controlar el grado de detalle de la informacin, para ello se usan los comandos:
Core set debug N Core set verbose N
Mientras mas alto sea el nivel de las variables debug N y verbose N m s detallada ser la informacin mostrada.
Estos comandos se deben utilizar para tareas de diagnostico.
Asterisk CLI (2)
Laboratorio 09
CONFIGURACIN DE
HARDWARE
Captulo 10
PLAN DE MARCADO
AVANZADO
-
53
Sintaxis para eliminar dgitos
${VAR:x:y} Donde VAR es una variable numrica, x es el nmero de dgitos a eliminar al principio y y es cuantos nmeros tendr la variable final
Ejemplo VAR=1234567890, x=3, y=4 ${VAR:3:4} 4567
${VAR:x} Donde VAR es una variable numrica, x es el nmero de dgitos a eliminar al principio
Ejemplo VAR=1234567890, x=3 ${VAR:3} 4567890
Manipulacin de Variables
Concatenar variables
exten =>s,n,Set(VAR_CONCAT=${var1}${var2}${VAR3})
Expresiones
$[expresion]
ej. $[ ${VAR1} + ${VAR2} ]
Sintaxis Condicional
expresin?destino1:destino2
Manipulacin de Variables
Sirven para reutilizar cdigos se definen como contextos anteponiendo el prefijo macro- Ej. [macro-nombremacro]
Puede recibir parmetros cuando se llama al macro, El macro es llamado de la siguiente forma:
Macro(nombremacro,parametro1,parametro2,.)
Los par metros son invocados como: ${ARG1}, ${ARG2},.
Macros Variables disponibles
en Macros
Nombre de la variable Descripcin
${MACRO_CONTEXT} El contexto de la extensi n desde donde se llam a la
macro
${MACRO_EXTEN} La extensi n desde donde se llam a la macro
${MACRO_PRIORITY} La prioridad en la extensi n donde se llam a la macro
A mas de las definidas por el usuario ${ARGn} se pueden usar las siguientes variables
-
54
AstDB
Pequea base de datos accesible desde el plan de marcado
Agrupa informacin por familias. Familias importantes: AMPUSER y DEVICE
Aplicaciones importantes:
Aplicacin Descripcin
DB_DELETE Elimina una clave de la base de datos
DBdeltree Elimina una familia de la base de datos
var=${DB(F/K)} Obtiene un valor de la base de datos. Para esto
debemos proporcionar la clave correspondiente
Set(DB(F/K)=1) Almacena un valor en la base de datos
Reside principalmente en extensions.conf que incluye a:
extensions_additional.conf: Archivo generado por FreePBX que nunca se debe modificar pues todos los cambios sern sobre escritos cuando FreePBX recargue su configuracin.
extensions_custom.conf : archivo que se puede editar para crear nuestros contextos y que stos no sean sobre escritos por FreePP.
Plan de Marcado de
FreePBX
Macros de Apoyo
Son los contextos desde donde se reciben llamadas
Nombre Descripcin
[from-pstn]
Por aqu ingresan las llamadas desde la PSTN o tambi n desde una
troncal VoIP. Este contexto es equivalente a from-trunk
[from-sip-external]
Responde a usuarios SIP externos
desautorizados con un mensaje de congesti n y luego cuelga
[from-internal] Por aqu ingresan las llamadas realizadas desde extensiones
internas
[from-zaptel] Para llamadas que ingresan desde dispositivos DAHDI
Contextos de Entrada
-
55
Determinar si una variable esta vacia
ej. exten => s,1,GotoIf($[${LEN(${VARIABLE_TEST})} > 0]?
destino)
Obtener la fecha actual:
ej. exten => s,4,AGI(recordingcheck,${STRFTIME(${EPOCH},,
%Y %m%d-%H%M%S)},${UNIQUEID})
Sobrescribir extensi n.conf.- Para sobreescribir un contexto definido se puede utilizar el archivo:
extensions_override_freepbx.conf
Conocimientos tiles
Laboratorio 6
PLAN DE MARCADO
AVANZADO
Captulo 11
ASTERISK: AGI & AMI
Es una manera de interactuar con Asterisk desde un programa de linea de comandos.
Este programa puede ser escrito en cualquier lenguaje.
El programa AGI es invocado desde el dialplan.
La salida estndar debe tener cierto formato. Es lo que se llaman comandos AGI.
AGI (1)
(Asterisk Gateway Interface)
-
56
Gracias a AGI podemos desarrollar funcionalidades extra en nuestro plan de marcado como: IVRs de consulta a base de datos,
etc.
Los programas AGI residen en /var/lib/asterisk/agi-bin/.
Elastix trae algunos scripts all preinstalados.
AGI (2)
(Asterisk Gateway Interface)
Los scripts AGI se comunican con Asterisk a travs de STDIN,
STDOUT y STDERR
Por tanto, los scripts AGI se debern poder ejecutar desde la linea de comandos
Cuando son ejecutados a travs de Asterisk los permisos son muy importantes.
# chown asterisk.asterisk test.agi # chmod 755 test.agi
Ejecucin de scripts AGI (1)
Para invocar al script desde el dialplan podemos utilizar la funcin AGI ().
exten => 6789,1,Answer
exten => 6789,2,AGI(script_test.agi)
Se le pueden enviar parmetros al script utilizando la sintaxis: AGI(script.agi,par1,par2,...).
Adicionalmente Asterisk le enva al script ciertos parmetros por omisin, que veremos a continuacin.
Ejecucin de scripts AGI (2)
Algunos parmetros enviados
por omisin
A continuacin algunos de los ms importantes:
agi_request El nombre del archivo script. agi_channel El canal que origin la llamada. agi_type El tipo de canal. Por ej. SIP o DAHDI. agi_uniqueid Un identificador nico para la llamada. agi_callerid El caller ID en caso de estar disponible. agi_context Contexto. agi_extension Extensin. agi_accountcode Cdigo de cuenta, en caso de estar
disponible.
-
57
Algunos comandos AGI tiles
say digits: Sintetiza y reproduce nmeros. til para IVRs que recuperan data de la DB. hangup: Cuelga el canal (llamada) actual. stream file: Reproduce un archivo de audio. set context: Establece un contexto para continuar luego de la finalizacin del AGI. noop: Slo muestra mensajes en el log. set variable: Establece una variable de canal.
Ejemplo AGI sencillo
Veamos lo sencillo que es usando un ejemplo escrito en PHP. Llamaremos al script simple.agi.
Ahora pongmoslo accesible desde el dialplan cuando se marque el nmero 6789.
AMI
(Asterisk Management Interface)
Es otra manera de controlar Asterisk pero a travs de la red IP. La comunicacin es de tipo texto.
Se pueden desarrollar aplicaciones remotas. Un ejemplo es el mdulo de call center de Elastix, otro ejemplo es el
FOP.
El puerto AMI por omisin es el 5038. No cualquier equipo puede interactuar con el puerto AMI.
Previamente su IP tiene que ser habilitada en el archivo
/etc/asterisk/manager.conf.
/etc/asterisk/manager.conf
-
58
Probando desde telnet (1)
Una manera sencilla de probar si nos podemos conectar al puerto AMI.
En el siguiente ejemplo nos conectaremos desde el propio servidor. Lo primero que veremos es el mensaje de bienvenida:
Probando desde telnet (2)
Luego probaremos autenticndonos:
Si los datos estuvieron correctos recibiremos un mensaje de xito.
Recuerdan cual es la contrasea de AMI?
Tipos de paquetes AMI
En la comunicacin por AMI se pueden identificar tres tipos de paquetes
de informacin.
Accin: Un comando enviado por el cliente al servicio AMI para que sea
Procesado. Respuesta: La respuesta de Asterisk a la Accin requerida por la
aplicacin cliente.
Evento: Se trata de informacin de un evento asincrnico ocurrido en Asterisk. Por ejemplo, ingres una llamada telefnica.
Para relacionar las respuestas con las acciones se puede incluir un
ActionID en cada Accin. Asterisk devolver este parmetro en la
respuesta.
Acciones AMI comunes
Login: Nos permite autenticarnos con AMI.
Logoff: Termina la sesin.
Events: Controla el flujo de eventos.
Originate: Inicia una llamada telefnica.
Redirect: Transfiere una llamada.
Hangup: Cuelga una llamada.
Getvar: Obtiene una determinada variable de canal.
-
59
Laboratorio 7
AGI & AMI
Captulo 12
ELASTIX: CONFIGURACIN
AVANZADA
Ruteo de Llamadas
Rutas Entrantes:
Esta opcin permite configurar el destino de las llamadas que ingresan por una determinada troncal.
Cuando una llamada entra,
Asterisk puede buscar
matchear el DID el CallerID
de la troncal.
Ruteo de Llamadas
Rutas Salientes:
Mediante las rutas salientes podemos indicar por qu
troncal o troncales deben ser
enviadas las llamadas.
-
60
Troncales
Una troncal es el camino lgico que permite llevar una llamada
a cualquier destino externo.
Alguno de los tipos de troncales son:
DAHDI
IAX2
SIP
Custom
Troncal DAHDI
Parmetros a configurar en una troncal DAHDI:
Adems de las configuraciones especificadas, se deben incluir configuraciones entrantes y salientes
Esta informacin generalmente es especificada por el proveedor de servicios de voz.
Las configuraciones pueden incluir username, password, codec, el host destino, etc.
Troncales de tipo IAX2 y SIP (1) Troncales de tipo IAX2 y SIP (2)
Ejemplo de configuracion de los detalles del Peer:
Nota: Es posible que se requiera una cadena de registro que tiene la siguiente sintaxis: nombre_de_usuario:password@host
-
61
Troncales Personalizadas
Estas troncales son creadas cuando se usan protocolos no
estndares como h323,misdn, etc.
Se debe especificar un string de marcado. Por ejemplo:
Tarifacin (1)
La opcin Rates/Tarifas (Reports Billing Rates) nos permite
visualizar y configurar las tarifas que se usarn para la facturacin
de llamadas.
Tarifacin (2) Crear Tarifa
Para agregar una nueva tarifa dar clic en el botn Crear Nueva Tarifa.
Se mostrar un formulario en el que se ingresarn los siguientes
campos:
Prefijo: Prefijo telefnico al cual se aplicar la tarifa.
Nombre: Nombre para la tarifa.
Tarifa: Valor de la tarifa por minuto.
Rate offset: Valor de interconexin.
Dgitos Ocultos: oculta los ltimos "n" dgitos del nmero en el reporte.
Troncal: Troncal asignada para la tarifa.
Tarifacin (3)
Crear Tarifa
Para tener disponible una troncal debemos habilitarla en Billing
Setup (Reports Billing Billing Setup).
En este men podemos configurar adems la tarifa por defecto y el
rate offset por defecto.
-
62
Tarifacin (4)
Visualizar, Editar y Eliminar
El enlace Ver nos llevar a una pantalla donde se mostrar los datos de la tarifa.
Podemos editar los valores de la tarifa haciendo clic en el botn
Editar, o eliminarla haciendo clic en Eliminar
Reporte de Facturacin
Este reporte (Reports Billing Billing report) nos permite ver todos los detalles de las llamadas y su respectivo costo y ruta
aplicada.
Este reporte cambiar dependiendo de 3 valores de filtro:
oFecha Inicio: Fecha que queremos configurar como inicial para el
reporte.
oFecha Fin: Fecha final para el reporte.
oCampos de filtro adicional son: Tarifa aplicada, Duracin, Rate
value, Fuente, Destino, Canal destino, Account Code.
Tarifacin (5)
Tarifacin (6)
Reporte de Facturacin. Distribucin de Destinos
Esta opcin (Reports Billing Destination distribution) nos permite ver una grfico de distribucin de llamadas salientes
agrupadas por tarifa.
El grfico cambiar dependiendo de los valores de filtro:
oFecha Inicio: Fecha que queremos iniciar la revisin de llamadas.
oFecha Fin: Fecha final para la revisin.
oCriterios de distribucin: Distribucin por tiempo, distribucin por
nmero de llamadas, distribucin por costo.
Tarifacin (7)
-
63
Tarifacin (8)
Distribucin de Destinos CDR es la abreviacin para Registro de Detalle de Llamada (Reports
CDR Reports).
Este reporte nos permite ver un listado con el detalle de todas las llamadas.
Los reportes son exportables a CSV, XLS (para acceso lectura/ escritura), o PDF (lectura-nicamente) formatos.
Reportes: CDR (1)
Reportes: CDR (2)
Este reporte cambiar dependiendo de los siguientes valores de filtro:
Fecha Inicio: Fecha que queremos iniciar la revisin de llamadas. Fecha Fin: Fecha final para la revisin. Grupo de timbrado: permite filtrar por grupo de ringado si existe. Estado: Contestado, Ocupado, Fallido, No Contestado. Campo de filtros adicionales: Fuente, Canal de Origen, Account code, Canal de Destino.
Reportes: CDR (3)
-
64
Uso de canales
El reporte de uso de canales: Channels Usage report (Reports
Channels Usage) permite ver de manera grfica el nmero de
llamadas simultneas por canal.
Configuracin DISA (1)
DISA permite que los usuarios puedan acceder telefnicamente a su servidor Elastix desde fuera y obtener un tono "interno" de
marcado.
E.g. podr realizar llamadas internacionales, a telfonos mviles, entre otros.
DISA (Direct Inward System Access)
Configuracin DISA (2)
Nombre de DISA: El nombre referencial para este accedo DISA
PIN: La contrasea necesaria para acceder al soporte DISA.
Tiempo de espera para la respuesta: Mximo tiempo que la
aplicacin esperar al usuario por el PIN.
Tiempo de espera de marcado: Mximo tiempo entre dgitos.
Configuracin DISA (3)
Pedir confirmacin: Pregunta por una confirmacin antes del
pedido de la contrasea.
Identificador de llamante: Todas las llamadas DISA usarn este
Caller ID (opcional).
Contexto: Contexto que usar el DISA.
Permitir colgar: Permite colgar la llamada presionando "**" para
tener tono nuevamente.
-
65
Condiciones de tiempo (1)
El uso de condiciones de tiempo es una caracterstica muy til
para modificar el comportamiento de la PBX dependiendo de la
hora o del da de la semana.
EJEMPLOS:
La compaa X desea que por las noches se reproduzca un
mensaje indicando el horario de atencin e indicando que en
casos de urgencias se podran comunicar con un nmero alterno.
La compaa Z desea reproducir un IVR de bienvenida distinto al
habitual durante los fines de semana ya que siempre lanza
promociones durante estos das.
Condiciones de tiempo (2)
Captulo 13
INTERCONEXIN CON
ELASTIX REMOTOS
Una de las ventajas de usar Elastix es que fcilmente podemos interconectar dos cajas Elastix de tal manera que se puedan unir
las comunicaciones de dos lugares remotos.
Por ejemplo en un solo plan de marcado.
A continuacin veremos como configurar la interconexin de dos Elastix mediante una troncal de tipo SIP.
A travs de troncales SIP (1)
-
66
A travs de troncales SIP (2)
Escenario:
En el escenario mostrado a continuacin queremos interconectar la central A con la central B de tal forma que el telfono A y el telfono
B se puedan comunicar nicamente marcando las extensiones de
forma directa.
Para implementar esto se requiere definir dos cosas:
o La troncal
o Las rutas salientes en cada Elastix
A travs de troncales SIP (3)
Escenario:
Definiendo la troncal
Definimos el nombre de la troncal, el cual en nuestro caso servir de username para el proceso de registro.
A la troncal del servidor A la llamaremos elastixA y la troncal del servidor B la llamaremos elastixB.
Luego definimos los detalles del peer.
A travs de troncales SIP (4)
Definiendo la troncal
Ejemplo de configuracin del peer:
host=dynamic secret=welcome trunk=yes type=friend
Configuracin que se repite en ambos servidores Elastix. Como se ve hemos definido como secret la palabra welcome.
A travs de troncales SIP (5)
-
67
A travs de troncales SIP (6)
Register String
Definimos el register string siguiendo el formato especificado anteriormente:
En este caso para la central Elastix A debera ser:
Una vez establecida esta configuracion en ambos servidores podemos verificar en si se encuentran registradas las troncales.
En el Asterisk CLI mediante el comando: sip show registry y deber amos ver algo como esto:
elastix*CLI> sip show registry
Host Username Refresh State Reg.Time
192.168.1.240:5060 elastixB 105 Registered Fri,11
Apr 2008 10:29:43
A travs de troncales SIP (7)
El siguiente paso es definir los detalles del user, es decir en donde se quiere terminar la llamada.
En este caso queremos que sea accesible a la extensiones local, bastar con colocar el contexto primario. Esto indica que cuando la
llamada entre por la troncal iniciar en el contexto aqu
especificado.
La configuracin es como sigue:
context=from-internal host=192.168.1.240 insecure=very
type=friend
A travs de troncales SIP (8)
Definiendo la ruta saliente
Primero determinamos el nombre de la ruta salientes. En este caso le pondremos: HaciaElastixB.
Luego definimos el patrn de marcado, en este caso usaremos el siguiente patrn de marcado: 2|XXX (asumimos que para marcar al
servidor B debemos marcar el prefijo 2).
En tercer lugar escogemos por qu troncal deber enrutarse la llamada, en este caso escogemos por la troncal sip/elastixA
A travs de troncales SIP (9)
-
68
Hoy en da ha tenido mucho auge los VSP (Voice Services Provider) proveedores de servicios de voz.
Estos proveen conexiones SIP o IAX principalmente, a su infraestructura para permitir conectar llamadas locales en una regin.
En esta seccin implementaremos una conexin SIP con un proveedor VSP que nos permitir hacer llamadas dentro de Estados
Unidos.
Conexin con proveedores
VoIP (1)
Escenario:
En el siguiente escenario queremos registrar una troncal de tipo SIP con un VSP que nos permita realizar llamadas a EEUU
desde cualquier telfono IP.
Para implementar esto se requiere definir dos cosas:
o La troncal
o Las rutas salientes en cada Elastix
Conexin con proveedores
VoIP (2)
Conexin con proveedores
VoIP (3)
Escenario: Definiendo la troncal
Como vimos en la seccin anterior se debe definir el nombre de la troncal en este caso la llamaremos:VP-SIP
Luego definimos las caractersticas del peer.
Esta informacin debe ser proporcionada por el VSP y generalmente es la misma para todos los usuarios a registrar, lo nico que cambia
es el usuario y el password.
Conexin con proveedores
VoIP (4)
-
69
Conexin con proveedores
VoIP (5)
Definiendo la troncal
En nuestro caso el VSP nos pide que configuremos la troncal de la
siguiente forma: Definiendo la troncal
Luego agregaremos la cadena de registro que en nuestro
caso sera:
mi_usuario:[email protected]
Conexin con proveedores
VoIP (6)
Definiendo la ruta saliente
Primero determinamos el nombre de la ruta salientes. En este caso le pondremos: INTERNACIONAL
Luego definimos el patrn de marcado, en este caso usaremos el siguiente patrn de marcado: 00.
En tercer lugar escogemos por que troncal debe irse la llamada en este caso escogemos por la troncal SIP/VP-SIP
Conexin con proveedores
VoIP (7) Conexin con proveedores
VoIP (8)
Una vez realizada la configuracion podemos verificar en el Asterisk CLI si se la troncal se encuentra registrada.
Usamos el comando: sip show registry y deber amos ver algo como esto:
-
70
Modulo VoIP Provider (1)
Desde la versin 2.0 Elastix tiene un mdulo con proveedores incluidos por defecto.
El mdulo permite configurar cuentas VoIP de manera automtica. Si el proveedor no est enlistado usted puede escoger Custom
como opcin para mostrar el cuadro de PEER Settings.
La opcin Custom es adems una alternativa al proceso de crear
una conexin con un proveedor SIP.
Usted puede seguir el procedimiento descrito en la seccin anterior o
crear una cuenta a travs del mdulo VoIP Provider.
Modulo VoIP Provider (2)
Mdulo VoIP Provider (3)
Si usted tiene ya una cuenta con alguno de los proveedores incluidos, solo necesita ingresar la informacin y la cuenta se
crear .
Usted puede revisar el registro en el Asterisk CLI.
Posterior a esto revisamos la troncal en PBX PBX Configuration Troncales. Observaremos la cuenta como un SIP Trunk, en este ejemplo: N2P-DRB (sip).
Mdulo VoIP Provider (4)
-
71
Mdulo VoIP Provider (4)
Luego es necesario crear la ruta saliente para esta troncal y podemos empezar a usar el servicio.
Laboratorio 8
INTERCONEXIN REMOTA
CON ELASTIX
Laboratorio 9
CONFIGURACIN DE
FACTURACIN
Captulo 14
PROTOCOLOS VoIP AL
DESCUBIERTO
-
72
El protocolo SIP (Session Initialization Protocol) es un protocolo de se alizacion (application-layer control)
Creado para administrar sesiones multimedia entre dos o mas partes.
Muchos se confunden pensando en que el protocolo SIP es el que transporta la voz propiamente dicha pero no es as
Esta labor la realiza otro protocolo que veremos mas adelante; de lo que s se encarga SIP es de la comunicacin necesaria para
establecer una llamada, modificarla, as como para finalizarla.
Protocolo SIP
Protocolo SIP
Detalles del protocolo
RTP es el portador de la voz y el video.
SDP se usa para negociar las capacidades de los endpoints.
Usa dos importantes protocolos como RTP/RTCP y SDP.
La ltima versin del estndar es la RFC3261.
Basado en texto, lo que nos permite entender los mensajes de una manera relativamente fcil.
Protocolo SIP Sealizacin SIP:
Mtodos y Respuestas (1)
-
73
Sealizacin SIP:
Mtodos y Respuestas (2)
Sealizacin SIP:
Mtodos y Respuestas (3)
SIP y Asterisk (1)
Algunos detalles a tener en cuenta cuando se usa el protocolo SIP con Asterisk
son los siguientes:
A pesar de que SIP es independiente de la capa de transporte (puede ser usado con TCP, UDP, ATM, X.25, entre otros)
En Asterisk su implementacin estaba limitada a UDP hasta la versin 1.6. En la versin 1.8 viene con soporte nativo para TCP.
Por omisin se usa el puerto 5060, pero este parmetro se puede modificar en el archivo sip.conf
SIP tiene problemas de NAT traversal. Parmetros especiales como externip, localnet y nat, pueden ser definidos en
sip_general_custom.conf para resolver esto.
En Asterisk es posible hacer diagnstico del protocolo SIP. Esto se ver ms adelante.
SIP y Asterisk (2)
Una seccin de llamada SIP entre dos telfonos sin SIP proxy
-
74
El protocolo IAX (Inter-Asterisk eXchange) es un protocolo de sealizacin creado por Mark Spencer, el mismo creador de Asterisk,
con el objetivo de solucionar algunos problemas existentes con otros
protocolos.
En esencia IAX presenta tres ventajas muy interesantes sobre otras alternativas como SIP.
o Consume menos ancho de banda
o Soluciona mejor problemas de NAT
o Pasa ms fcilmente a travs de firewalls
Actualmente se usa la versin 2 del protocolo IAX,sin embargo la nomenclatura general se intercambia entre IAX e IAX2.
Protocolo IAX:
Generalidades (1)
IAX es un protocolo binario, a diferencia de SIP que como recordaremos es un protocolo basado en texto. IAX usa UDP y normalmente usa el puerto 4569. Lo interesante de IAX es que por un solo puerto transmite tanto la
voz como la sealizacin y es esto lo que le permite resolver
problemas de NAT.
Adems de esta caracterstica el protocolo permite la troncalizacin de varios canales de audio en el mismo flujo de
datos.
Protocolo IAX:
Generalidades (2)
Llamada usando IAX (1)
Una llamada IAX se puede dividir en 3 fases:
Establecimiento de la llamada Llamada en curso Terminacin de la llamada
Establecimiento de la llamada
El equipo que la inicia (equipo A) le enva un mensaje NEW al equipo B y este ultimo responde con un mensaje ACCEPT.
Luego el equipo destino timbrar en espera de que el usuario conteste. Si contesta, el equipo B enviar un mensaje ANSWER al
equipo A.
Llamada usando IAX (2)
Llamada en curso
Si se contest la llamada se inicia el intercambio de audio
mediante unos paquetes llamados frames.
Terminacin de la llamada
Para terminar la llamada cualquiera de las partes
involucradas debe enviar un mensaje HANGUP.
-
75
Llamada usando IAX (3)
Estableciendo una llamada
Llamada usando IAX (4)
Terminacin de la