Monta tu centralita de telefonía VoIP con Asterisk (2º parte): Interfaz web BEETON Enrique Morón Ayuso http://about.me/emoronayuso ASTERISK: Una caja de herramientas Registro de extensiones Plan de llamadas Buzón de voz Sistema de voz interactivo Conferencias Registro de llamadas Música en espera Colas de llamadas ¿Un panel de administración web? ¿Qué paneles web existen ya? AsteriskGUI FreePBX Voiceone Mi proyecto: Beeton Documentación Monitorización básica del sistema Gestión de usuarios y extensiones Monitorización básica de llamadas actuales Sistema de gestión de IVR (Interactive Voice Response) Gestión del buzón de voz de los usuarios Reglas de llamada entrantes y salientes (Incoming/Outboun d Calling roules) Grupos de llamada Música en espera Gestión de colas de llamadas Consola de Asterisk CLI Soporte Complejidad de uso Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Fuente: http://wiki.freepbx.org/display/F2/Screen+Shots Fuente: http://wiki.freepbx.org/display/F2/Screen+Shots AsteriskGUI Fuente: https://wiki.asterisk.org/wiki/display/AST/Asterisk+GUI Principio KISS ¿Qué es Beeton? Panel web de administración y monitorización básica de Asterisk Otorgar una interfaz que permite una gestión básica y sencilla a usuarios inexpertos Gestión modular de funcionalidades, para amoldar el panel a las necesidades de cada caso Integra librerías de otro proyecto de software libre: PYST Primer pantallazo Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton ARA AGI /etc/asterisk/extensions.conf /etc/asterisk/sip.conf /etc/asterisk/iax.conf /etc/asterisk/voicemail.conf /etc/asterisk/jabber.conf /etc/asterisk/queues.conf /etc/asterisk/cdr.conf ….... ( ) MVC: Don Repeat Your Self “The web framework for perfectionists with deadlines” Desmontando a Beeton Confguración de Asterisk Realtime Architecture: ARA Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Confguración de la BBDD del registro de llamadas Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton AGI: Asterisk Gateway Interface Permite a Asterisk comunicarse con programas externos Desmontando a Beeton Proyecto PYST: Una interfaz de Python para Asterisk Es un conjunto de interfaces y librerías que permiten la programación de Asterisk utilizando Python Tiene soporte para AGI Enmascara toda la comunicación del script Python y Asterisk Facilita el Debug de AGI Fuente: http://pyst.sourceforge.net/ Desmontando a Beeton Uso de ARA + AGI Fuentes: http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Uso de ARA + AGI Fuentes: http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Uso de ARA + AGI /etc/asterisk/extensions.conf [usuarios] switch => Realtime/@ [dpto comercial] switch => Realtime/@ Fuentes: http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Uso de ARA + AGI /etc/asterisk/extensions.conf [usuarios] switch => Realtime/@ [dpto comercial] switch => Realtime/@ Fuentes: http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Uso de ARA + AGI /etc/asterisk/extensions.conf [usuarios] switch => Realtime/@ [dpto comercial] switch => Realtime/@ Id| contexto| extension | prioridad | app | appdata 24 | usuarios | 302 | 1 | AGI | responder_llamadas.py Fuentes: http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Uso de ARA + AGI /var/lib/asterisk/agi-bin/responder_llamadas.py /etc/asterisk/extensions.conf [usuarios] switch => Realtime/@ [dpto comercial] switch => Realtime/@ Id| contexto| extension | prioridad | app | appdata 24 | usuarios | 302 | 1 | AGI | responder_llamadas.py Fuentes: http://www.voip-info.org/wiki/view/Asterisk+-+documentation+of+application+commands https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desmontando a Beeton Diseño: Diagrama conceptual Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Funcionalidades de Beeton Registro de llamadas Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Funcionalidades de Beeton Registro de extensiones Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Funcionalidades de Beeton Registro de extensiones Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Funcionalidades de Beeton Sistema de respuesta de voz interactiva Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Funcionalidades de Beeton Acceso a la consola de Asterisk con historial de comandos Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desarrollo de funcionalidades en Beeton Módulos del plan de llamadas Capa de presentación: Plantillas Definición de la funcionalidad nueva_funcionalidad.tar.gz Lógica del plan de llamadas #include Proyecto PYST Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desarrollo de funcionalidades en Beeton Defnición del modelo esperar.json func_beeton_espera.tar.gz Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Desarrollo de funcionalidades en Beeton Defnición del modelo esperar.json Lógica de la funcionalidad esperar.py func_beeton_espera.tar.gz Fuente: https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Pruebas: Hardware utilizado Sistema embebido: Placa Alix3D2 + Fuente: sobre una Compact Flash de 4GB https://beetonvoip.wordpress.com/2014/04/04/instalando-asterisk-en-una-placa-alix3d2lx800-con-debian/ Pruebas: Hardware utilizado Unifcación de tecnologías VoIP y GSM Gateway GoIP Teléfono IP: DESTEL Fuente: https://beetonvoip.wordpress.com/2014/04/13/unifcando-tecnologias-gsm-voip/ Pruebas: Rendimiento Resultados de las pruebas hechas con SIPp Llamadas %CPU Libre %CPU Ocupada Memoria usada (MB) 0 87,6 12,4 236 6 72,3 27,7 236 11 53,9 46,1 236 16 31,4 68,6 236 21 17,5 82,5 239 26 0 100 240 Fuente: Tráfico de red (kbits/s) 65 919 1776 2983 3276 4351 https://beetonvoip.fles.wordpress.com/2014/03/documentacion_completa_proyecto_beeton.pdf Pruebas: Conclusiones Fuente: https://askozia.com/confgure-your-askozia-phone-system/ Futuro: Colaboración [email protected] @emoronayuso https://beetonvoip.wordpress.com https://github.com/emoronayuso Algunos desarrollos futuros Desarrollo de nuevas funcionalidades para el plan de llamadas de la interfaz: - Colas de llamadas Buzón de voz Salas de conferencia Servicio de fax Integración con Jabber Generar mas gráfcas para las estadísticas del sistema y la monitorización Sistema de backup de la confguración (export/import JSON) Integración con Nagios Monta tu centralita de telefonía VoIP con Asterisk (2º parte): Interfaz web BEETON Enrique Morón Ayuso http://about.me/emoronayuso
© Copyright 2024