guia teorica elastix

Upload: sk8globe01

Post on 16-Oct-2015

252 views

Category:

Documents


1 download

TRANSCRIPT

  • 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