ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
1
Índice Módulo I: Introducción................................................................................................................................. 3
¿Qué es la telefonía IP? ......................................................................................................................... 3 Comparativa entre la telefonía tradicional y la telefonía IP.................................................................... 3 Protocolos utilizados en la telefonía IP................................................................................................... 4
Protocolo SIP ....................................................................................................................................... 4 Protocolo IAX ....................................................................................................................................... 5 Protocolo H.323 ................................................................................................................................... 5 Protocolo SCCP................................................................................................................................... 5
Redes de comunicación para sistemas de VoIP .................................................................................... 6 Redes LAN........................................................................................................................................... 6 Redes WAN ......................................................................................................................................... 6 Redes MAN.......................................................................................................................................... 6
Módulo II: Centralitas Asterisk .................................................................................................................... 7 Características y funcionalidades típicas de centralitas IP .................................................................... 7 Sistemas VoIP basados en Asterisk ....................................................................................................... 9
Requisitos ............................................................................................................................................ 9 Instalación de Asterisk .......................................................................................................................... 10
Disposición de los archivos Asterisk ................................................................................................. 11 Instalación desde repositorios .............................................................................................................. 12 Instalación mediante el compilado de código fuente ........................................................................... 12 Instalación de los archivos de Asterisk................................................................................................. 14
Taller II ...................................................................................................................................................... 15 Preparación de una máquina virtual con Debian ................................................................................. 15 Nociones básicas de manejo en Linux/Debian .................................................................................... 21 Preparación del entorno........................................................................................................................ 22 Instalación de Asterisk desde repositorios ........................................................................................... 22 Instalación de los archivos de Asterisk................................................................................................. 22
Módulo III: Canales, códecs y troncales IAX2 y SIP ................................................................................ 22 Códecs .................................................................................................................................................. 22 Protocolo SIP y su configruación en Asterisk....................................................................................... 24 Protocolo IAX2 y su configuración en Asterisk..................................................................................... 27 Preparación del dialplan básico ............................................................................................................ 28 Enrutamiento a la red PSTN: ISDN BRI, T1/E1, y FX0/FXS ............................................................... 31 Troncal SIP con operador ..................................................................................................................... 34 Protocolos de señalización DTMF ........................................................................................................ 35
Inband ................................................................................................................................................ 35 RFC2833............................................................................................................................................ 35 SIP INFO............................................................................................................................................ 35 DTMF sobre troncales IAX ................................................................................................................ 35
Taller III ..................................................................................................................................................... 36 Configuración de 2 extensiones SIP..................................................................................................... 36
Preparación del dialplan básico ........................................................................................................ 36 Configuración SIP en asterisk ........................................................................................................... 36 Configuración SIP del terminal .......................................................................................................... 36 Configuración SIP de softphone........................................................................................................ 36 Pruebas de llamadas internas ........................................................................................................... 36
Configuración de troncal IAX ................................................................................................................ 36 Configuración IAX en asterisk ........................................................................................................... 36
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
2
Pruebas de llamadas entre centralitas asterisk ................................................................................ 36 Módulo IV: Configuración avanzada de dialplan...................................................................................... 36
Conceptos clave .................................................................................................................................... 36 Retención y transferencia de las llamadas ........................................................................................... 37 Buzón de voz......................................................................................................................................... 40 Conferencias de audio .......................................................................................................................... 41 Las colas de espera y los agentes ....................................................................................................... 45 IVR ......................................................................................................................................................... 48
Taller III ..................................................................................................................................................... 50 Configuración avanzada de dialplan..................................................................................................... 50
Módulo V: Interfaces Gráficas .................................................................................................................. 50 Visión General ....................................................................................................................................... 50 Introducción a FreePBX ........................................................................................................................ 52
Instalación de FreePBX ..................................................................................................................... 52 Configuración Básica de FreePBX.................................................................................................... 54 Configuración de extensiones SIP .................................................................................................... 55 Configuración de Troncales SIP........................................................................................................ 56 Configuración de llamadas entrantes................................................................................................ 57 Configuración de llamadas salientes ................................................................................................ 59 Características y funcionalidades...................................................................................................... 60
Módulo VI: Seguridad y monitorización .................................................................................................... 60 AMI y AGI .............................................................................................................................................. 60 Seguridad en Asterisk ........................................................................................................................... 62 Fail2Ban ................................................................................................................................................ 63 Los registros de Asterisk (logger.conf) ................................................................................................. 65 Debug en Asterisk ................................................................................................................................. 66
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
3
Módulo I: Introducción
¿Qué es la telefonía IP?
La telefonía IP, o como se conoce en inglés VoIP (Voz sobre protocolo de Internet) es un método por
el cual, las señales de audio analógicas se transforman en datos digitales que pueden ser transmitidos
a través de internet hacia una dirección IP determinada.
Aunque la telefonía IP existe desde hace muchos años, debido a la inestabilidad de las redes de
Internet, y su pobre calidad de servicio, no ha sido hasta ahora cuando su implementación ha
empezado a ser real en el mundo empresarial y doméstico.
Actualmente, empresas como, entre otras, Telefónica, han descartado continuar usando la telefonía
tradicional para dar paso a la telefonía IP.
Comparativa entre la telefonía tradicional y la telefonía IP
TELEFONÍA TRADICIONAL
TELEFONÍA IP
CALIDAD SONIDO Baja Desde baja hasta alta definición MÉTODO DE TRANSMISIÓN
Líneas telefónicas de cobre convencionales
A través de cualquier red IP. (LAN, Wi-Fi, 4G, FTTH, DSL, Satélite)
TERMINALES Teléfonos analógicos, Fax
Teléfonos analógicos, Teléfonos digitales, Móviles, Ordenadores
MOVILIDAD No Sí NODOS REQUERIDOS
Muchos Pocos
COSTE DEL MANTENIMIENTO DE LA RED
Alto Bajo
COSTE DE IMPLEMENTACIÓN EN EMPRESAS
Alto Escalable
CANALES POR LÍNEA
Hasta 30 canales por línea (PRI)
Escalable
SOPORTE VÍDEOLLAMADAS
No Sí
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
4
Protocolos utilizados en la telefonía IP
Debemos entender que la VoIP no se puede catalogar como un servicio, sino como una tecnología de
la cual ser pueden desarrollar distintos servicios. (Llamadas tradicionales, videollamadas, Skype,
Webex, transmisión de audio en tiempo real para juegos en línea…)
Es por ello que, dependiendo de su uso, se hayan desarrollado distintos tipos de protocolos que se
adecuan según las necesidades a cubrir.
Algunos de los protocolos de transmisión de voz son privativos y requieren de licencias para poder ser
utilizados, y otros han sido desarrollados de forma gratuita y libre para que cualquier persona con los
conocimientos suficientes pueda emplearlos.
A continuación, veremos algunos de los protocolos más populares.
Protocolo SIP
También conocido por sus siglas en inglés como Protocolo de Inicio de Sesión. Es un protocolo de
señalización utilizado ampliamente para establecer y terminar sesiones de comunicación multimedia.
Guarda cierta similitud con protocolos como el HTTP (navegación web) y el SMTP (envío de correo
electrónico). Es un protocolo estándar definido en la RFC 3261, y ha sido desarrollado por la
comunidad de software libre.
El protocolo sirve para crear, modificar y finalizar sesiones entre dos o más partes que constan de uno
o varios flujos de transmisión multimedia. Es ampliable y se adapta a distintas arquitecturas y entornos
de implentación.
Sus funciones básicas son:
1. Traducción de un nombre de usuario a su dirección de red actual
2. Gestión de llamadas (adición, transferencia o eliminación de participantes)
3. Negociación entre los distintos participantes para ofrecer compatibilidad
4. Posibilidad de realizar cambios de compatibilidad durante una llamada
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
5
Protocolo IAX
En inglés, Inter-Asterisk eXchange Protocol, es uno de los protocolos más utilizados por centralitas
Asterisk.
Es un protocolo diseñado por la comunidad de software libre, pero no es estándar.
Su función es la de manejar conexiones de VoIP entre servidores de telefonía Asterisk. Las principales
diferencias con respecto el protocolo SIP son:
1. Tanto el tráfico de señalización, como el tráfico de voz son transmitidos a través del mismo puerto, lo
que facilita su configuración y evita problemas con cortafuegos.
2. Es compatible con una gran cantidad de códecs y un gran número de participantes.
3. Reduce latencias y retardos (Trunking) minimizando el ancho de banda utilizado.
4. Dispone de funcionalidades avanzadas que el SIP no tiene contemplado.
Protocolo H.323
Apoyado por la ITU-T (International Telecommunication Union), define la forma de proveer sesiones de
comunicaciones de voz IP sobre paquetes de red.
Sus principales funcionalidades coinciden con las del protocolo SIP, aunque este protocolo está
basado en el RDSI, y está adaptado para situaciones en las que se combinan ambas tecnologías.
Debido a la inmovilidad de su especificación, la complejidad de integración, y su antigüedad, su uso ha
caído notablemente con el paso de los años a favor del protocolo SIP.
Protocolo SCCP
Es un desarrollo propietario de Cisco, y es utilizado en las centralitas telefónicas CISCO CallManager.
Se utiliza debido a su gran robustez y su capacidad de tolerancia a fallos.
Las características ofrecidas se asimilan al del protocolo SIP, con algunas funcionalidades más
desarrolladas que las de sus oponentes, y dispone de una total integración con todo el entorno CISCO.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
6
La información sobre este protocolo es muy restringida, y la conocida ha sido extraída a base de
sistemas de ingeniería inversa.
Su coste de implementación es alto y requiere del pago de licencias.
Redes de comunicación para sistemas de VoIP
La capacidad de polimorfismo de la telefonía IP permite un gran número de topologías y arquitecturas
distintas, así como la posibilidad de proveer distintos servicios sobre ellas. La tecnología de Voz IP es
capaz de ser implementada en entornos como:
Redes LAN
La implementación de telefonía IP sobre redes privadas están orientadas hacia servicios de
centralita telefónicos para una empresa, un hospital, o un hotel. Las comunicaciones entre
todos los terminales de la empresa se realizan a través de una centralita IP.
Redes WAN
Implementaciones comúnmente destinadas para la comunicación entre varias sedes en
distintos puntos geográficos a través de una red virtual privada, sin la necesidad de contratar a
un operador.
También pueden implementarse en este tipo de redes sistemas de Voz IP para comunicar una
empresa con la red telefónica convencional a través de un operador IP.
Redes MAN
La implementación de telefonía IP sobre este tipo de redes es la más extendida en la actualidad
por todo tipo de operadores. Sirve para transportar Voz a grandes distancias con unos costes
bajos.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
7
Módulo II: Centralitas Asterisk
Características y funcionalidades típicas de centralitas IP
Características:
Escalabilidad completa.
Disponibilidad de hardware de distintos rangos de precio.
Compatibilidad entre sistemas.
Los terminales pueden conectarse a cualquier boca de red Ethernet, pudiendo compartir cableado con
la red de ordenadores.
La extensión de los terminales IP no dependen de su ubicación, y no importa donde los conectemos
dentro de la oficina.
Permiten compatibilidad con terminales analógicos pudiendo ser reutilizados de instalaciones antiguas.
La centralita puede ser conectada a redes convencionales RTB, RDSI (Bri), Primarios, otras
centralitas, o Trunk IP (Troncales de acceso a operadoras IP).
La centralita puede ser física y permanecer en las instalaciones de la empresa, o virtual y estar alojada
en la nube.
Funcionalidades
Algunas de sus funcionalidades más destacadas son:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
8
Extensiones ilimitadas (dependientes del hardware)
Canales ilimitados (dependiendo del hardware y del operador)
Transferencia de llamadas, internas y externas
Desvío de llamadas si está ocupado o no contesta
Función “No molestar” (Do Not Disturb)
Parking de llamadas
Llamadas en espera
Extensiones remotas fuera de la oficina
Grupos de llamada
Identificador de llamadas
Operadora Digital (menús interactivos IVR multinivel)
Música en espera
Captura de llamadas remotas
Buzones de voz
Envío de mensajes de voz al correo electrónico
Listas negras
Directorio
Salas de conferencia
Registro detallado de llamadas internas, entrantes y salientes
Enrutado de llamadas salientes según horario, destino geográfico…
Funcionalidades a medida
Recepción de faxes y envío en formato PDF por correo electrónico
Gestión de colas de llamadas entrantes
Grabación de llamadas
Monitorización de llamadas en curso
Video conferencia
Integración con CRM
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
9
Sistemas VoIP basados en Asterisk
Asterisk es una aplicación por software que permite controlar y gestionar comunicaciones de cualquier
tipo, ya sean analógicas, digitales o VoIP mediante todos los protocolos VoIP que implementa.
Es una aplicación de código abierto, basada en licencia GPL, y por tanto, cuenta con todas las
ventajas que hace que sea libre desarrollar sobre ella comunicaciones profesionales de gran calidad,
seguridad y versatilidad,
A día de hoy, Asterisk es la aplicación más completa, avanzada y económica para implementar
soluciones de Voz sobre IP.
Soporta estándares abiertos como SIP, H.323 o IAX, y algunas funcionalidades del protocolo SCCP de
Cisco.
Su descarga es gratuita, y existe un nutrido equipo de profesionales que se dedican a mejorar
continuamente la aplicación.
Requisitos
Dependiendo del tipo de implementación a realizar, Asterisk requiere de unos u otros componentes de
hardware.
Una centralita básica de Asterisk con capacidad para 20 extensiones necesitaría de un servidor (u
ordenador) con un pequeño procesador Core Duo con 8GB de disco y 512MB de RAM.
Dependiendo de la importancia del servicio, Asterisk podría ser redundado en 2 equipos de similares
características para que, en caso de que una máquina fallara, la otra siguiera con el servicio.
Dependiendo de las conexiones que deseemos disponer con el exterior, necesitaremos de:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
10
-Acceso a internet (recomendable al menos 512Kb de descarga, y otros tantos de subida)
-Gateway analógico para redes FX0 o FXS
-Gateway digital para redes RDSI (BRI o PRI)
-Gateway GSM para llamadas móviles
Pudiendo ampliar la lista a cortafuegos, VPNs, routers con capacidad de QoS, switches gestionables,
balanceadores de línea… etc…
Instalación de Asterisk
Aunque Asterisk está disponible para distintas arquitecturas, la más utilizada en la actualidad es la
x86_64 para Linux.
Durante el desarrollo de este curso utilizaremos una máquina virtual Linux sobre los equipos
disponibles en el aula.
Una máquina virtual es una emulación por software de una máquina física. De este modo, en un ordenador con
Windows, nosotros podemos instalar un servidor virtual con otro sistema operativo, como en este caso, con
Linux.
En general, en Linux podemos instalar programas de dos formas distintas:
Compilando el código fuente. Desde repositorios
Compilar el código fuente implica descargar en nuestra máquina el código fuente del programa a i nstalar.
Adaptarlo y configurarlo a nuestro Sistema operativo. Y compilarlo (codificarlo, o traducirlo a lenguaje máquina
de forma que el sistema operativo entienda el programa y sus órdenes)
Por el contrario, instalarlo desde repositorio implica descargar el programa ya compilado y empaquetado
previamente por la comunidad, e instalarlo de forma automática sin realizar configuraciones.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
11
A primera vista se observa que la primera opción es mucho más larga y compleja, pero cuenta con la ventaja de
que podemos modificar el código fuente a nuestro antojo, y que podemos seleccionar qué módulos deseamos
instalar en el sistema.
Al instalarlo desde repositorio no podremos ni modificar, ni seleccionar qué módulos descargar, aunque
podremos actualizar de forma fácil nuestro programa mediante el gestor de actualizaciones.
Elegir una u otra opción siempre será responsabilidad nuestra evaluando las ventajas y desventajas de cada
método.
Las últimas versiones de Asteirsk se encuentran disponibles para su descarga en su página oficial:
http://www.asterisk.org/downloads/asterisk/all-asterisk-versions
Disposición de los archivos Asterisk
Directorios de instalación por defecto en Linux Debian:
Ruta Descripción
/etc/asterisk Archivos de configuración
/usr/sbin Ejecutables binarios
/var/log/asterisk Mensajes de error, logs y CDR
/var/lib/asterisk (compilado) Documentación, Música en espera, Sonidos
/usr/share/asterisk (repositorio) Documentación, Música en espera, Sonidos
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
12
Instalación desde repositorios
Para instalar Asterisk desde el repositorio de programas de Debian tan sólo tendremos que ejecutar
en la consola:
# apt-get install asterisk
Nos listará todos los programas dependientes de él, y nos pedirá confirmación de si deseamos
instalarlos. Pulsaremos Enter para confirmar.
Nos preguntará acerca del código telefónico Internacional. Escribiremos 34 y pulsaremos Aceptar.
Cuando finalice el proceso quedará por terminada la instalación desde repositorio.
Instalación mediante el compilado de código fuente
Nos desplazaremos a /usr/src , directorio donde guardaremos nuestro código fuente. Después,
descargaremos la última versión menor de Asterisk 1.8 en ese directorio.
# cd /usr/src/ /usr/src# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-1.8-current.tar.gz
Tras descargar el archivo comprimido asterisk-1.8-current.tar.gz procederemos a descomprimirlo.
Después, ingresamos en el nuevo directorio que se habrá creado.
/usr/src# tar -zxvf asterisk-1.8-current.tar.gz /usr/src# cd /asterisk-1.8.28.0
Ya tenemos descargado y descomprimido el código fuente de Asterisk. Para configurarlo e instalarlo necesitaremos de los programas adecuados para hacerlo. Por suerte, Asterisk incluye un instalador
de todo esto junto al código fuente. De este modo, ejecutaremos:
/usr/src/asterisk-1.8.16.0# ./contrib/scripts/install_prereq install
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
13
Cuando nos pregunte por nuestro código telefónico, escribiremos 34 (España). Después, Enter.
En caso de querer modificar el código fuente de Asterisk, este sería el punto para hacerlo.
Procedemos a configurar el programa. Esto evaluará si tenemos todos los programas necesarios para compilar nuestro Asterisk. Además, extraerá información acerca de nuestro Sistema operativo, versión, tipo de CPU y arquitectura. Creará unos ficheros con todas las instrucciones de instalación para nuestra máquina. Si todo está OK, nos aparecerá el símbolo de Asterisk. En Caso contrario, nos
mostrará el error de algún programa dependiente no instalado.
/usr/src/asterisk-1.8.16.0# ./configure
.$$$$$$$$$$$$$$$=.. .$7$7.. .7$$7:. .$$:. ,$7.7 .$7. 7$$$$ .$$77 ..$$. $$$$$ .$$$7 ..7$ .?. $$$$$ .?. 7$$$. $.$. .$$$7. $$$$7 .7$$$. .$$$. .777. .$$$$$$77$$$77$$$$$7. $$$, $$$~ .7$$$$$$$$$$$$$7. .$$$. .$$7 .7$$$$$$$7: ?$$$. $$$ ?7$$$$$$$$$$I .$$$7 $$$ .7$$$$$$$$$$$$$$$$ :$$$. $$$ $$$$$$7$$$$$$$$$$$$ .$$$. $$$ $$$ 7$$$7 .$$$ .$$$. $$$$ $$$$7 .$$$. 7$$$7 7$$$$ 7$$$ $$$$$ $$$ $$$$7. $$ (TM) $$$$$$$. .7$$$$$$ $$ $$$$$$$$$$$$7$$$$$$$$$.$$$$$$ $$$$$$$$$$$$$$$$. configure: Package configured for: configure: OS type : linux-gnu configure: Host CPU : ix86 configure: build-cpu:vendor:os: ix86 : pc : linux-gnu : configure: host-cpu:vendor:os: ix86 : pc : linux-gnu :
Es el momento de compilar los archivos.
/usr/src/asterisk-1.8.16.0# make
En caso de querer seleccionar qué módulos deseamos instalar, y cuales no, ejecutaremos:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
14
/usr/src/asterisk-1.8.16.0# make menuselect
Aquí podremos seleccionar en la pestaña “Core Sound Packages” los archivos de sonido por codec e idioma. Marcaremos las opciones CORE-SOUNDS-ES-WAV, CORE-SOUNDS-ES-ALAW, CORE-
SOUNDS-ES-G729 y CORE-SOUNDS-ES-G722.
Del mismo modo, en “Music On Hold File Packages” seleccionaremos las melodías del tono en
Espera para diferentes codecs. Seleccionaremos MOH-OPSOUND-WAV, -ALAW, -G729 y -G722.
Este es el momento de instalar los archivos. Además, instalaremos algunos ejemplos de
configuración de asterisk.
/usr/src/asterisk-1.8.16.0# make install /usr/src/asterisk-1.8.16.0# make samples /usr/src/asterisk-1.8.16.0# make config
Iniciaremos asterisk ejecutando:
# /etc/init.d/asterisk start
Podremos acceder a la consola a través de:
# asterisk -rvvvvvvvvvvv
Instalación de los archivos de Asterisk
Algunos módulos de Asterisk se instalan de forma individual desde Debian. Archivos de configuración:
# apt-get install asterisk-config
Archivos de voces y buzón de voz:
# apt-get install asterisk-voicemail # apt-get install asterisk-core-sounds-es
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
15
# apt-get install asterisk-core-sounds-es-wav
Archivos de documentación:
# apt-get install asterisk-doc
Por último, reiniciamos el servicio de Asterisk para recargar la configuración:
# service asterisk restart
Taller II
Preparación de una máquina virtual con Debian
Descargaremos en nuestro equipo uno de los múltiples software de virtualización (vmware, kvm,
virtualbox).
Accedemos a la página de VirtualBox, software gratuito en su versión básica perteneciente a Oracle:
https://www.virtualbox.org/wiki/Downloads
Y seleccionamos la opción de VirtualBox 4.x.xx for Windows hosts x86/amd64 en caso de que
actualmente trabajemos con un equipo con Windows XP o superior.
Una vez descargado, procederemos a la instalación del software con las opciones por defecto y lo
ejecutamos.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
16
Si todo ha funcionado correctamente, veremos algo como en la imagen.
Ya tenemos el software de virtualización preparado para crear máquinas virtuales.
Hacemos clic sobre el botón Nueva (“máquina virtual”) y nos aparecerá un asistente.
Asignamos un nombre a nuestra elección que describa la función principal que vaya a tener la
máquina. (Por ejemplo: “Centralita Asterisk”).
En Tipo, seleccionamos el sistema operativo que deseamos instalar. Para nuestra centralita usaremos
Linux.
En Versión, seleccionamos la distribución que instalaremos. En este caso, Debian (32 bits).
Pulsamos en Next (Siguiente) y seleccionamos la memoria RAM de nuestro equipo físico que
queremos asignar a nuestra máquina virtual. 512MB serán más que suficientes. Next.
Crearemos un disco duro virtual, dentro del disco duro real del equipo. Crear.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
17
Seleccionamos VDI, y Next. Seleccionamos Reservado dinámicamente y Next.
Seleccionamos la capacidad que tendrá el disco duro. 8GB y Cerrar.
Nos aparecerá creada nuestra máquina virtual en la
ventana principal de VirtualBox.
Ahora, debemos descargar el sistema operativo que
vamos a instalar en la máquina virtual.
Tal y como hemos seleccionado, descargamos Linux
Debian de 32 bits. Accedemos a:
https://www.debian.org/distrib/
y seleccionamos la versión 32-bit PC netinst iso
(Esta instalación de Linux requerirá conexión a Internet).
Una vez descargada la ISO del sistema operativo, volvemos a nuestro VirtualBox y seleccionamos
nuestra máquina con un sólo clic. Pulsamos en Configuración.
Nos desplazamos hasta la opción Almacenamiento y seleccionamos la opción Vacío del Controlador
IDE. Aquí seleccionaremos nuestra imagen ISO como muestra en la imagen:
Pulsamos
en
Seleccionar
un archivo
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
18
de disco virtual de CD/DVD, y después seleccionamos la ISO descargada.
Nos desplazamos a la pestaña Red en la parte izquierda de la ventana. Cambiaremos el adaptador y
seleccionaremos Conectado a “Adaptador puente”.
Aceptamos, y ya estamos listos para iniciar la instalación. Clic en Iniciar.
Si todo ha funcionado correctamente, aparecerá ventana con nuestra máquina virtual corriendo y con
el asistente de instalación del Sistema operativo en marcha. Esto mismo nos aparecería si
instaláramos Linux desde un CD en un ordenador/servidor físico.
Seleccionamos Install y pulsamos Enter.
Seleccionamos Spanish - Español y Enter.
Territorio España y Enter.
Mapa de teclado Español y Enter.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
19
Como nombre de la máquina escribiremos aula-pbx-xx, donde xx es un número acordado con el
profesor para distinguir a cada una de las máquinas.
Omitimos la opción de Nombre de dominio dejándola en blanco y pulsando Enter
Escribimos la clave de administrador superusuario. Por conveniencia durante el curso utilizaremos root
como contraseña.
Como nombre completo escribimos nuestro nombre, y como Nombre de usuario, por conveniencia, la
inicial de nuestro nombre seguida de nuestro primer apellido.
Como contraseña para este usuario utilizaremos root de nuevo.
Seleccionamos como zona horaria la Península.
A la hora de particionar el disco seleccionaremos la opción que más nos convenga dependiendo de si
la máquina se utilizará como una máquina de pruebas o una de producción.
En el caso de una de pruebas utilizaremos “Guiado - utilizar todo el disco”, y después “Todos los
ficheros en una partición”
En el caso de producción es recomendado seleccionar manualmente el tamaño de cada una de
nuestras particiones.
Finalizamos el particionado.
Nuestra versión, al ser “netinst” necesita de internet para instalar algunos componentes.
Debian nos preguntará el “país de la réplica”, para seleccionar el servidor desde donde descargará los
archivos necesarios.
Seleccionamos España y el servidor predeterminado que nos recomiende. Después nos preguntará
sobre nuestro proxy. En caso de que no tengamos, lo omitimos pulsando Enter.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
20
Rechazaremos la opción de participar en la encuesta.
En la “selección de programas” a utilizar deseleccionaremos todas las opciones salvo “SSH Server”,
que la marcaremos, y “Utilidades estándar del sistema” que la dejaremos marcada. Para hacerlo, nos
desplazaremos con las flechas y marcaremos o desmarcaremos con la barra espaciadora. Después,
pulsamos Enter.
El instalador de Linux procederá a descargar e instalar los programas seleccionados.
Instalaremos el “Cargador de arranque GRUB”.
Cuando la instalación se complete, pulsamos en continuar.
El sistema operativo ya está instalado. La máquina virtual se reiniciará y cargará el sistema.
Iniciaremos nuestra sesión como administradores del sistema con el usuario root, y contraseña root.
(Al escribir la password no se mostrarán carácteres por seguridad)
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
21
Nociones básicas de manejo en Linux/Debian
Comando Ejemplo Función
ls ls /usr/src Mostrar los archivos y directorios de un directorio
cd cd /usr/src Acceder a un directorio
cp cp archivo1.txt archivo1.copia.txt Copiar un fichero
cp -R cp -R /videos /copiavideos Copiar un directorio de forma recursiva
mv mv archivo1.txt /tmp/archivo1.txt Mover un archivo a otro directorio
mv mv archivo1.txt archivo2.txt Cambiar de nombre un archivo o directorio
mkdir mkdir videos Crear un directorio
nano nano archivo1.txt Editar un fichero
pwd pwd Mostrar la ruta actual en consola
halt halt apagar el sistema
reboot reboot reiniciar el sistema
apt-get apt-get install asterisk Instalar un programa desde repositorios
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
22
Preparación del entorno
Instalamos el programa sudo. Confirmaremos el mensaje de instalación pulsando Enter.
# apt-get install sudo
Instalación de Asterisk desde repositorios
Instalación de los archivos de Asterisk
Módulo III: Canales, códecs y troncales IAX2 y SIP
Códecs
Códec es la abreviatura de codificador-decodificador. Describe una especificación desarrollada en
software, hardware o una combinación de ambos, capaz de transformar un archivo con un flujo de
datos (stream) o una señal. Los códecs pueden codificar el flujo o la señal (a menudo para la
transmisión, el almacenaje o el cifrado) y recuperarlo o descifrarlo del mismo modo para la
reproducción o la manipulación en un formato más apropiado para estas operaciones. Los códecs son
usados a menudo en videoconferencias y emisiones de medios de comunicación.
La mayor parte de códecs provoca pérdidas de información para conseguir un tamaño lo más pequeño
posible del archivo destino. Hay también códecs sin pérdidas (lossless), pero en la mayor parte de
aplicaciones prácticas, para un aumento casi imperceptible de la calidad no merece la pena un
aumento considerable del tamaño de los datos. La excepción es si los datos sufrirán otros tratamientos
en el futuro. En este caso, una codificación repetida con pérdidas a la larga dañaría demasiado la
calidad.
En Asterisk utilizamos tanto códecs de audio como de vídeo (para videoconferencias).
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
23
Aunque se podría utilizar cualquier códec existente habitualmente se utilizan los siguientes:
Audio G.711 µ-law (Canadá, Japón y USA) = ulaw G.711 A-law (resto del mundo) = alaw G.722 = g722 (no confundir con g722.1 o g722.2) G.723.1 = g723.1 G.726 = g726 G.729 = g729 GSM = gsm iLBC = ilbc LPC10 = lpc10 Speex = speex ADPCM = adpcm Video H.264 = h264 MPEG4 = mpeg4
A la hora de seleccionar nuestros códecs debemos tener en cuenta:
-El ancho de banda del que disponemos
-La calidad de sonidos (o vídeo) que queremos alcanzar
-Que tanto la centralita, como el dispositivo conectado a ella lo soporten.
Puedes ver los códecs instalados en la centralita Asterisk desde la consola:
aula-pbx-00*CLI> core show codecs
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
24
El códec G.729 es uno de los códecs más compresivos en el mercado. Reduce el tamaño de la
llamada a 8 Kbps frente a los 64 Kbps que utiliza el G.711. Su uso es recomendado cuando el ancho
de banda de la línea no es grande, o está compartido con otro tipo de datos.
Además, la calidad de sonido sigue siendo aceptable.
Aunque la mayoría de los terminales aceptan este códec, Asterisk no lo soporta nativamente al ser un
códec privativo. Tras comprar la licencia puede instalarse y configurarse sin problemas.
Los códecs deben instalarse en el directorio /usr/lib/asterisk/modules/
Y después es necesario recargar la configuración (Por ejemplo:)
aula-pbx-00*CLI> module load codec_g729.so
Protocolo SIP y su configuración en Asterisk
SIP o Protocolo de Inicio de Sesiones es un protocolo estándar para la iniciación, modificación y
finalización de sesiones interactivas de usuario donde intervienen elementos multimedia como el video,
la voz, la mensajería, juegos en línea, etc…
La configuración de cualquier extensión o trunk (troncal) SIP se almacena en el fichero sip.conf
alojado en el directorio /etc/asterisk/
Configurar un peer o una extensión se hace del siguiente modo:
Editamos el archivo sip.conf
# nano /etc/asterisk/sip.conf
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
25
Y añadimos al final del documento:
[101] callerid="Pepito" <101> canreinvite=yes context=internas dtmfmode=auto host=dynamic language=es qualify=5000 secret=CONTRASEÑA type=friend disallow=all allow=aLaw
Donde:
[101] es el usuario o nombre de la extensión callerid es el identificador de llamada secret es la contraseña de la extensión context es el contexto por defecto
Del mismo modo, si queremos configurar un trunk:
[trunk_punto1-punto2] type=friend host= “dirección IP” o dynamic secret=CONTRASEÑA username=trunk_punto1-punto2 context=inbound qualify=5000 nat=route insecure=very
Donde:
[trunk_punto1-punto2] es el usuario o nombre del trunk type determina la relación entre los 2 puntos. Friend permita realizar y recepcionar llamadas en ambos sentidos.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
26
username es el usuario del trunk secret es la contraseña host establece el método de conexión. Al menos uno de los puntos debe realizar la petición de registro contra el otro. En caso de que nuestro punto sea el que hace la petición de registro, escribiremos la IP contra la que nos queremos registrar. En caso de que nuestro punto sea el que recibe l a petición, colocaremos dynamic.
Si nuestra centralita es la que se encarga en hacer la petición de registro, deberemos colocar una línea
extra más al principio del documento sip.conf dentro del contexto [general].
register=trunk_punto1-punto2:CONTRASEÑA@DIRECCIÓN_IP_PUNTO2
Una vez configurado y guardado el documento deberemos recargar la configuración de Asterisk.
Para ello, accedemos a la consola de Asterisk escribiendo:
# rasterisk
Nos aparecerá el CLI, con este formato:
Asterisk 1.8.28.0, Copyright (C) 1999 - 2013 Digium, Inc. and others. Created by Mark Spencer <[email protected]> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Connected to Asterisk 1.8.28.0 currently running on aula-pbx-00 (pid = 3109) aula-pbx-00*CLI>
Recargamos la configuración:
aula-pbx-00*CLI> sip reload
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
27
Protocolo IAX2 y su configuración en Asterisk
IAX2, o Protocolo de Intercambio entre Asterisk v.2 (Inter-Asterisk eXchange protocol) es un protocolo
utilizado por Asterisk que une mediante Trunks (troncales) dos centralitas Asterisk, o una centralita
Asterisk y un terminal que soporte el protocolo. Es de código abierto y cualquiera puede implementarlo
en sus sistemas.
Configurar trunk se hace del siguiente modo:
Editamos el archivo iax.conf
# nano /etc/asterisk/iax.conf
Y añadimos al final del documento:
[trunk_asterisk1-asterisk2] type=friend auth=md5 host= “dirección IP” o dynamic secret=CONTRASEÑA context=internas qualify=5000 disallow=all allow=alaw requirecalltoken=no
Donde:
[trunk_asterisk1-asterisk2] es el usuario o nombre del trunk type determina la relación entre los 2 puntos. Friend permita realizar y recepcionar llamadas en ambos sentidos. secret es la contraseña host establece el método de conexión. Al menos uno de los puntos debe realizar la petición de registro contra el otro. En caso de que nuestro punto sea el que hace la petición de registro, escribiremos la IP contra la que nos queremos registrar. En caso de que nuestro punto sea el que recibe la petición, colocaremos dynamic.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
28
Si nuestra centralita es la que se encarga en hacer la petición de registro, deberemos colocar una línea
extra más al principio del documento iax.conf
register => trunk_asterisk1-asterisk2:CONTRASEÑA@DIRECCIÓN_IP_PUNTO2
Una vez configurado y guardado el documento deberemos recargar la configuración de Asterisk.
Para ello, accedemos a la consola de Asterisk escribiendo:
# rasterisk Asterisk 1.8.28.0, Copyright (C) 1999 - 2013 Digium, Inc. and others. Created by Mark Spencer <[email protected]> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Connected to Asterisk 1.8.28.0 currently running on aula-pbx-00 (pid = 3109) aula-pbx-00*CLI>
Recargamos la configuración:
aula-pbx-00*CLI> iax2 reload
Preparación del dialplan básico
La configuración de dialplan se encuentra en su mayor parte en un archivo localizado en
/etc/asterisk/extensions.conf
El dialplan consiste en una serie de contextos, en los cuales existen extensiones que tienen varias
prioridades.
Las extensiones de Asterisk son diferentes a las extensiones tradicionales de una PBX, no solo
incluyen números telefónicos, pueden ser de texto o ser alguna de las extensiones especiales o por
defecto.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
29
Esta es la sintaxis básica del archivo:
[contexto] ;esto es un comentario exten => extensión,prioridad,Aplicación(Funciones)
Y este es un pequeño ejemplo de la estructura:
[general] ... [globals] ... [contexto] exten => 101,1,Answer() exten => 101,n,Dial(SIP/101) exten => 101,n,Hangup()
Éste pequeño dialplan permite llamar a la extensión 101.
De la misma forma, se puede llamar a un número de teléfono externo a nuestra red si tenemos un
trunk contra un operador SIP o una PSTN.
[general] ... [globals] ... [contexto] exten => 123,1,Dial(SIP/nombre_del_trunk/902101010)
Es importante notar que la extensión 123 no equivale a marcar dicha extensión, marcar 123 equivale a
empezar a ejecutar la aplicación de prioridad 1.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
30
[general] ... [globals] ... [contexto] exten => _XXX,1,Dial(SIP/${EXTEN})
_XXX es un comodín que utiliza asterisk como extensión. Al colocar la barra baja ”_” indicamos que
será un valor indicado como una expresión regular. Después, cada una de las X sustituirá a un valor
numérico.
X concuerda con cualquier dígito del 0-9 Z concuerda con cualquier dígito del 1-9 N concuerda con cualquier dígito del 2-9 [1237−9] concuerda con 1,2,3,7,8,9 . comodín, concuerda con uno o más caracteres
${EXTEN} es una variable estándar y especial en Asterisk que almacena la extensión que se marco.
De esta forma, si llamamos a la extensión 102, la llamada ejecutará Dial(SIP/102). Si se llama a la 154,
se ejecutará Dial(SIP/154).
[general] ... [globals] ... [contexto] include => otrocontexto exten => ext1,2,Dial(${EXTEN}) exten => ext1,1,Set(VAR="Hola!")
Include se encarga de añadir a un contexto las reglas de otro.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
31
Set se encarga de configurar variables.
Por último, destacar que las prioridades en este caso están invertidas. Aún así, Asterisk seguirá
siempre primero la prioridad 1, y después la prioridad 2 independientemente de nuestro orden.
[entrantes]
exten => 902945720,1,Set(CONTADOR=0) ;Establecemos variables exten => 902945720,n,While($[${CONTADOR} < 10]) ;mientras contador sea menor que 10 exten => 902945720,n,Set(CONTADOR=$[${CONTADOR} + 1]) ;suma 1 exten => 902945720,n,Queue(agentes) ; llama exten => 902945720,n,EndWhile
Enrutamiento a la red PSTN: ISDN BRI, T1/E1, y FX0/FXS
FXS y FXO son los nombres de los puertos usados por las líneas telefónicas analógicas (también
denominados POTS – Servicio Telefónico Básico y Antiguo)
FXS – La interfaz de abonado externo es el puerto que efectivamente envía la línea analógica al
abonado. En otras palabras, es el “enchufe de la pared” que envía tono de marcado, corriente para la
batería y tensión de llamada
FXO – Interfaz de central externa es el puerto que recibe la línea analógica. Es un enchufe del teléfono
o aparato de fax, o el enchufe de su centralita telefónica analógica. Envía una indicación de
colgado/descolgado (cierre de bucle). Como el puerto FXO está adjunto a un dispositivo, tal como un
fax o teléfono, el dispositivo a menudo se denomina “dispositivo FXO”.
FXO y FXS son siempre pares, es decir, similar a un enchufe macho/hembra.
Sin una centralita, el teléfono se conecta directamente al puerto FXS que brinda la empresa telefónica.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
32
FXS / FXO sin Centralita
Si tiene centralita, debe conectar las líneas que suministra la empresa telefónica a la centralita y luego
los teléfonos a la centralita. Por lo tanto, la centralita debe tener puertos FXO (para conectarse a los
puertos FXS que suministra la empresa telefónica) y puertos FXS (para conectar los dispositivos de
teléfono o fax)
FXS / FXO con Centralita
FXS, FXO y VOIP
Cuando decida adquirir equipos que le permitan conectar líneas telefónicas analógicas con una
centralita telefónica VOIP, teléfonos analógicos con una centralita telefónica VOIP o las Centralitas
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
33
tradicionales con un suministrador de servicios VOIP o unos a otros a través de Internet, se cruzará
con los términos FXS y FXO.
Pasarela FXO
Para conectar líneas telefónicas analógicas con una centralita IP, se necesita una pasarela FXO. Ello
le permitirá conectar el puerto FXS con el puerto FXO de la pasarela, que luego convierte la línea
telefónica analógica en una llamada VOIP.
RDSI es una red que procede por evolución de la red telefónica existente (a veces llamado POTS en
este contexto), que al ofrecer conexiones digitales de extremo a extremo permite la integración de
multitud de servicios en un único acceso, independientemente de la naturaleza de la información a
transmitir y del equipo terminal que la genere.
Acceso Básico
El acceso básico, conocido también por las siglas inglesas BRI (Basic Rate Interface), consiste en dos
canales B full-duplex de 64 kbit/s y un canal D full-duplex de 16 kbit/s. Luego, la división en tramas, la
sincronización, y otros bits adicionales dan una velocidad total a un punto de acceso básico de 192
kbit/s.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
34
2B+D+señalización+framing
Acceso Primario
El acceso primario, también conocido por las siglas inglesas PRI (Primary Rate Interface) está
destinado a usuarios con requisitos de capacidad mayores, tales como oficinas, empresas con PBX
digital o red local. Debido a las diferencias en las jerarquías de transmisión digital usadas en distintos
países, no es posible lograr un acuerdo en una única velocidad de los datos.
Estados Unidos, Japón y Canadá usan una estructura de transmisión basada en 1,544 Mbit/s, mientras
que en Europa la velocidad estándar es 2,048 Mbit/s. Típicamente, la estructura para el canal de 1,544
Mbit/ses 23 canales B más un canal D de 64 kbit/s y, para velocidades de 2,048 Mbit/s, 30 canales B
más un canal D de 64 kbit/s:
30B(64)+D(64)+señalización+framing(64) - 2 048 kbit/s - Europa.
23B(64)+D(64)+señalización+framing(8) - 1 544 kbit/s - Estados Unidos, Japón y Canadá.
Troncal SIP con operador
De igual forma que una centralita puede registrarse contra un teléfono, un sofphone, u otra centralita
mediante un (troncal) trunk SIP, puede registraste contra un Operador de telefonía VoIP.
Habitualmente los operadores de telefonía IP proporcionan Trunks SIP aunque pueden también
proporcionar Trunks IAX2.
El operador es el que deberá indicarte los parámetros de configuración necesarios para la
configuración del trunk, incluyendo los códecs que soportan.
Los trunks se configurarán como ya vimos en el fichero /etc/asterisk/sip.conf
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
35
Este es un ejemplo:
register=USUARIO:CONTRASEÑA@DIRECCIÓN_IP_PROVEEDOR
[operador1] type=friend host= DIRECCIÓN_IP_PROVEEDOR secret=CONTRASEÑA username=USUARIO context=inbound qualify=5000 nat=route insecure=very diasllow=all allow=g729 allow=aLaw
Protocolos de señalización DTMF En telefonía, el sistema de marcación por tonos, también llamado sistema multifrecuencial o DTMF (Dual-Tone Multi-Frequency) es usado para la señalización de telecomunicaciones sobre líneas telefónicas analógicas en la banda de frecuencia vocal entre teléfonos u otros equipos de comunicaciones y la central telefónica
Inband
La señal es transmitida a través de sonidos en la conversación de voz, y es audible por los interlocutores. Solo codecs sin compresión como g711 alaw o ulaw son capaces de transmitir la señal correctamente. En ciertas ocasiones, las voces femeninas son reconocidas como tonos DTMF por los sistemas. Las líneas analógicas sólo soportan Inband.
RFC2833
Los tonos DTMF son transmitidos a través de paquetes RTP junto a los paquetes de voz de una conversación. No son audibles, ya que son digitales. La mayoría de implementaciones Asterisk utulizan este protocolo.
SIP INFO
Los tonos DTMF son enviados a través del protocolo de señalización SIP. Este método de envío no está soportado por todos los dispositivos y centralitas. La mayoría de troncales SIP no lo permiten.
DTMF sobre troncales IAX
En los trunk IAX, al igual que los datos de voz, todo es transmitido a través de un mismo puerto.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
36
Taller III
Configuración de 2 extensiones SIP
Preparación del dialplan básico
Configuración SIP en asterisk
Configuración SIP del terminal
Configuración SIP de softphone
Pruebas de llamadas internas
Configuración de troncal IAX
Configuración IAX en asterisk
Pruebas de llamadas entre centralitas asterisk
Módulo IV: Configuración avanzada de dialplan
Conceptos clave Estas son las aplicaciones básicas a utilizar en un dialplan de Asterisk:
Aplicación Argumentos Descripción
Answer Contesta la llamada
Wait (segundos) Espera X segundos
Busy Da tono de ocupado
Hangup Cuelga la llamada
Goto (contexto,extensión,prioridad) Cambio a / ir a
GotoIfTime (<time range>,<days of week>,<days of
month>,<months>?[labeliftrue][:labeliffalse]) Si es la fecha indicada, Goto a X, si no, Goto a Y (Anexo*)
Playback locución Reproduce el archivo locución sin posibilidad de marcado numérico
Background locución Reproduce el archivo locución pudiendo marcar con el teclado numérico
WaitExtend segundos Tiempo de espera para marcar una opción
Dial PROTOCOLO/extension Llamar a una extensión
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
37
GotoIfTime (Anexo) <time range>= <hour>':'<minute>'-'<hour>':'<minute> | "*" <days of week> = <dayname> | <dayname>'-'<dayname> | "*" <dayname> = "sun" | "mon" | "tue" | "wed" | "thu" | "fri" | "sat" <days of month> = <daynum> | <daynum>'-'<daynum> | "*" <daynum> = a number, 1 to 31, inclusive <hour> = a number, 0 to 23, inclusive <minute> = a number, 0 to 59, inclusive <months> = <monthname> | <monthname>'-'<monthname> | "*" <monthname> = "jan" | "feb" | "mar" | "apr" | "may" | "jun" | "jul" | "aug" | "sep" | "oct" | "nov" |
"dec"
Retención y transferencia de las llamadas Algunas de las funciones más utilizadas por los usuarios en una centralita son la de aparcar (retener una llamada) y transferir una llamada de un terminal a otro. El archivo alojado en /etc/asterisk/features.conf nos permite configurar entre otras estas funcionalidades. Para retener llamadas debemos especificar a asterisk una extensión que servirá para ello, y un rango de extensiones que irán ocupando los diferentes usuarios conforme aparquen llamadas simultáneamente. Además, debemos definir el contexto al que accederán los usuarios cuando aparquen las llamadas. Todo ello por defecto debería configurarse del siguiente modo:
[general] parkext => 700 parkpos => 701-720 context => parkedcalls
Después deberás habilitar estas funcionalidades en /etc/asterisk/extensions.conf en el momento de realizar el Dial en el contexto correspondiente.
exten => _XXX,1,Dial(SIP/${EXTEN},K)
La opción K es la que nos habilitará la opción de permitir aparcar llamadas desde el teclado. Puedes habilitar la transferencia de llamadas de una extensión a otra configurando los parámetros disponibles en el contexto [feauremap] Existen 2 tipos de transferencias, la atendida y la desatendida. Mientras que en la atendida los usuarios hablan antes de terminar la transferencia, en la desatendida la llamada se transfiere directamente. Transferencia atendida:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
38
Extensión 1 recibe llamada Extensión 1 marca el código de transferencia atendida Extensión 1 marca la extensión 2 Extensión 1 habla con la extensión 2 Extensión 1 cuelga Extensión 2 recoge la llamada transferida Transferencia desatendida: Extensión 1 recibe llamada Extensión 1 marca el código de transferencia atendida Extensión 1 marca la extensión 2
Extensión 2 recoge la llamada transferida A continuación, un ejemplo
[featuremap] atxfer => # ; Transferencia atendida blindxfer => *1 ; Transferencia desatendida disconnect => *2
Después deberás habilitar estas funcionalidades en /etc/asterisk/extensions.conf en el momento de realizar el Dial en el contexto correspondiente.
exten => _XXX,1,Dial(SIP/${EXTEN},TK)
La opción T es la que nos habilitará la opción de permitir transferencias a través del teclado. Puedes encontrar más información acerca de la transferencia de llamadas y de la función de aparcado en: http://www.asteriskdocs.org/en/3rd_Edition/asterisk-book-html-chunk/AdditionalConfig_id256654.html Si deseas habilitar la captura de llamadas debes descomentar la línea (quitar ; )
pickupexten = *8
De este modo, una extensión podrá capturar marcando *8 + número de extensión la llamada de esa extensión cuando esté sonando. En caso de que no funcione desde nuestros terminales, podemos incluir lo siguiente en nuestro /etc/asterisk/extensions.conf en el contexto correspondiente (internas).
exten => *8XXX,1,Pickup(${EXTEN:2}) exten => *8XXX,n,Hangup
Podemos también capturar llamadas por grupos de tal manera que todos los integrantes de un grupo puedan capturar las llamadas de cualquier extensión de ese grupo.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
39
Puedes definir los grupos de captura en cada una de las extensiones definidas en /etc/extensions/sip.conf Por ejemplo: Extensiones ventas: 1000 - 1001 - 1002 Extensiones soporte: 2000 - 2001 - 2002 Extensiones compras: 3000 - 3001 - 3002 Extensión oficina dirección: 4000 Queremos que cada trabajador de cada departamento pueda capturar las llamadas de los teléfonos del departamento en que trabaja y que desde la oficina de dirección se pueda capturar las llamadas de cualquier extensión de cualquier departamento. Para que esto sea posible tenemos que añadir dos parámetros en la configuración de cada extensión:
Callgroup
Pickupgroup
Con el primero se define a que grupo pertenece la extensión, con el segundo, de cuales grupos la extensión puede capturar las llamadas. Abrimos el sip.conf y añadimos estos valores para cada extensión: [100] callgroup=1 pickupgroup=1 [101] callgroup=1 pickupgroup=1 [102] callgroup=1 pickupgroup=1 [200] callgroup=2 pickupgroup=2 [201] callgroup=2 pickupgroup=2 [202] callgroup=2 pickupgroup=2 [300] callgroup=3
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
40
pickupgroup=3 [301] callgroup=3 pickupgroup=3 [300] callgroup=3 pickupgroup=3 [400] callgroup=4 pickupgroup=1,2,3,4
Buzón de voz Actualmente concebimos el buzón de voz como un servicio imprescindible en el mundo de la telefonía. Por suerte, los contestadores automáticos han quedado obsoletos y se han convertido en un módulo de software que almacena en el disco duro los mensajes. La configuración principal del buzón de voz se encuentra en /etc/asterisk/voicemail.conf En este fichero se pueden configurar múltiples valores. La configuración de envío por email de los mensajes en el buzón, el tiempo máximo de silencio para dar por terminada la grabación del mensaje, el número máximo de intentos para introducir el PIN al consultar tu buzón… Una vez configuradas las opciones generales a nuestro criterio, deberemos configurar la zona de horario.
[zonemessages] central=Europe/Madrid|'vm-received' Q 'digits/at' IMp
De este modo definimos el horario Español a las locuciones y mensajes. Después, en [default] definiremos cada uno de los buzones. Por ejemplo:
101 => 0000,Oscar Perez,[email protected],,attach=yes|delete=1 102 => 0000,Diego Frances,[email protected],,attach=yes|delete=1 103 => 0000,Att Cliente,[email protected],,attach=yes|delete=1
Después, asociaremos cada buzón definido a cada una de las extensiones. Para ello, iremos a las extensiones configuradas en /etc/asterisk/sip.conf y añadiremos la opción mailbox y su número de buzón a cada una de las extensiones deseadas.
[101] callerid="Pepito" <101>
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
41
canreinvite=yes context=internas dtmfmode=auto host=dynamic language=es mailbox=101@default qualify=5000 secret=CONTRASEÑA type=friend disallow=all allow=aLaw
Ahora sólo nos falta definir una extensión a la que cuando llamen los usuarios salte el menú del buzón para escuchar tus mensajes. En el contexto [internas] de extensions.conf incluiremos el contexto [voicemail] y lo crearemos. Además, modificaremos la extensión dinámica _XXX para que a los 20 segundos sin responder, o al estar ocupada, salte el buzón del voz de la extensión.
[internas] exten => 3000,1,Answer exten => 3000,2,Wait(1) exten => 3000,3,VoicemailMain(@default) exten => 3000,4,Hangup exten => _XXX,1,Dial(SIP/${EXTEN},20) exten => _XXX,2,VoiceMail(${EXTEN}@default) exten => _XXX,3,Hangup
Conferencias de audio Las conferencias de audio, o comúnmente conocidas como salas de conferencia nos permiten hacer una llamada con más de 2 usuarios a la vez. Dependiendo de la versión de Asterisk, encontraremos integrado MeetMe o Confbridge. En caso de MeetMe:
Se configuran en el archivo /etc/asterisk/meetme.conf Por defecto este módulo no viene marcado en la selección de módulos (make menuselect) cuando instalamos Asterisk compilando. Además, este módulo depende de dahdhi, un software que no se instala por defecto. Su instalación es tan sencilla como ejecutar:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
42
# apt-get install dahdi # service asterisk restart
En el contexto [rooms] han de definirse las salas con su contraseña de forma opcional. Por ejemplo:
[rooms] ; nºsala , pin conf => 3001 conf => 3002,1234
Después, en el contexto de [internas] definiremos las extensiones para que llamen a la sala:
[internas] …… …… …… exten => _300[12],1,Answer exten => _300[12],2,Wait(1) exten => _300[12],3,MeetMe(${EXTEN},M(default)) exten => _300[12],4,Hangup
De esta forma, siempre que se llame a la extensión 3001 o a la extensión 3002 se accederá a la sala de espera correspondiente. Como puedes observar, al comando MeetMe se le pueden asignar argumentos como M(default). M define que si sólo hay un participante en la sala, suene Música en espera y entre paréntesis definimos que sea la de por defecto. Hay más argumentos posibles recogidos en: http://www.voip-info.org/wiki/view/Asterisk+cmd+MeetMe
En caso de Confbridge: La sintaxis de la aplicación para el dialplan es: ConfBridge([confno][,bridge_profile[,user_profile[,menu]]])
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
43
confno: el número que se asigna a la sala de conferencia bridge_profile: el perfil que queremos utilizar para esta conferencia. Si no se
especifica un valor, se utilizará el perfil [default_bridge] presente en el archivo de configuración predefinido user_profile: el perfil de los usuarios que accederán a la conferencia. Si no se
especifica un valor, se utilizará el perfil [default_user] presente en el archivo de configuración predefinido menu: el menú que los usuarios podrán utilizar cuando estén conectados a la
conferencia En el archivo de configuración de confbridge (confbridge.conf) configuramos un rol Usuario y un rol Administrador
[general] [admin_user] type=user pin=5555 marked=yes admin=yes music_on_hold_when_empty=yes announce_user_count=yes [default_user] type=user pin=1234 wait_marked=yes end_marked=yes music_on_hold_when_empty=yes announce_user_count=yes [default_bridge] type=bridge max_members=10 Otras opciones configurables en el archivo confbridge son:
[general] ; [conf_test] ; se define la conferencia type=bridge ; type indica que tipo de perfil vamos a configurar. Con bridge una
conferencia, con user un usuario y con menu un nuevo menú max_members=20 ; número máximo de usuario que pueden participar en la
conferencia record_conference=no ; no grabamos la conferencia
internal_sample_rate=auto ; podemos definir la frecuencia de muestreo de la
conferencia. Con auto Asterisk adusta la frecuencia en modo de brindar la mejor calidad audio posible
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
44
mixing_interval=20 ; define el intervalo (en milisegundos) del mixing del audio de la
conferencia. Valores más bajos aumentan la calidad pero consuma más recursos, valores altos bajan la calidad audio y el consumo de recursos. Posibles valores son: 10,20,40,80 sound_join= beep ; la locución que se escuchará cuando un nuevo usuario entra en
la conferencia sound=leave= beeperr; la locución que se escuchará cuando un usuario abandona la conferencia Terminada esta parte, configuramos un perfil de usuario: [user_test] ; se define el nombre del perfil de usuario type=user ; perfil de usuario
admin=no ; este perfil es para usuarios normales
marked=no ; definimos si el usuario es marcado o no
startmuted=no ; definimos si el usuario entrará a la conferencia en modo mudo o no
music_on_hold_when_empty=yes ; si es el único usuario de la conferencia escuchará la música de espera denoise=yes ; se define que se aplicará un filtro para eliminar el ruido de fondo del
usuario que está hablando. Como ya hemos dicho está funcionalidad de apoya al codec Speex En el fichero de configuración del dialplan (extensions.conf) configuramos los accesos a las salas de conferencia incluyendo el rol.
[internas] … ;CONFERENCE - GUEST exten => 3001,1,Progress() exten => 3001,2,Wait(1) exten => 3001,3,ConfBridge(1,default_bridge,default_user) ;CONFERENCE - ADMIN exten => 3999,1,Progress() exten => 3999,2,Wait(1) exten => 3999,3,ConfBridge(1,default_bridge,admin_user) Para finalizar, recargaremos la configuración de asterisk simplemente reiniciándolo con service asterisk restart
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
45
El administrador debe introducir el PIN # 5555, mientras que el invitado debe marcar el PIN # 1234.
Las colas de espera y los agentes Una de las funciones más demandadas por las empresas de atención al cliente es la de recepción de llamadas en Colas de Espera. Las llamadas entran a una cola y los agentes libres se encargan de recepcionar las llamadas en espera según criterios configurables. El archivo de configuración principal de las colas es /etc/asterisk/queues.conf Aquí definiremos cada una de las colas y a los agentes pertenecientes de cada cola. Ejemplo:
[dpto-administracion] music=default strategy=linear timeout=20 retry=1 wrapuptime=0 ringinuse=no maxlen = 0 announce-frequency = 0 announce-holdtime = no eventwhencalled=yes context= member => SIP/116,1 member => SIP/117,2 member => SIP/118,2
La cola tiene una estrategia “linear”, es decir… suena una extensión tras otra cada 20 segundos si nadie responde (timeout) o si una extensión comunica. Cuando termina el ciclo (retry) pasa al siguiente paso definido en el dialplan. Como se puede observar los miembros cuentan con prioridades. Si 2 o más miembros tienen la misma prioridad, los terminales sonarán al mismo tiempo. Otra estrategia utilizada de forma habitual es “ringall”. En la que la llamada hará sonar las extensiones de todos los agentes al mismo tiempo.
[cola-todos] music=default
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
46
strategy=ringall timeout=20 retry=1 wrapuptime=0 ringinuse=no maxlen = 0 announce-frequency = 0 announce-holdtime = no eventwhencalled=yes context= member => SIP/116 member => SIP/117 member => SIP/118
Ahora, pasemos a una más completa:
[cola-attcliente] timeout=10 strategy=leastrecent ringinuse=no retry=5 music=default maxlen=10 leavewhenempty=no joinempty=Yes eventwhencalled=yes eventmemberstatus=no context= announce-holdtime=yes announce-position=yes announce-frequency=60 queue-youarenext=queue-youarenext queue-thereare=queue-thereare queue-thankyou=queue-thankyou queue-callswaiting=queue-callswaiting queue-holdtime=queue-holdtime queue-minutes=queue-minutes queue-seconds=queue-seconds queue-lessthan=queue-less-than wrapuptime=0 member => SIP/101,1 member => SIP/102,1 member => SIP/103,1 member => SIP/104,1
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
47
member => SIP/105,1
En esta cola la estrategia es distinta. ‘leastrecent’ hace que suenen las extensiones de los agentes por orden del que más tiempo lleva sin coger una llamada al que menos .Además suena una locución anunciando cuantas personas hay por delante tuya y una estimación de tiempo para ser atendido. Podéis consultar más acerca de todos los parámetros posibles en: http://www.wikiasterisk.com/index.php/Colas
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
48
IVR IVR corresponde a las siglas de Interactive Voice Response. Se trata básicamente a la configuración de dialplan que permite interacción con el usuario mediante locuciones y tonos de marcación (teclado numérico). Aquí mostramos un pequeño ejemplo de IVR. Las llamadas entrantes del número 976106620 actuarán de la siguiente forma:
[entrantes] include => internas exten => 976106620,1,Answer() exten => 976106620,2,Wait(2) exten => 976106620,3,GotoIfTime(08:00-20:00,mon-fri,*,*?laboral:festivo) exten => 976106620,n(laboral),Playback(bienvenida) exten => 976106620,n,Background(marque-una-opcion) exten => 976106620,n,WaitExten(5) exten => 976106620,n,Dial(SIP/101) exten => 976106620,n,Busy() exten => 976106620,n,Hangup exten => 976106620,n(festivo),Playback(fueradehorario) exten => 976106620,n,Busy exten => 976106620,n,Hangup exten => 1,1,Dial(SIP/101) exten => 1,2,Hangup exten => 2,1,Dial(SIP/102) exten => 2,2,Hangup exten => i,1,Playback(invalida) ; extensión inválida exten => i,n,Goto(976106620,1) exten => t,1,Playback(hastaluego) ; Tiempo agotado exten => t,n,Hangup()
En caso de que se cumpla el horario, pasará a la prioridad con la etiqueta laboral, en caso contrario saltará a la etiqueta festivo. Si es laboral, sonará una locución de bienvenida, otra para marcar una opción y esperará que se marque una u otra opción. Cómo está incluido el contexto de internas, podrán marcar también extensiones a parte de las opciones 1 y 2. Los archivos de audio correspondientes a las locuciones han de colocarse en un directorio que difiere dependiendo de la instalación. Como hemos indicado antes, estos son los directorios de Asterisk:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
49
Ruta Descripción
/etc/asterisk Archivos de configuración
/usr/sbin Ejecutables binarios
/var/log/asterisk Mensajes de error, logs y CDR
/var/lib/asterisk (compilado) Documentación, Música en espera, Sonidos
/usr/share/asterisk (repositorio) Documentación, Música en espera, Sonidos
Puedes consultarlos o modificarlos siempre en /etc/asterisk/asterisk.conf Dentro de /var/lib/asterisk/sounds o /usr/share/asterisk/sounds encontraremos ya instalados los sonidos en Inglés en la carpeta “en”. Podemos descargar las locuciones alternativas a las oficiales en español de la siguiente forma:
# mkdir es # cd es # wget http://www.voztovoice.org/tmp/asterisk-sounds-es.tar # tar -xf asterisk-sounds-es.tar # rm asterisk-sounds-es.tar
Si queremos añadir locuciones personalizadas, como la que se indica en el IVR
exten => 976106620,n(laboral),Playback(bienvenida)
Necesitaremos crear un archivo de audio con la locución y guardarlo en alguno de los formatos que soporta nuestra Asterisk, dependiendo de los codecs instalados. Todas las Asterisk soportan de forma nativa los archivos WAV codificados de la siguiente forma: 8Khz 16bit Mono Una aplicación que nos permitirá grabar, editar y guardar nuestras locuciones en Windows es Nero Wave Editor, recientemente añadida a la lista de aplicaciones gratuitas: http://www.nero.com/esp/downloads/ Una vez creada la locución, deberemos colocarla en la carpeta sounds del directorio antes comentado. Al ser personalizada no debe estar dentro de “en” o “es”, sino fuera de ellas.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
50
Es posible convertir los ficheros de sonido de uno a otro formato desde Asterisk, siempre que los códec de origen y destino estén correctamente instalados y cargados. Para convertir un archivo a otro formato, utilizaremos el siguiente formato de comando desde la consola asterisk:
aula-pbx-00*CLI> file convert /tmp/origen.alaw /tmp/destino.g729
Taller III
Configuración avanzada de dialplan
Módulo V: Interfaces Gráficas
Visión General Actualmente existen muchos paneles de control disponibles que son capaces de manejar Asterisk de forma
visual.
Son fácilmente categorizables según varios criterios.
Software libre o cerrado: Las interfaces gráficas libres disponen de unas licencias poco restrictivas y su
uso es gratuito. Las interfaces gráficas cerradas necesitan de licencia y generalmente son de pago.
Básicos o complejos: Los paneles básicos permiten configurar lo esencial en una centralita mientras que
sus opuestos son altamente complejos y alcanzan un grado de configuración muy alto.
Sencillos o complicados: A diferencia de complejos, los paneles complicados son difíciles de utilizar y hay
que tener claras las bases de asterisk para poder utilizarlos.
Lamentablemente, no existe una opción clara que una las variables de Software Libre + Complejo + Sencillo, es decir, no hay paneles gratuitos con alto nivel de configuración pero fáciles de utilizar.
En la actualidad podemos encontrar distintas distribuciones basadas en Asterisk que cuentan con su propio panel de administración gráfico. Estas son algunas de las disponibles actualmente, que pueden ser utilizadas de forma gratuita: DigAnTel. Aquí tenemos una release de Linux totalmente destinada a ofrecer al usuario un sistema de telefonía VoIP gratuito y de gran estabilidad y seguridad, ya que está basado en una muy lograda combinación entre CentOS, Asterisk y FreePBX. Ofrece funcionalidades como VoicePulse, Openfire, vtigerCRM, OpenVPN o Postfix, así como un módulo para soporte automatizado Polycom. La simpleza y eficiencia de su instalación la hacen la más recomendada para los que se inician en este campo, ya que no requiere conocimiento alguno de cómo funcionan Asterisk o Linux, por lo que ya no hay excusas para no probarla.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
51
Aunque la última release data de 2012, el soporte a los paquetes que construyen la distribución sigue activo, por lo que aún tiene mucha guerra por dar. La podemos encontrar únicamente disponible para arquitecturas i386. AsteriskNOW. Casi podríamos decir que es la distribución por excelencia (con perdón de FreePBX) a la hora de elegir una distribución sobre la que desplegar una plataforma de comunicaciones VoIP. En ella podemos encontrar los paquetes preinstalados de Asterisk (como no podía ser de otra forma...), la interfaz gráfica AsteriskGUI, el framework DAHDI, así como los componentes necesarios para que ejecutemos correctamente toda la instalación y configuración de nuestra plataforma. Como paquete opcional nos ofrece la interfaz gráfica de FreePBX por si alguien viene de migrar su sistema y no se encontrase cómodo, todo un detalle. Basado en Fedora y CentOS, nos ofrece una estabilidad y compatibilidad de paquetería para que nos sea más fácil el desarrollo o instalación de software de otra índole que queramos añadir al sistema. Su instalación no es tan simple como la de DigAnTel, pero nos ofrecen desde su web una guía de inicio rápido, alojada en su detallada Wiki Asterisk. AsteriskNOW está disponible para sistemas con arquitecturas de 32 y 64 bits. FreePBX. Bajo el compendio de Linux, Apache, MySQL y LAMP encontramos esta distribución que integra Asterisk, junto con una interfaz gráfica orientada al usuario estándar y muy intuitiva (FreePBX) que ellos mismos han desarrollado. Se ofrece de forma gratuita y lista para poner en producción. A la repercusión de esta distribución, ayuda significativamente que otras tantas la integren en sus propios paquetes preinstalados, y que mejor que irnos a una distribución mantenida por aquellos que desarrollaron dicha interfaz. Esta release modular, podemos ir completándola a medida que vayamos necesitando según qué recursos, pudiendo añadir módulos de BlackLists, de enrutamiento entrante/saliente, colas de llamadas, buzones de voz VoIP, de respuesta de voz interactiva (IVR), aunque algunos módulos (los menos) parecen no terminar de estar bien depurados y arrojan algunos fallos durante su funcionamiento o implementación. FreePBX Distro está disponible en 32 y 64 bits. Elastix. Desde que en 2006 apareciese como una interfaz para gestionar tareas de Asterisk, Elastix ha evolucionado gratamente hasta llegar a ofrecernos una solución "todo en uno", siendo posible durante la instalación, además de los paquetes base para el despliegue de la plataforma VoIP, otros complementos que mejoran o amplían las funcionalidades de la misma como la interfaz de FreePBX, MySQL, vTiger CRM, soporte para fax Hylafax o un sistema de mensajería instantánea como OpenFire. Debido a todo esto y a la gran comunidad que tiene detrás, es la segunda solución más extendida (tras AsteriskNOW) para la implementación de estos sistemas de comunicación que nos ocupa. También es interesante comentar que al ser una solución "todo en uno" desde la propia instalación, en esta se incluyen paquetes que si a posteriori no vamos a utilizar tendremos que eliminarlos a mano, y no son pocos los que se instalan queramos o no... Esto repercute negativamente de otra forma, ya que tanta paquetería presenta múltiples errores de seguridad, que si bien es fácil de solucionar, no deja de ser algo reseñable. Podemos encontrarla disponible para arquitecturas de 32 y 64 bits. TrixBox. (Fonality)
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
52
Es la última de esta lista y no por casualidad. La versión free que se ofrecía a los usuarios hace un par de años ya no está activa, por lo que únicamente se puede encontrar de pago o bien buscar una versión obsoleta de dicho sistema. El hecho de mencionarla es por la veteranía que podremos encontrar en sus sistemas, donde años de experiencia han dado lugar a un sistema muy estable y más que probado para obtener grandes resultados en entornos de producción. Aunque deberíamos acostumbrarnos a dejar de llamarla Trixbox, ya que su nombre actual es Fonality. Como principal novedad (a parte de las actualizaciones en los fork, gui's, kernels de cualquier distribución al uso) podemos encontrar la optimización para su despliegue en un Cloud, cosa de agradecer dada la tendencia en estos días a 'cloudolizarlo' casi todo. También cabe destacar la integración con diferentes dispositivos móviles pudiendo realizar o recibir llamadas desde nuestro teléfono móvil siempre usando el número de teléfono de la empresa. Interesante también la opción que integra que ellos mismos denominan "Presente, chatea", donde podremos asignar algunas personas de la plantilla empresarial para que se encarguen de un chat en vivo con el que poder gestionar más fácilmente las incidencias de los clientes, u ofrecer información a posibles clientes.
Introducción a FreePBX Las Centralita de código abierto Asterisk proporciona un producto a coste económico cero. Corren sobre el sistema operativo Linux y en general configurar una Centralita Asterisk a pelo es complicado. FreePBX es una solución que integra métodos gráficos para configurar una Centralita Asterisk. FreePBX proporciona una distribución Linux propia, basada en el CentOS (a su vez basada en Red Hat). En la configuración de una Centralita Asterisk de este tipo, está la parte interna entre la Centralita y los teléfonos, y la unión entre la Centralita y el proveedor del servicio VOIP.
Instalación de FreePBX
Para realizar la instalación de FreePBX, necesitamos descargar primero la ISO con su sistema operativo desde https://www.freepbx.org/downloads/
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
53
Después, siguiendo los mismos pasos que para instalar Debian en una máquina virtual, seleccionamos la ISO descargada en una nueva máquina, e iniciamos.
Configuramos una dirección IP manualmente para evitar problemas posteriores.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
54
Siguiendo los pasos de instalación, llegaremos a la captura siguiente una vez accedamos al sistema con el usuario y contraseña introducidos.
Configuración Básica de FreePBX
A partir de ahora empezamos a manejar la Centralita FreePBX. Accedemos mediante un explorador por https a la dirección IP configurada de nuestro nuevo servidor. Nos aparecerá una primera pantalla para elegir el usuario administrador del sistema.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
55
Después, podremos acceder a la pantalla de selección de rol.
En la pestaña de Settings > Advanced Settings podemos configurar algunas opciones generales incluídas las características de región.
Configuración de extensiones SIP
Después, en el menú superior, seleccionamos Applications > Extensions
Pulsamos en Add Extension > Add new PJSIP Extension
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
56
En esta pantalla definiremos el número de la extensión, su nombre, el número de teléfono que deberá mostrar cuando llame a una red exterior, y la contraseña. En la parte inferior será posible crear un código de acceso al panel de control para el usuario de la extensión. Otras opciones como el buzón de voz, los DTMF, o los Pickup Groups pueden ser definidos aquí. Otra opción para crear extensiones SIP, es la selección del botón Quick Create Extension.
Configuración de Troncales SIP
Desde Connectivity > Trunks podemos configurar los troncales contra cualquier tipo de operador IP. Seleccionaremos Add Trunk > PJSIP Las opciones a rellenar serán siempre según los datos que nos proporcionen los operadores. Las más comunes son las siguientes:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
57
Una vez guardados los cambios, deberemos aplicarlos desde el botón rojo de Apply Changes.
Configuración de llamadas entrantes
Como hemos visto anteriormente, en una centralita podemos discriminar las llamadas entrantes según el número del teléfono al que nos llamen. Desde FreePBX podemos configurar de igual forma, cómo actuará el dialplan según el DDI. Además, podemos marcar una regla entrante como la principal para las llamadas que entren por un número de teléfono no configurado. Desde Connectivity > Inbound Routes podemos seguir los siguientes pasos:
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
58
En la opción de Set Destination configuraremos el comportamiento de la llamada entrante. En este caso, vamos a hacer sonar 2 extensiones al mismo tiempo seleccionando Ring Group.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
59
Configuración de llamadas salientes
Desde Connectivity > Outbound Routes podemos configurar todas las opciones de salida y sus rutas.
Estas son algunas de las opciones configurable.
En la pestaña de Dial Patterns deberemos colocar los patrones de numeración que queremos que siga la centralita para tomar esa ruta. [6789]XXXXXXXX Todos los números salientes a móviles, fijos y numeración premium [89]0XXXXXXX Numeración premium [.X] Cualquier numeración 118XX Numeración premium de información telefónica.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
60
Hay que tener en cuenta que, cuando marcamos un número de teléfono, la centralita buscará la ruta de salida por el orden en el que las rutas sean dispuestas. Si deseamos que las llamadas salientes internacionales salgan por un trunk distinto al de las llamadas a móviles, deberemos colocar primero la regla con el patrón [67]XXXXXXXX antes que la regla con el patrón .X, ya que estas es menos restrictiva.
Características y funcionalidades
A continuación, y a modo de resumen pasamos a nombrar las funcionalidades más habituales en el uso de FreePBX Módulo de lenguajes para la Internacionalización del sistema. Módulo de colas de llamadas. Condiciones de tiempo. Grupos de ringado. Colas de llamadas. Enrutamiento entrante. Reglas de enrutamiento saliente. Soporte SIP, IAX, DAHDI, ZAPTEL. Lista Negra. Módulo de locuciones. Módulo de Parking. Buzones de voz VoIP. FOP Flash Operator Panel. CDR Call Detail Records. IVR: Interactive Voice Response
Módulo VI: Seguridad y monitorización
AMI y AGI
Las siglas AMI vienen de Asterisk Manager Interface, o Interfaz para la Gestión de Asterisk. Si pudiéramos
comparar a Asterisk con una PBX tradicional, AMI sería el equivalente a un CTI (Computer Interface
Integration, o Interfaz de Integración con el Ordenador). Básicamente AMI es como una interf az para la
integración con otras aplicaciones de ordenador.
Existen innumerables proyectos que integran Asterisk para ofrecer una funcionalidad mejorada a través de
la interfaz AMI, y los tipos más comunes suelen ser:
Aplicaciones basadas en la Monitorización: Por ejemplo para el control de usuarios, colas como
Flash Operator Panel
Aplicaciones relacionadas al control de las llamadas, como A2Billing sistema de facturación
integrado en Asterisk para el control de los tiempos de llamada.
Sistemas para marcado, como son los Dialers según visto en Generación Automática de Llamadas,
basados en en la interfaz AMI para su funcionamiento.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
61
La interfaz AMI se basa en un flujo de datos en formato de texto plano (lo que puede ser un gran
compromiso para la Seguridad de nuestro sistema Asterisk), y con una estructura Estandarizada que se
preserva desde la primera versión.
El flujo que se crea dentro de la AMI puede ser provocado, tanto de forma saliente, a través de los Módulos
que vuelcan información en la interfaz, como comandos entrantes, que también recepcionarían ciertos
Módulos y harían alguna función con los datos recibimos.
El formato o sintaxis es relativamente sencillo:
La primera línea, suele ser del tipo: Event: <Comando> siendo el comando que se va a mostrar
o ejecutar.
Cada línea siguiente al igual que la primera, debe poseer una cabecera, indicando una
"propiedad", y luego una información asociada a esta. Dependiendo del módulo podrá tener
tantas líneas con este formato, como Datos se puedan ofrecer o precisar (dependiendo si es
información entrante o saliente).
Al final del flujo de un Comando concreto, debe haber una línea vacía indicando el fin del
comando. Esto puede ser útil cara a comprobar si existe un End_of_line independiente, si
creando un intérprete que sea capaz de analizar todo el flujo.
Un ejemplo siguiendo estas directrices podría ser:
Event: Hangup Channel: SIP/ext11 Uniqueid: 1234567.89 Cause: 19
Esto significa, que nuestra interfaz Asterisk, ha recibido un comando Hangup (Fin de la Conversac ión), por
el canal SIP para el dispositivo ext11, y la Causa ha sido NO ANSWER (Sin respuesta). El Uniqueid,
identificaría en este caso, un evento con un código único, basado en una marca de tiempo aleatoria, podría
utilizarse con fines de indexación si estamos registrando todos los eventos de alguna forma.
Dispones de más información sobre su uso en:
http://www.wikiasterisk.com/index.php?title=AMI
Asterisk Gateway Interface (AGI), o Interfaz Pasarela de Asterisk, es una interfaz del sistema Asterisk, que
permite la comunicación con sistemas terceros, pero a diferencia de AMI, lo hace de forma directa, dado
que ejecuta un script a voluntad, tan pronto la aplicación AGI sea invocada.
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
62
La interfaz AGI, fue diseñada originalmente, para servir de pasarela entre los distintos lenguajes de
programación y Asterisk específicamente, los canales de comunicación especialmente.
El funcionamiento de AGI es relativamente sencillo:
Primero hay que establecer una pasarela, entre el canal en curso, y un script ejecutable a
voluntad.
Cuando la conexión se establece, lanza una serie de variables al script ejecutado, que son
accesibles desde el mismo. La mayoría de estas variables tienen algo que ver con el cana l
El script puede ejecutar cualquier algoritmo, y entre sus secuencias, puede ejecutar comandos
específicos de AGI para influenciar en el flujo de llamada en curso. Este script puede perdurar
en ejecución incluso después de finalizar la llamada.
Seguridad en Asterisk En Asterisk la seguridad es fundamental. Una fallo de seguridad implica que la centralita pueda ser
comprometida y que se realicen llamadas de alto coste sin control.
Es por ello que los servidores Asterisk deben ir siempre protegidos por un firewall que filtre la entrada desde
el exterior.
Además, es recomendable que contemos con una IP fija y que los operadores nos limiten nuestro trunk a
únicamente esa IP. De esta forma, aunque intercepten nuestro usuario y contraseña no podrán registrar en
trunk desde otra localización.
Por último, es recomendable utilizar contraseñas cifradas en md5 tanto en extensiones, como en trunk. De
esta forma la contraseña no se envía en texto plano por internet, y nadie puede snifar nuestros
credenciales.
Si lo que queremos proteger son nuestras propias conversaciones para que no puedan ser interceptadas
asterisk tiene la posibilidad de encriptarlas a través del protocolo zrtp.
En este caso los túneles deben soportar en ambos puntos este protocolo de encriptación.
Otra posibilidad es tunelar los trunks mediante VPN (Virtual Private Network)
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
63
Fail2Ban
Fail2Ban es un software disponible en la mayoría de arquitecturas para sistemas UNIX que sirve para
bloquear de forma automática a nivel de firewall (iptables) direcciones IP atacantes según unas reglas
establecidas.
Su instalación es tan fácil como ejecutar:
# apt-get install fail2ban
Una vez instalado se debe configurar para que interactúe con asterisk.
Para ello editamos el fichero /etc/fail2ban/jail.conf y añadimos al final:
[asterisk-iptables]
# if more than 4 attempts are made within 6 hours, ban for 24 hours
enabled = true
filter = asterisk
action = iptables-allports[name=ASTERISK, protocol=all]
sendmail[name=ASTERISK, [email protected],
logpath = /var/log/asterisk/messages
maxretry = 4
findtime = 21600
bantime = 86400
Como se muestra en el ejemplo, se pueden configurar parámetros como el envío de un email por cada
bloqueo, el número máximo de intentos de ataque antes del bloqueo y el tiempo de baneo de la dirección.
Una vez establecido el enjaulado, tenemos que configurar las reglas por las que se considerará que atacan
nuestro servidor. Para ello, creamos un archivo en /etc/fail2ban/filter.d/asterisk.conf
# Fail2Ban configuration file
#
#
# $Revision: 251 $
#
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
64
[INCLUDES]
# Read common prefixes. If any customizations available -- read them from
# common.local
before = common.conf
[Definition]
#_daemon = asterisk
# Option: failregex
# Notes.: regex to match the password failures messages in the logfile. The
# host must be matched by a group named "host". The tag "<HOST>" can
# be used for standard IP/hostname matching and is only an alias for
# (?:::f{4,6}:)?(?P<host>\S+)
# Values: TEXT
#
# Asterisk 1.8 uses Host:Port format which is reflected here
failregex = NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - Wrong password
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - No matching peer
found
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - No matching peer
found
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - Username/auth name
mismatch
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - Device does not match
ACL
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - Peer is not supposed to
register
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - ACL error (permit/deny)
NOTICE.* .*: Registration from '.*' failed for '<HOST>:.*' - Device does not match
ACL
NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>:.*' - No matching peer
found
NOTICE.* .*: Registration from '\".*\".*' failed for '<HOST>:.*' - Wrong password
NOTICE.* <HOST> failed to authenticate as '.*'$
NOTICE.* .*: No registration for peer '.*' \(from <HOST>\)
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
65
NOTICE.* .*: Host <HOST> failed MD5 authentication for '.*' (.*)
NOTICE.* .*: Failed to authenticate user .*@<HOST>.*
NOTICE.* .*: <HOST> failed to authenticate as '.*'
NOTICE.* .*: <HOST> tried to authenticate with nonexistent user '.*'
VERBOSE.*SIP/<HOST>-.*Received incoming SIP connection from unknown
peer
# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex =
Los registros de Asterisk (logger.conf)
Hasta ahora hemos recurrido a la consola de Asterisk para ver en vivo que sucede en nuestra centralita.
El fichero /etc/asterisk/logger.conf nos permite la configuración para almacenar y registrar lo que sucede en
la centralita en uno o más archivos.
Al final del fichero se pueden observar varios niveles de debug.
Mientras console sólo registra noticias, alertas y errores, full registra además todo el debug, la marcación de
tonos dtmf y los faxes.
La configuración siempre es a nuestro criterio y es tan sencilla como descomentar la línea correspondiente
y recargar la configuración de asterisk.
Por defecto los logs se almacenarán en /var/log/asterisk/
Para que los archivos LOG sean generados de forma diaria, y no se cree un fichero enorme que acumule todo, es posible configurar el programa LOGROTATE para Linux.
Puedes encontrar más información sobre su configuración en http://www.voip-info.org/wiki/view/logrotate
ELE-0216CL VoIP
Julio 2016 - Palencia
Plan de formación para el profesorado de especialidades vinculadas a la F.P.
Delsat Telecom. S.L. www.delsatinternational.com -- Diego Capapé Campo -- Francisco Javier Yuste Sanz – Servicio profesional de drones—Operador habilitado por la Agencia Española de Seguridad Aérea (AESA)
C/ Santa Orosia 34 50010 ZARAGOZA Teléfono: 976 31 57 76
66
Debug en Asterisk Es el método más completo de monitorización de Asterisk. Muestra información sobre todos los eventos que ocurren en la centralita Asterisk. Sus logs son almacenados en /var/log/asterisk/*.log Para activar el debug, debemos configurar el fichero:
logger.conf
Para poder ver desde la propia consola de Asterisk todos los eventos de debug, ejecutaremos:
core set debug 3
core set verbose 3
Donde el verbose contiene detalles de nivel de información, alertas y errores, y el debug contiene el resto de detalles (incluyendo los tonos dtmf).