You are on page 1of 13

UNIVERSIDAD TÉCNICA DE AMBATO

FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E


INDUSTRIAL

CARRERA DE ELECTRÓNICA Y COMUNICACIONES

COMUNCACIONES AVANZADAS

Semestre: Noveno

Tema: Configuración de centralitas telefónicas Asterisk y Elastix.

Integrantes:
 Gerardo Bayas
 Daniela Cunalata

Docente: Ing. Santiago Manzano

Fecha: Ambato 17 de Julio de 2018

Ambato- Ecuador
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

INFORME
1. Título
Configuración de centralitas telefónicas Asterisk y Elastix.
2. Objetivos

2.1 Objetivo General:

Diseñar e implementar un sistema de control utilizando tecnologías de


VoIP mediante Asterisk y Elastix.

2.2 Objetivos Específicos:


 Configurar la centralita en Asterisk para dar servicios a algunas
extensiones.
 Realizar la configuración para la comunicación de los servidores
Asterisk y Elastix mediante un túnel GREE para la conexión con
arduino.
 Configurar la centralita en Elastix para dar servicio a algunas
extensiones, a través del control Arduino.
 Realizar la configuración del túnel GREE mediante
Hyperterminal.

3. Resumen
El presente proyecto tiene como finalidad las Comunicaciones
Unificadas que son definidas como el proceso en el cual todos los
sistemas y aparatos de comunicación de una empresa se encuentran
completamente integrados. Esto permite ventajas para los usuarios ya
que pueden mantenerse en contacto con cualquier persona, donde
quiera que estén y en tiempo real. Con la evolución de la telefonía IP /
telefonía por internet, la integración de los dos mundos de la
comunicación se ha hecho posible. Esto ha permitido a las empresas
deshacerse de barreras y facilitar el uso de diferentes formas, medios y
aparatos para comunicarse con quien sea, en donde sea y en cualquier
momento.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

4. Introducción
Elastix es una herramienta de software que permite establecer
comunicaciones unificadas. Elastix converge todas las alternativas de
comunicaciones disponibles a nivel empresarial en una única solución.
Elastix no solo es una herramienta que provee una solución de telefonía,
es una solución de comunicaciones unificadas, es decir, integra
herramientas para correo electrónico (email), FAX, Mensajería
Instantánea, Telefonía Convencional (PSTN) y Telefonía IP (VoIP) y
Video Conferencia y en unión con Asterisk que es un líder mundial en
plataformas de telefonía de código abierto, es un software que puede
convertir un ordenador de propósito general en un sofisticado servidor
de comunicaciones VoIP. Asterisk es utilizado por empresas pequeñas,
medianas y grandes, centros de llamadas, transportistas y agencias del
gobierno a nivel mundial.
5. Palabras clave
Asterisk, Elastix, centralitas, Túnel GRE, arduino, VoIP

6. Metodología

2.3 Marco teórico

Fig. 1: Elastix

Asterisk es un programa de software libre (bajo licencia GPL) que


proporciona funcionalidades de una central telefónica (PBX). Como
cualquier PBX, se puede conectar un número determinado de teléfonos
para hacer llamadas entre sí dentro de una misma organización e
incluso acceder a comunicaciones fuera de la misma a la PSTN o
conectando a un proveedor de VoIP o bien a una RDSI tanto básicos
como primarios.

Mark Spencer, de Digium, inicialmente creó Asterisk y actualmente es su


principal desarrollador, junto con otros programadores que han
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

contribuido a corregir errores y añadir novedades y funcionalidades.


Originalmente desarrollado para el sistema operativo GNU/Linux,
Asterisk actualmente también se distribuye en versiones para los
sistemas operativos BSD, Mac OS X, Solaris y Microsoft Windows,
aunque la plataforma nativa (GNU/Linux) es la que cuenta con mejor
soporte de todas.
Asterisk incluye muchas características que anteriormente sólo estaban
disponibles en costosos sistemas propietarios PBX, como buzón de voz,
conferencias, IVR, distribución automática de llamadas, y otras muchas.
Los usuarios pueden crear nuevas funcionalidades escribiendo un
dialplan en el lenguaje de script de Asterisk o añadiendo módulos
escritos en lenguaje C o en cualquier otro lenguaje de programación
soportado en GNU/Linux. [1]

Fig. 2: Elastix

Elastix es un software de servidor de comunicaciones unificadas que


reúne PBX IP, correo electrónico, mensajería instantánea, fax y
funciones colaborativas. Cuenta con una interfaz Web e incluye
capacidades como un software de centro de llamadas con marcación
predictiva.L a funcionalidad de Elastix está basada en proyectos libres
como Asterisk, FreePBX, HylaFAX, Openfire y Postfix. Estos paquetes
ofrecen las funciones de PBX, fax, mensajería instantánea y correo,
respectivamente. En diciembre del 2016 Elastix deja de ser Software
Libre y es reemplazado por la versión comercial de 3CX para Linux

Soporte para hardware de telefonía

Elastix soporta la mayor parte de hardware de telefonía existente que es


soportado o fabricado para Asterisk,8 incluyendo controladores
compatibles a través del proyecto Zaptel9 o versiones modificadas del
mismo. Otros controladores son compatibles con el proyecto mISDN10 y
otros proyectos.

Elastix también es compatible con otras marcas de teléfonos gracias a


los protocolos SIP11 y IAX12 que implementa Asterisk. El protocolo SIP
es actualmente un estándar utilizado en su mayoría por los fabricantes
de teléfonos IP y su funcionamiento es nativo para voz con Elastix,
independientemente de alguna funcionalidad adicional que estos tengan.
[2]
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

Túnel GRE

Fig. 3: Túnel GRE

EL Tunneling provee un mecanismo para transportar paquetes de un


protocolo dentro de otro protocolo. El protocolo que es transportado es
llamado protocolo pasajero, y el protocolo que es utilizado para
trasportar al protocolo pasajero es llamado protocolo de transporte.
Generic Routing Encapsulation (GRE) es uno de los mecanismos de
tunneling que utiliza IP como protocolo de transporte y puede ser usado
para transportar distintos protocolos.

Los túneles se comportan como links punto a punto virtuales, que tienen
dos extremos identificados como tunnel source y tunnel destination.
Configurar un túnel GRE incluye configurar un tunnel interface, que es
una interfaz lógica. Después hay que configurar los extremos para el
tunnel interface. [3]

2.4 Materiales

HARDWARE SOFTWARE
o 2 PCs o Virtual Box
o 2Routers CISCO 2900 o Elastix
Series o Asterisk
o 2 Switch Cisco Small o Hiper Terminal
o 4Cables de red
o 2 Cable serial
o 2 Conversores USB-Serial
o 1 Arduino
o 1 Leds
o 1 Resistencias

2.5 Procedimiento

2.5.1 Configuración Asterisk y Elastix


UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

A. CONEXIÓN ASTERISK Y ELASTIX

Se debe seguir la siguiente configuración en Elastix una vez ingresado su


número en la página web.

Figura 1.Configuración Trunk Elastix

Figura 2.Configuración de Route Elastix


UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

Figura 3. Creación de la Extensión de Asterisk en Elastix

Se debe colocar las extensiones del Asterisk con las que deseamos
comunicarnos.

En ese caso es 20X.

EN ASTERISK

vi /etc/asterisk/extensions.conf

exten=>_10X,1,Dial(SIP/elastix/${EXTEN})

10X Son las extensiones del Elastix con la que deseamos comunicarnos.

B. Creación del IVR

PARA EL VIR ASTERISK

Se debe grabar un Background en el sintetizador de Windows, posteriormente


con la ayuda de un programa convertidor de formato se lo cambia a .gsm.

Este archivo debe estar en la dirección

cd /etc/asterisk/sounds/en

Con los siguiente comandos se ordena llamar este saludo, y sus respectivas
extensiones.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

Figura 4. IVR en ASTERISK

Figura 5.Configuración de extensiones en Asterisk

C. Control del arduino por medio de la centralita

EN ELASTIK

Se debe confirmar que en la extensión cd/etc/asterisk/extensions_custom.conf


se encuentre el archivo phpagi.php, y darle los permisos de ejecución, chmod
777.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

Se debe programar el arduino en un archivo php que se coloca en la misma


carpeta de phpagi.php considerando colocar una IP dentro de la misma red.

Se programa en Windows, y se debe montar en una flash para trasladarlo al


elastix.

EXTENSIÓN ARDUINO EN ELASTIK

cd /etc/asterisk/extensions_custom.conf

Se debe agredar las extensiones del arduino y el proceso de contestación,


ejecución del AGI, y el colgar de la llamada

Figura 6.Extensión de Arduino

El programa de arduino cuenta con un submenú cuyas opciones son:

1 Encender el led

2 Led intermitente

0 Apagar el led
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

IVR CON ARDUINO Y DESPERTADOR

Se debe elaborar dos extensiones en elastix para relacionar al arduino con el


IVR se coloca en asterisk se debe tener precaución los procesos a la hora de
marcar.

2.5.2 Configuración del túnel GRE

1. Establecer la conexión con el router mediante la terminal para lo


cual se hace uso de Hyperteminal y/o Putty.
2. Aplicar direcciones IP a la interface Gigabit Ethernet de acuerdo
con la Tabla de Direccionamiento que se muestra a
continuación.

INTERFACE DIRECCIÓN IP MÁSCARA PUERTA DE


SUBRED ENLACE
ROUTER 1 G0/1 10.1.1.1 255.255.255.252 N/A
G0/2 192.168.1.1 255.255.255.0 N/A
Tunnel0 192.168.12.1 255.255.255.252 N/A
ROUTER 2 G0/1 192.168.2.1 255.255.255.0 N/A
G0/2 10.2.2.1 255.255.255.252 N/A
Tunnel0 192.168.12.2 255.255.255.252 N/A

3. Activar las interfaces físicas mediante de la conexión de cables


en los puertos respectivos según la configuración.
4. Se configura la interface del tunnel en los routers (ROUTER1 y
ROUTER2)
5. Se puede comprobar conectividad haciendo Ping desde
ROUTER1 hasta ROUTER 2
6. Se procede a configurar el enrutamiento OSPF para el área 0
sobre el túnel.
7. Comprobar si OSPF está asignado y levantado correctamente
utilizando el comando show ip interface brief.
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

7. Conclusiones

 Se puede concluir que elastix es capaz de incorporar en una única


solución todos los medios y alternativas de comunicación existentes
en el ámbito empresarial por lo que constituye una herramienta muy
útil para la incorporación de centrales telefónicas mediante VoIP.
 También se puede concluir que los túneles GRE son un protocolo de
encapsulación que se comportan como links punto a punto virtuales
que tienen dos extremos identificados como tunnel source y
destination.
 Ademàs con la implementación de la central telefónica en Asterisk se
llega a la conclusión de que es necesario analizar y controlar todos
los parámetros que se desea monitorear para una correcta
recopilación y comunicación de datos.
 Los túneles constituye además un método muy útil para transportar
paquetes de un protocolo dentro de otro protocolo. El protocolo que
es transportado es llamado protocolo pasajero, y el protocolo que es
utilizado para trasportar al protocolo pasajero es llamado protocolo
de transporte.

8. Bibliografía

[1] Quarea, «Quarea,» [En línea]. Available: http://www.quarea.com/es/que-es-


asterisk-centralita-telefonica-ip. [Último acceso: 15 07 2018].

[2] elastix, «elastix,» [En línea]. Available:


https://www.elastix.org/es/informacion/. [Último acceso: 12 07 2018].

[3] https://todopacketracer.com/2017/10/09/tuneles-gre/
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

9. ANEXOS

Arduino php

#!/usr/bin/php -q

<?php

require("phpagi.php");

$agi = new AGI();

$arduino_ip = "tcp://192.168.1.100";

$arduino_port = 23;

$ttsengine = 1; //enter 0 for flite, 1 for cepstral

$enter_prompt = "Por favor presione 1 para encender el led , 2 para


interminente y 0 para apagar el led”;

para blinkear.";

$sending_prompt = "Enviando la informacion al arduino";

$error_prompt = "error, please try again.";

$fp = fsockopen($arduino_ip, $arduino_port, $errno, $errstr);

if (!$fp) {

speak($error_prompt);

exit();

$continue = true;

while($continue){

speak($enter_prompt);

$return = $agi->get_data('beep', 10000, 1);

if (($return['result'] >= 0) and ($return['result'] <= 2)){

speak($sending_prompt);

$ascii = chr($return['result']);

fwrite($fp, $ascii);
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018

else{

speak($error_prompt);

fclose($fp);

function speak($text){

global $agi;

if ($ttsengine == 0){

$agi->text2wav($text);

}else {

$agi->swift($text);

?>

You might also like