• No se han encontrado resultados

Sistema de IVR para la gestión de centros de datos virtualizados

N/A
N/A
Protected

Academic year: 2020

Share "Sistema de IVR para la gestión de centros de datos virtualizados"

Copied!
80
0
0

Texto completo

(1)Universidad Central “Marta Abreu” de Las Villas Facultad de Ingeniería Eléctrica Departamento de Telecomunicaciones y Electrónica. TESIS DE MAESTRIA Sistema de IVR para la gestión de centros de datos virtualizados Autor: Ing. Yunier Valdés Pérez. Tutor: Dr.C. Héctor Cruz Enriquez. Santa Clara 2016 "Año 58 de la Revolución".

(2) Universidad Central “Marta Abreu” de Las Villas Facultad de Ingeniería Eléctrica Departamento de Telecomunicaciones y Electrónica. TESIS DE MAESTRIA Sistema de IVR para la gestión de centros de datos virtualizados Autor: Ing. Yunier Valdés Pérez [email protected]. Tutor: Dr.C. Héctor Cruz Enriquez [email protected]. Santa Clara 2016 "Año 58 de la Revolución".

(3) Hago constar que la presente Tesis en Opción al Título Académico de Máster en Ciencias Telemáticas fue realizada en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de estudios de Maestría en Telemática, autorizando a que la misma sea utilizada por la Institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentada en eventos, ni publicada sin autorización de la Universidad. Firma del Autor Los abajo firmantes certificamos que el presente trabajo ha sido realizado según acuerdo de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada.. Firma del Autor. Firma del Jefe de Departamento donde se defiende el trabajo. Firma del Responsable de Información Científico-Técnica.

(4) i. PENSAMIENTO. La inteligencia consiste no sólo en el conocimiento, sino también en la destreza de aplicar los conocimientos en la práctica. Aristóteles.

(5) ii. DEDICATORIA. A toda mi familia, mi mayor fortaleza. A mi hijo Alejandro, inspiración de todos mis esfuerzos..

(6) iii. AGRADECIMIENTOS. A todos mis compañeros de trabajo que han aportado a la realización de este trabajo. A los profesores de la Facultad de Ingeniería Eléctrica, por sus criterios y recomendaciones. A toda mi familia por el apoyo de siempre, en especial a Bety..

(7) iv. RESUMEN. Este trabajo presenta un sistema de Respuesta Interactiva de Voz (IVR, del inglés Interactive Voice Response), logrado a partir de la pizarra telefónica de software Asterisk, mediante la cual se permite la ejecución de AGI (AGI, del inglés Asterisk Gateway Interface) desde un teléfono para la gestión de servidores virtuales en un centro de datos. El proyecto muestra la arquitectura general de un sistema de IVR, definiendo las vías para la conexión de Asterisk con la PSTN y los mecanismos para el acceso a las interfaces de administración de servidores virtuales de un centro de datos. Presenta las potencialidades de las líneas de comandos (CLI, del inglés Command Line Interface) de VMware ESXi y Proxmox, así como su empleo mediante la interfaz de pasarela de Asterisk programadas en lenguaje de código abierto para la gestión del entorno de virtualización. Se presenta una interfaz de administración web diseñada para facilitar el despliegue y la explotación del mismo..

(8) v. TABLA DE CONTENIDOS. PENSAMIENTO .....................................................................................................................i DEDICATORIA .................................................................................................................... ii AGRADECIMIENTOS ........................................................................................................ iii RESUMEN ............................................................................................................................iv INTRODUCCIÓN. ..................................................................................................................i CAPÍTULO 1. 1.1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR) . 5. La IVR. ................................................................................................................. 5. 1.1.1. Definiciones. ..................................................................................................... 5. 1.1.2. Funcionamiento de la IVR. ............................................................................... 7. 1.1.3. Modo de trabajo. ............................................................................................... 8. 1.1.3.1. Captura de datos. ........................................................................................... 9. 1.1.3.2. Entrega de Información. ................................................................................ 9. 1.1.4. Sistema de Respuesta de Voz Interactiva (IVR). ............................................ 10. 1.2. Casos de éxito en la implementación de sistemas IVR. ..................................... 11. 1.2.1. Implementación de transacciones de envío y retiro de dinero utilizando IVR ... 11. 1.2.2. Sistema de IVR para el módulo de Ventas: Solicitud de servicio para La. Corporación Nacional de Telecomunicaciones de Ecuador. ............................................ 11 1.2.3. Solución IVR en la Empresa Eléctrica Regional Norte (EMELNORTE S.A.) en. la ciudad de Ibarra............................................................................................................. 12.

(9) vi 1.2.4. Implementación de una IVR utilizando VoiceXML Browser. ........................... 12. 1.2.5. Herramienta de administración remota usando la IVR de Asterisk. .................. 13. 1.2.5.1 Arquitectura del sistema IVR. ............................................................................ 14 1.2.5.2. Pizarra TDA 200. ........................................................................................ 14. 1.2.5.3. Mediatrix 1124. ........................................................................................... 16. 1.2.5.4. Funcionamiento del sistema Implementado. ............................................... 17. 1.3. Conclusiones del Capítulo. ................................................................................. 18. CAPÍTULO 2. 2.1. Componentes del sistema de IVR............................................................ 20. Diagrama general del sistema de IVR para la gestión del centro de datos. virtualizado. ...................................................................................................................... 20 2.2. Centro de datos virtualizado. .............................................................................. 22. 2.2.1. Virtualización con VMware ESXi. ................................................................. 23. 2.2.2. Virtualización con Proxmox VE. .................................................................... 24. 2.3. Diseño de la base de datos. ................................................................................. 25. 2.3.1. Gestor de base de datos MySQL..................................................................... 25. 2.3.2. Análisis de Requisitos. .................................................................................... 25. 2.3.3. Diagrama Entidad – Relación. ........................................................................ 26. 2.3.4. Estructura final de la base de datos. ................................................................ 28. 2.4. Diseño de la interfaz de administración web. ..................................................... 28. 2.4.1. Framework CodeIgniter. ................................................................................. 29. 2.4.1.1 2.4.2. JavaScript. ....................................................................................................... 30. 2.4.2.1 2.4.3 2.5. Modelo Vista Controlador........................................................................... 30. Biblioteca ExtJS. ......................................................................................... 31 Procesamiento a realizar a los datos. .............................................................. 31. Comunicación segura entre el sistema IVR y el centro de datos. ...................... 32.

(10) vii 2.5.1. El protocolo de ejecusion segura SSH. ........................................................... 32. 2.5.1.1. Capa de Transporte. .................................................................................... 33. 2.5.1.2. Archivos de configuración de OpenSSH. ................................................... 34. 2.5.1.3. Autenticación por contraseñas. ................................................................... 35. 2.5.1.4. Autenticación por claves publica/privada. .................................................. 35. 2.5.1.4.1. Generación de claves. .............................................................................. 36. 2.5.1.4.2. Propagación de claves. ............................................................................ 36. 2.5.1.4.3. Selección de claves. ................................................................................. 37. 2.5.1.5 2.6. Agente de Autenticación. ............................................................................ 37. Conclusiones del capítulo. .................................................................................. 38. CAPÍTULO 3. 3.1. Implementación del sistema IVR. ........................................................... 39. Actualización dinámica de la base de datos del sistema IVR. ........................... 39. 3.1.1. Actualización de datos de servidores virtuales. .............................................. 39. 3.1.2. Actualización de datos de dispositivos de almacenamiento ........................... 41. 3.2. Envío de informes vía correo electrónico. .......................................................... 42. 3.3. Envío de informes vía SMS. ............................................................................... 43. 3.4. Envío de informes en formato de voz................................................................. 44. 3.5. El sistema IVR. ................................................................................................... 46. 3.5.1. IVR de autenticación. ......................................................................................... 46. 3.5.2. IVR de administración. ....................................................................................... 47. 3.5.3. IVR de reportes del centro de datos. .................................................................. 48. 3.5.4. IVR de invitado. ................................................................................................. 49. 3.6. Registro de “logs”............................................................................................... 49. 3.7. Interfaz de administración gráfica. ..................................................................... 50.

(11) viii 3.7.1. Menú para la configuración del sistema IVR ..................................................... 51. 3.7.2. Menú de reportes del sistema de IVR ................................................................. 54. 3.7.3. Menú de registro de eventos ............................................................................... 54. 3.7.4. Menú de administración de la aplicación. .......................................................... 56. 3.8. Evaluación del sistema IVR basado en el tiempo de respuesta ante afectaciones. de servicio ......................................................................................................................... 57 CONCLUSIONES Y RECOMENDACIONES ................................................................... 60 Conclusiones ..................................................................................................................... 60 Recomendaciones ............................................................................................................. 61 REFERENCIAS BIBLIOGRÁFICAS ................................................................................. 62 ANEXOS .............................................................................................................................. 64.

(12) i. INTRODUCCIÓN.. La Empresa de Telecomunicaciones de Cuba, ETECSA, en la provincia Villa Clara, cuenta con una red corporativa de datos amplia y compleja. Alberga una gran cantidad de servidores donde están instaladas las distintas aplicaciones que prestan servicio a la población y a los trabajadores de la entidad. Ante interrupciones presentadas durante la jornada laboral, los administradores del centro de datos intervienen rápidamente en el diagnóstico y solución de las mismas, no siendo así fuera del horario base, que implica además, un considerable gasto de tiempo y combustible para la empresa, al tener que transportar a los administradores desde cualquier zona de la provincia hasta el local técnico, situación que retarda la detección e intervención oportuna ante la falla. En ocasiones las interrupciones presentadas tienen una simple solución, siendo posible el restablecimiento del servicio al ejecutar una acción de reinicio sobre éste. Por consiguiente surge la necesidad de gestionar los servicios que ofrece la empresa, a partir de una herramienta accesible no solo desde la red de datos, sino también desde la red pública de abonados (PSTN, del inglés Public Switched Telephone Network). El material bibliográfico examinado sobre Asterisk, lo identifica como la solución al problema planteado. La centralita está diseñada en software de código abierto y proporciona todas las características de una pizarra telefónica híbrida de VoIP (VoIP, del inglés Voice over IP) y Multiplexación por División de Tiempo. Asterisk puede ser instalado sobre la plataforma Linux y entre otras funcionalidades es utilizado como.

(13) ii servidor de telefonía IP, empleando protocolos de señalización como SIP (SIP, del inglés Session Initiation Protocol) e interactuando con diferentes tipos de hardware y software. Asterisk puede integrarse a la red pública de abonados a través de hardware de interfaz telefónico, lo que permite conectar un sistema de telefonía convencional con tecnologías de voz sobre IP, recurso a través del cual se logra poner en práctica la herramienta de gestión remota propuesta. (Rivero 2013) Tomando en consideración lo expuesto anteriormente, surge como problema científico: ¿Cómo gestionar centros de datos virtualizados desde un teléfono, usando un sistema IVR, para mejorar los tiempos de respuesta ante fallas? El objetivo general propuesto es: Implementar un sistema de IVR con Asterisk que interactúe con los hypervisores de virtualización, de manera que permita gestionar los servidores virtuales del centro de datos desde la red pública de abonados. A partir del objetivo general se plantean los siguientes objetivos específicos:  Diseñar un sistema usando la IVR de Asterisk que permita ejecutar AGI desde una llamada telefónica.  Definir los comandos necesarios de los hypervisores de virtualización VMware ESXi y Proxmox VE para la gestión de las máquinas virtuales desde la línea de comandos.  Diseñar una base de datos para el sistema, que permita consultar información del centro de datos desde la IVR de Asterisk.  Programar scripts que obtengan información de los hypervisores de virtualización y pueblen de forma automática la base de datos con información actualizada.  Programar una interfaz de administración gráfica que facilite la implementación del sistema de IVR. Para lograr los objetivos propuestos se realizan las siguientes tareas de investigación: 1. Análisis de otros sistemas IVR implementados en diferentes empresas..

(14) iii 2. Configuración de la IVR de Asterisk para la respuesta a llamadas telefónicas desde la red pública de abonados. 3. Instalación de un entorno virtual de pruebas con los hypervisores VMware ESXi y Proxmox VE. 4. Diseño de una base de datos en el gestor MySQL, a partir de las relaciones existentes entre los elementos que conforman el centro de datos, tales como hypervisores, máquinas virtuales, dispositivos de almacenamiento, servicios, usuarios, entre otros. 5. Desarrollo de una aplicación web empleando frameworks de código abierto, con interfaces para el manejo de la información contenida en la base de datos diseñada. 6. Programación de AGI que puedan ser llamadas desde la IVR de Asterisk o desde la aplicación web, que permitan ejecutar órdenes sobre los servidores virtuales a partir de las definiciones contenidas en la base de datos. 7. Evaluación de los resultados a partir del impacto de la implementación desarrollada en la disminución de los tiempos de respuesta ante interrupciones del centro de datos. Durante el desarrollo de la investigación se dan respuesta a las siguientes interrogantes científicas:  ¿Qué otras implementaciones de IVR existen que puedan ser empleados como referencia para el presente trabajo?  ¿Qué infraestructura existe en la División Territorial de ETECSA en Villa Clara que permita implementar un sistema de IVR con Asterisk?  ¿Cuáles comandos de la CLI de VMware ESXi y Proxmox VE pueden ser ejecutados desde la IVR para gestionar máquinas virtuales?  ¿Cómo proveer al sistema IVR de información actualizada del centro de datos, sin necesidad de intervención manual del administrador de la red?  ¿Qué bondades ofrece la interfaz gráfica de administración del sistema IVR para el despliegue de la solución y su explotación?.

(15) iv  ¿La implementación del sistema satisface las necesidades que propiciaron la investigación? Con la realización de este trabajo se pretende arribar a conclusiones cuantitativas sobre las mejoras en los tiempos de respuesta ante interrupciones del centro de datos de la División Territorial de ETECSA en Villa Clara. Se espera obtener un sistema de IVR que pueda ser implementado en cualquier centro de datos que emplee tecnologías de virtualización, para gestionar los servidores virtuales desde una llamada telefónica. La investigación tiene actualidad científica, lo evidencia gran parte de la bibliografía utilizada donde se aprecian estudios con ciertos grados de similitud al realizado. Además las herramientas de software utilizadas para las simulaciones son reconocidas y usadas en otras partes del mundo por instituciones universitarias y de la industria. Los resultados alcanzados serán de aplicación práctica y teórica, estando al alcance de todos los que trabajen en esta temática. Organización del informe. Este informe está estructurado en tres capítulos. En el primero se presentan conceptos que se emplean a lo largo del trabajo y exponen casos de éxitos de implementaciones de IVR en diferentes empresas del mundo, haciendo un análisis crítico de los mismos. El capítulo dos aborda las tecnologías empleadas para el desarrollo e implementación del sistema IVR en la división territorial de Villa Clara. Se exponen aspectos relacionados con la línea de comandos de los hypervisores de virtualización y con el diseño de la base de datos del sistema, además se describen todos los componentes del sistema IVR. En el capítulo tres se presentan los resultados obtenidos, describiéndose el sistema IVR como herramienta de gestión. Se presenta la interfaz de administración web desarrollada y se hace una evaluación de la aplicación del sistema en la División Territorial de Villa Clara..

(16) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 5. CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 1.1. La IVR.. Las IVR son aplicaciones de voz interactivas que aceptan como entrada tanto tonos marcados por el usuario, como la voz del mismo, ofreciendo distintos tipos de respuesta según la programación del propio sistema; pudiendo de esta forma ofrecer servicios de información, encuestas y transacciones telefónicas. Las tecnologías IVR han tenido un gran auge, en un comienzo en bancos y grandes empresas, llegando hasta las tiendas que ofrecen interfaces de compra vía telefónica. Estos sistemas han evolucionado desde interfaces vía DTMF hasta reconocimiento de voz en los cuales el usuario puede usar su voz no sólo para hacer selecciones en el sistema, sino también para hacer preguntas de manera natural.(ACIERTE 2014) Al consultar la bibliografía existente, se hace referencia a esta tecnología como Respuesta Interactiva de Voz, o Respuesta de Voz Interactiva. Ambos términos pueden ser empleados indistintamente sin que entre en contradicción con la definición de la misma. 1.1.1 Definiciones. Según la empresa CompassTech: IVR es una poderosa plataforma de desarrollo de aplicaciones telefónicas, que permite diseñar, integrar, implementar y administrar sistemas de respuesta interactiva de voz, utilizando lenguaje amigable gráfico y en muy corto tiempo. La plataforma IVR, viene preparada para manejo de voz, fax, acceso y escritura a bases de datos vía ODBC o sockets, reconocimiento de voz, texto a voz y aplicaciones CTI entre otras. Así mismo, soporta E1 / T1 / ISDN, VoIP, conferencias y SS7.(Alvarado 2012).

(17) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 6. Según la enciclopedia wikipedia: IVR son las siglas de “Interactive Voice Response”, que se traduce del inglés como Respuesta de Voz Interactiva. También se utiliza el término VRU (“Voice Response Unit”). Consiste en un sistema telefónico que es capaz de recibir una llamada e interactuar con el humano a través de grabaciones de voz. Es un sistema de respuesta interactiva, orientado a entregar y/o capturar información automatizada a través del teléfono permitiendo el acceso a los servicios de información y operaciones autorizadas, las 24 horas del día. (Alvarado 2012) Según la empresa Rasgocorp: Además de ser una herramienta de tecnología de punta, la IVR es la interface entre el usuario y la información de sus datos, a través del teléfono, el cual permitirá a los consultantes obtener información específica de manera rápida y veraz El verdadero poder de la IVR es que le permite al llamante comunicarse con datos de un servidor o con datos fijos a través de los tonos generados por el teléfono, creando un nuevo medio de información y publicidad interactiva. (Alvarado 2012) Según la empresa techFAQ: IVR es un software que permite a las empresas construir Respuesta de Voz Interactiva, sistemas que pueden ser usados para proporcionar automatización de auto-servicio a las llamadas entrantes. (Alvarado 2012) Según la empresa q-voz: IVR, Respuesta Interactiva de Voz, es una tecnología madura que ayuda a miles de empresas en el mundo a atender llamadas telefónicas de manera automática y a consultar o manipular bases de datos y proporcionar la información en forma de voz. El IVR permite que la información que se encuentra en sus servidores esté disponible para el público que lo requiera. (Alvarado 2012) A partir de las definiciones seleccionadas, se puede concluir que un sistema IVR es una solución tecnológica que nace de la integración de telefonía e informática para facilitar las operaciones de negocio. Cumple un rol significativo en la provisión de un servicio eficiente al cliente y puede incrementar la satisfacción con el fin de aminorar los costos y otorgar a la empresa múltiples ventajas competitivas. En la actualidad, la tecnología IVR ayuda a innumerables empresas en el mundo a disponer los registros de una base de datos y proporcionar la información en forma de voz. La aplicación de una solución IVR permite atender a múltiples clientes de forma simultánea 24 horas al día, 365 días al año, gestionar un gran volumen de consultas anuales veloz y.

(18) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 7. eficazmente, rentabilizar los recursos humanos y materiales dedicados a la atención telefónica, aumentando la productividad de los departamentos de atención al cliente. Las aplicaciones que se puede tener con el IVR son infinitas, permitiendo automatizar vía teléfono. cualquier. proceso. que. se. pueda. realizar. desde. una. pantalla. de. computadora.(Salazar 2015) A continuación se mencionan algunas de ellas:  Imagen Corporativa  Procesos Administrativos  Procesos Operativos  Audio Texto  Fax-On-Demand, Email-On-Demand  Información Interactiva  Información de Bases de Datos  Mensajería Unificada  Operadoras Digitales  Llamadas Salientes Programadas  Centros de Llamadas  Atención 24 Horas, 365 días  Compatibilidad  Crecimiento Ilimitado 1.1.2 Funcionamiento de la IVR. De manera general el uso de esta tecnología es muy simple: el usuario realiza una llamada a un número de teléfono, el sistema IVR contesta el llamado y presenta al usuario una serie de acciones a realizar, esto se hace mediante mensajes (menús de opciones). El usuario elige la opción al introducir un número a través del teclado numérico del teléfono y navega.

(19) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 8. por los diferentes menús hasta encontrar la información deseada. La información que proporciona son respuestas apropiadas en forma de voz, fax, correo electrónico, SMS y quizá otros medios de comunicación. La información puede ser numérica, puede tratarse de mensajes pregrabados o de lectura directa desde una base de datos (por ejemplo, lectura de una noticia del día) a través de la tecnología “text-to-speech”. (Plaza 2013) A continuación se presenta un diálogo práctico de un sistema IVR para la provisión del informe académico en una universidad. El alumno disca desde su teléfono el número del sistema IVR de su universidad y es atendido por el mismo.. IVR: Bienvenido al Sistema de Respuesta Interactiva de la Universidad Central de las Villas, por favor, ingrese su número. Alumno: En su teléfono marca 10032. IVR: Buen día, Juan Pérez, estudiante de Telecomunicaciones. Ingrese 1 para informe académico, 2 para otras opciones. Alumno: (en su teléfono presiona el 1). IVR: Seleccione la materia: 1 para Electrónica analógica, 2 para Sistemas con microprocesadores, 3 para Fundamento de las Telecomunicaciones, 4 para Salir. Alumno: (en su teléfono presiona el 3). IVR: Su nota de Fundamentos de las Telecomunicaciones es un cuatro. Presione 4 para terminar o 5 para verificar otra nota. Alumno: (en su teléfono presiona el 4). IVR: Muchas gracias. Hasta luego. 1.1.3 Modo de trabajo. En una configuración básica, un sistema IVR trabaja con la premisa de captura de datos y entrega de información, la persona que llama al IVR, interactúa con menús a través del teclado telefónico o hablando con el sistema, el cual captura la elección y la ejecuta. El.

(20) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 9. proceso de autenticación por ejemplo, obtiene datos introducidos por el llamante y hace una consulta a la base de datos, se realiza la verificación y se regresa a la IVR. Si el IVR trabaja en un entorno de Computación y Telefonía Integrada (CTI) la información de voz, y los datos del cliente podrían ser presentados a una operadora simultáneamente, (llamada en el teléfono y datos en la PC terminal de la operadora) con lo cual la persona que llama no tendría que identificarse nuevamente o explicar su problema. Este tipo de transferencia de datos abre un rango de posibilidades y opciones que mejoran los tiempos de interacción al trabajar con líneas digitales o analógicas por las que se obtenga identificación automática de número o exista una marcación DID (del inglés Direct Inward Dialing). (Salazar 2015) 1.1.3.1 Captura de datos. La forma predominante de interacción con un sistema IVR es a través del teclado del teléfono, trabajando a tonos. Si se quiere que cualquier persona acceda al sistema se debe tener en cuenta un conversor de pulsos a tonos. Otra forma importante es la interacción a través de Internet. 1.1.3.2 Entrega de Información. Dependiendo de la configuración de la aplicación, se tendrán diferentes formas de entregar la información a la persona que llama, por ejemplo el sistema inmediatamente puede entregar un mensaje (Play Back Speech), o ejecutar por texto a voz (Text-to-Speech), es decir generar artificialmente palabras habladas desde una información textual. A pesar de que la voz resultante es artificial ésta es la única opción viable para aplicaciones en las cuales no es práctico pre-grabar información que es variable, por ejemplo, aplicaciones en las que se debe entregar nombres o direcciones desde un directorio telefónico. Otra vía de comunicación es entregar información a través de fax, información detallada que no sería práctico convertir a voz. Los sistemas IVR pueden entregar faxes según horarios (“Broadcast Facsimile”), páginas desde una base de datos o composiciones dinámicas, textos y/o gráficos para aplicaciones como entrega de estados de cuenta, entrega de avisos de propaganda. De la misma forma que la captura de datos, la entrega de datos por Internet es una nueva manera de interacción, el sistema IVR entrega en formato HTML,.

(21) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 10. información que puede ser escuchada y también visualizada desde una pantalla a través de Internet con los diseños y gráficos de cualquier página WEB. (Plaza 2013) 1.1.4 Sistema de Respuesta de Voz Interactiva (IVR). Dentro de los principales beneficios del empleo de las IVR se pueden listar las siguientes:  Atención de múltiples llamadas de forma simultánea.  Recopilación automática de datos.  Rápido acceso a la información deseada.  Acceso a información personalizada y/o confidencial a través de código de seguridad.  Servicio las 24 horas, los 365 días del año.  Reducción de las colas de espera y el tiempo de respuesta.  Automatización de procesos y generación de informes.  Equilibra la carga de trabajo.  Solución abierta, modular y fácilmente escalable.  Integración con cualquier base de datos.  Sistema robusto con mínimo índice de fallo.  Filtro de llamadas por medio de preguntas antes de la transferencia a un agente.  Audición de grabaciones y mensajes informativos.  Soporte en campañas de captación de clientes, marketing, publicitarias, concursos, etc.  Reducción de costos al automatizar tareas rutinarias que no requieran intervención humana.  Mejora la calidad de atención al lograr la identificación de los clientes antes de ser atendidos.

(22) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 1.2. 11. Casos de éxito en la implementación de sistemas IVR.. 1.2.1 Implementación de transacciones de envío y retiro de dinero utilizando IVR Esta implementación fue diseñada en la Escuela Superior Politécnica de Ecuador, con el objetivo de automatizar operaciones de envío de dinero a través de llamadas telefónicas. Permite hacer transferencias y retiros monetarios entre usuarios de Ecuador y Estados Unidos de América. A partir de la solución propuesta, los especialistas concluyeron que los sistemas IVR son fáciles de implementar para otros intereses tales como el pago de servicios básicos (agua, electricidad, teléfono). Además, aseguran que el empleo de tecnología VoIP abarata en gran medida los costos de implementación.(Cassan 2014) Esta solución aporta elementos importantes para el manejo de bases de datos desde la IVR, los cuales sirven como referencia para la implementación desarrollada en el presente trabajo, pero el enfoque que los autores dan al proyecto es notablemente comercial, y desarrollan el formato de voz como única vía para realizar informes al usuario. 1.2.2 Sistema de IVR para el módulo de Ventas: Solicitud de servicio para La Corporación Nacional de Telecomunicaciones de Ecuador. Este se realiza en la Corporación. Nacional de Telecomunicaciones E.P (CNT E.P),. empresa de telefonía móvil y fija de Ecuador. Tiene como principal objetivo brindar un servicio de atención y entrega de información inmediata para conocer el estado de instalación de nuevos servicios de telefonía o Internet. La IVR se desarrolla mediante la metodología SCRUM, con un IDE de desarrollo para IVR de Avaya Inc. La aplicación implementada ayuda al cliente a recibir información de manera rápida y precisa sobre sus servicios, y paralelamente aporta un ahorro significativo de personal en el “Contact Center” de la CNT E.P” Los desarrolladores emplearon “web services” proporcionados por la CNT E.P para facilitar el acceso a la información contenida en las bases de datos corporativas y usaron herramientas como “Avaya Dialog Deigner” y “Apache Tomcat” para el diseño, desarrollo e implementación de la solución.(Vaca 2012).

(23) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 12. Los especialistas implicados en dicho proyecto recomiendan definir correctamente el manejo de errores en el flujo de la llamada, para brindar un IVR consistente sin ningún tipo de caída por errores cometidos por el usuario, y en caso de que se cometan, entregar la información que ayude a solventarlos o intuirlos en línea. Esto último es una conclusión del proyecto, que aporta significativamente en el diseño de sistemas IVR, pero la estructura general del sistema que propone está fuertemente ajustada a las características de CNT E.P, de manera que requiere de modificaciones sustanciales para su aplicación en otras empresas. 1.2.3 Solución IVR en la Empresa Eléctrica Regional Norte (EMELNORTE S.A.) en la ciudad de Ibarra. Este trabajo se propone en una tesis de grado, en la que se hizo el diseño e implementación de un sistema de IVR para la empresa eléctrica EMELNORTE S.A. Se aprovecha la infraestructura previamente desplegada por dicha empresa en proyectos anteriores, y basándose en una arquitectura PBX 3COM V5000 se puso en funcionamiento una IVR con acceso a los servidores de bases de datos de EMELNORTE. Las tecnologías empleadas no fueron de código abierto, por lo que fue necesaria la adquisición de licencias para la puesta en producción del sistema. Las limitantes identificadas por los propios especialistas que llevaron a cabo el proyecto se enmarcan fundamentalmente en el plano económico.(Alvarado 2012) 1.2.4 Implementación de una IVR utilizando VoiceXML Browser. Este proyecto se orienta a la implementación de una central telefónica basada en Asterisk, sobre la cual se configura un Sistema de Respuesta de Voz Interactiva con VoiceXML Browser. Esta plataforma se encarga de solicitar documentos en formato vxml a un servidor web y ejecutar la programación de dichos ficheros. De esta forma se provee al usuario en línea de una conexión con una página web que emplea RSS y permite obtener información actualizada sobre noticias a nivel mundial, lo que constituye una solución creativa de mucha utilidad para usuarios con discapacidad.(Gómez 2011).

(24) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 13. Esta solución aborda temas importantes asociados con la configuración de Asterisk, y ofrece elementos que deben ser considerados como básicos sobre el diseño de sistemas IVR. Por otro lado, está enfocado a la obtención de los datos a partir de lectura de páginas web, lo cual no se corresponde con los objetivos trazados para el presente proyecto. 1.2.5 Herramienta de administración remota usando la IVR de Asterisk. Este trabajo presenta a Asterisk como la solución ante la necesidad de una vía de gestión remota sobre los servidores de la División Territorial de ETECSA en Villa Clara (DTVC), accesible para los administradores del centro de datos, no solo desde la red IP, sino también desde la red pública de abonados. Muestra las características de Asterisk que posibilitan la integración del servidor con la infraestructura existente en la DTVC para lograr la conexión con la PSTN. Desarrolla las funcionalidades que presentan a Asterisk como un potente sistema IVR, así como la plataforma capaz de interactuar con terceros sistemas a través de las AGI. Presenta la configuración de varias AGI, empleando el lenguaje PHP, que conforman la herramienta de gestión remota, la cual permite monitorizar, supervisar, y diagnosticar fallas desde un teléfono, sobre los servidores de la red corporativa. Por otra parte carece en su estructura de una base de datos que contenga información de los elementos de red, y de una interfaz de administración. Los comandos que se ejecutan sobre los servidores están definidos estáticamente en el código de las AGI, de manera que no se actualizan sin la intervención de un especialista. Emplea el software Festival, integrado a Asterisk para el envío de informes en formato de audio, pero no establece mecanismos para notificaciones vía correo electrónico ni SMS. Sin embargo, por la infraestructura que emplea y la estructura de la herramienta, esta implementación es el caso de éxito que más se ajusta a los objetivos propuestos en el presente proyecto, y servirá de punto de partida para el desarrollo del mismo, motivo por el cual se hará una descripción más detallada de dicha implementación..

(25) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 14. 1.2.5.1 Arquitectura del sistema IVR. Asterisk es un servidor virtual, usando la tecnología VMware ESXi 5.1. Cuenta con 30 GB de disco duro y 1GB de RAM. El número total de extensiones SIP declaradas asciende a 16,. en correspondencia con los troncos analógicos de la Mediatrix 1124 que están. conectados a una pizarra telefónica TDA 200. La figura 1 muestra la conexión del servidor Asterisk con la central digital, para el acceso desde la red pública de abonados a la IVR.. Figura 1. Conexión de Asterisk con la PSTN.. 1.2.5.2 Pizarra TDA 200. El sistema profesional híbrido KX-TDA200 proporciona soluciones avanzadas de telefonía y mensajería, comunicaciones eficaces y flexibles, movilidad DECT inalámbrica, VOIP, TOIP (Text over IP) e integración total con la PC mediante la conexión USB. Dentro de las principales características destacan:.

(26) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 15.  Centralita híbrida con tecnología IP.  Capacidad máxima para 128 extensiones híbridas, analógicas y digitales.  216 Puertos como máximo.  Sistema. DECT. (Telecomunicaciones. Inalámbricas. Mejoradas. Digitalmente). integrado, máximo de 32 antenas y 128 portátiles DECT.  Líneas RDSI (Red Digital de Servicios Integrados), BRI (interfaz básica) o PRI (línea primaria).  Enlace digital QSIG; protocolo de señalización que permite manejo básico de llamadas.  Selección automática de ruta (ARS).  Encaminamiento de menor costo (LCR).  Transmisión de Voz sobre Protocolo Internet (VoIP).  Integración con sistema procesador de mensajes de voz.  Funciones avanzadas de atención de llamadas: “call center”. La TDA 200 se puede conectar a otra central a través de una red privada IP. En este caso, las señales de voz se convierten en paquetes IP (VoIP) y se envían a través de la red. Las redes VoIP son compatibles con comunicaciones de red privada que utilicen servicios de línea dedicada.(Co 2005) En el caso de la DTVC, la pizarra TDA 200 se encuentra conectada a la central digital por medio de una tarjeta de línea externa E1 KX-TDA0188, para la gestión tanto de llamadas entrantes como salientes. La tarjeta E1 de la pizarra soporta tres tipos diferentes de canal para proporcionar la conexión, entre los que están DR2 (sistema digital R2), E&M continuo y E&M pulsada. Se puede asignar uno de estos tres tipos a cada uno de los 30 canales individualmente, de acuerdo con las frecuencias y las necesidades del usuario. En el presente proyecto fue seleccionado el tipo de canal DR2, que permite implementar varias funciones:  Marcación interna directa y marcación directa entrante..

(27) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 16.  Entrada directa de línea.  Identificación del llamante.  Servicios de tarificación de llamadas: La central recibe una señal de tarificación de llamadas durante o después de la conversión con un interlocutor externo. En la DTVC se establece una línea dedicada por medio de la interfaz de troncos analógicos KX-TDA0181, tarjeta de líneas externas analógicas de 16 puertos (LCOT16), los cuales se conectan a la Mediatrix 1124, para que ésta registre cada tronco con la extensión SIP correspondiente en el servidor Asterisk, sirviendo de interfaz entre la red analógica y la red IP. (Figura 2). Figura 2. Diagrama de línea dedicada entre la TDA 200 y Asterisk. Al acceder desde una línea externa a la TDA 200, se establece la llamada a través de uno de los troncos analógicos de la Mediatrix 1124 con la central Asterisk. Una extensión SIP de Asterisk ha sido declarada como el destino de las llamadas externas entrantes a la TDA 200. 1.2.5.3 Mediatrix 1124. Proporciona conectividad IP para las extensiones analógicas procedentes de la TDA 200. Logra conectar hasta 24 puertos analógicos a la red IP, a través de un único puerto 10/100 Base T Ethernet. Constituye un rentable dispositivo de acceso VoIP. Es auto configurable, manejable y se gestiona remotamente a través de una interfaz web. Ofrece soporte para el.

(28) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 17. protocolo SIP y para “codecs” de alta compresión, lo que permite economizar ancho de banda. Proporciona una forma sencilla y rentable de migrar a una infraestructura de telefonía basada en IP, sin la necesidad de desechar los dispositivos analógicos existentes. Protege la inversión del cableado y los terminales, que generalmente constituyen elementos costosos de una red. Para facilitar las implementaciones, la Mediatrix 1124 posee configuraciones específicas de fábrica, además cuenta con aprovisionamiento automático, pudiendo obtener los archivos de configuración encriptados de un servidor TFTP o HTTP. Dispone de una interfaz web que ofrece a los usuarios un acceso amigable a la unidad para la configuración inicial.(Ramirez 2013) En el presente trabajo se crearon 16 extensiones SIP para la configuración de la Mediatrix 1124, y se declararon cada una de ellas en el correspondiente puerto del gateway digital, de manera que sean registradas en el servidor Asterisk. El identificador de las extensiones SIP declaradas en el fichero de configuración de la Centralita Asterisk; sip.conf, coinciden con el declarado en la Mediatrix, permitiéndole al servidor reconocer cada una de las entradas SIP como extensiones independientes. 1.2.5.4 Funcionamiento del sistema Implementado. El Sistema IVR consta de tres módulos, el de autenticación, el de ejecución y el de registro de eventos. El primero de ellos se encarga de la obtención de los datos del llamante para la comprobación de los mismos en la base de datos del sistema, así como de la asignación de privilegios para el futuro encaminamiento de la llamada. El segundo módulo acomete la ejecución de AGIs, donde se encuentran programadas cada una de las posibles acciones administrativas o de supervisión sobre los servidores del centro de datos. Otra de las funciones de este bloque es la generación de informes en formato de audio a partir de las repuestas obtenidas de las AGIs implicadas. La herramienta que posibilita esto último es Festival, la cual se basa en la traducción de texto a voz.(Ramirez 2013).

(29) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 18. El módulo de registros de eventos está orientado a la generación de logs, tanto en ficheros locales como en la base de datos del sistema. El funcionamiento del sistema de IVRs queda ilustrado en la figura 3.. Figura 3. Diagrama de bloques del sistema de IVR. 1.3. Conclusiones del Capítulo.. Asterisk permite poner en funcionamiento una PBX en hardware de propósito general, con la correspondiente reducción de costes, impulsado por el auge del software libre y variedad de equipamiento disponible frente a las tradicionales PBX, basadas en hardware y software propietario. A través de la IVR de Asterisk se puede implementar la herramienta de gestión remota deseada, ya que ofrece una vía de interacción entre el usuario y el servidor, de manera que el último obtiene del primero los datos requeridos para invocar las AGIs que contienen acciones administrativas sobre otros elementos de red. Mediante la Interfaz de Pasarela de Asterisk se puede implementar una herramienta para la monitorización y gestión de servicios del centro de datos de ETECSA en Villa Clara..

(30) CAPÍTULO 1. Implementaciones de sistemas con Respuesta Interactiva de Voz (IVR). 19. El caso de éxito desplegado en ETECSA Villa Clara, que fue descrito con anterioridad, sienta fuertes bases para el desarrollo del presente trabajo, de ahí que es el seleccionado como punto de partida para la implementación del sistema de IVR trazado..

(31) CAPÍTULO 2. Componentes del sistema de IVR. 20. CAPÍTULO 2. Componentes del sistema de IVR.. 2.1. Diagrama general del sistema de IVR para la gestión del centro de datos virtualizado.. Para la realización de este proyecto, como se hizo referencia en el capítulo 1, se toma como punto de partida el caso de éxito descrito en el epígrafe 1.2.5 “Herramienta para administración remota usando la IVR de Asterisk”. La conexión del servidor de Asterisk con la PSTN se mantiene de la forma descrita en el mismo epígrafe, de manera que se aprovecha toda la infraestructura existente en la DTVC. Por otro lado, se conforma un sistema con múltiples IVR, que interactúan entre sí y con el llamante, de manera que permite ejecutar órdenes sobre el centro de datos. Para una mayor comprensión del sistema de IVR, se ilustra en la figura 4 un esquema general que agrupa los elementos más importantes del mismo.. Figura 4. Diagrama del sistema IVR en la DTVC.

(32) CAPÍTULO 2. Componentes del sistema de IVR. 21. Nótese que el sistema está compuesto por dos grandes bloques, el primero representa al centro de datos virtualizado, que a su vez está compuesto por la granja de servidores físicos, en los cuales se encuentran instalados los hypervisores de virtualización VMware y Proxmox. Los servidores físicos hospedan a los servidores virtuales, que son los que se brindan cada uno de los servicios corporativos (FTP, DHCP, DNS, e-Mail, Proxy, Web, Bases de Datos, etc). El segundo bloque lo conforma el servidor Asterisk, en el cual se encuentra instalado:  AsteriskNow: Para el control de las llamadas telefónicas a través del sistema de IVR y la ejecución de las AGIs  MySQL: Es el gestor que contiene la base de datos del sistema IVR  Apache: Servidor web, en el cual está publicado la interfaz de administración del sistemas de IVR. Dicha interfaz está programada en lenguaje PHP, usando el framework CodeIgniter y la librería ExtJS Estos dos grandes bloques interactúan mediante el protocolo de ejecución segura (SSH por sus siglas en Ingles) Por último, se encuentran los usuarios, que pueden ser de dos tipos:  Usuarios del sistema IVR: Son los que se conectan al sistema IVR mediante una llamada telefónica, se autentican. mediante códigos numéricos digitados en el. teléfono, y de acuerdo a sus roles pueden seleccionar las opciones definidas para ejecutar sobre los servidores del centro de datos virtualizado (CDV).  Administradores del sistema: Son usuarios de la aplicación web de administración. Se autentican mediante el servicio de directorio corporativo, y de acuerdo a sus roles, pueden definir parámetros del sistema IVR, modificar configuraciones generales, introducir o eliminar nuevos elementos del centro de datos virtualizado o realizar reportes sobre los componentes del CDV..

(33) CAPÍTULO 2. Componentes del sistema de IVR. 22. A continuación se hará un recorrido por cada uno de los componentes ilustrados en el diagrama general del sistema IVR, detallando en cada caso los aspectos más importantes de los mismos 2.2. Centro de datos virtualizado.. Un centro de datos virtualizado, puede definirse como un sistema de información donde existen componentes software “especiales” que se ubican entre las aplicaciones de negocio y los recursos físicos de la plataforma tecnológica, cuya funcionalidad es construir réplicas funcionales de los recursos físicos, llamados recursos virtuales. De ésta forma las aplicaciones ya no interactúan directamente con el hardware físico, sino que lo hacen siempre con los recursos virtuales, los cuales, a su vez interactúan con los físicos. A estos componentes software “especiales” se les llama hypervisores que son los responsables del manejo de las características del hardware de la máquina física que alberga máquinas virtuales. Así, el hypervisor, o Virtual Machine Monitor (VMM), se encarga de la gestión de los recursos (CPU, memoria, red y almacenamiento), de manera que el usuario pueda gestionar la creación de máquinas virtuales, dotándolas de una interfaz del hardware que sea compatible con el sistema operativo que se vaya a instalar en éstas. Esta capa de software permite, además, repartir dinámicamente la carga entre los diferentes sistemas virtualizados. (Castilla 2014) Se pueden distinguir principalmente dos modelos de hypervisores:  Hypervisor tipo 1: también denominado nativo o “unhosted”, se ejecuta directamente sobre el hardware, para ofrecer la funcionalidad descrita. Algunos de los más conocidos son VMware ESX, Xen Server o Microsoft HyperV.  Hypervisor tipo 2: también denominado “hosted”, se ejecuta sobre un sistema operativo. Algunos de los más conocidos son VirtualBox, VMware Workstation, QEMU o Virtual PC..

(34) CAPÍTULO 2. Componentes del sistema de IVR. 23. El tema en común de todas las tecnologías de virtualización es la de ocultar los detalles técnicos a través de la encapsulación. La virtualización crea un interfaz externo que esconde una implementación subyacente mediante la combinación de recursos en locaciones físicas diferentes, o mediante la simplificación del sistema de control.(Ahmed 2014) El presente trabajo está orientado a la gestión de centros de datos que emplean tecnologías de virtualización del tipo 1, específicamente para los hypervisores VMware y Proxmox. Para cada caso se explotan las potencialidades que ofrecen desde la CLI para el manejo de los recursos virtuales. 2.2.1 Virtualización con VMware ESXi. VMware ESXi es una plataforma de virtualización a nivel de centro de datos producido por VMware,Inc. Es el componente que se encuentra al nivel inferior de la capa de virtualización. Está compuesto de un sistema operativo autónomo que proporciona el entorno de gestión, administración y ejecución al software hypervisor, y los servicios y servidores que permiten la interacción con el software de gestión y administración y las máquinas virtuales.(VMware 2015)  vim-cmd vmsvc/getallvms: Muestra un resumen de todas las máquinas virtuales que posee el servidor, revela datos como, identificador de máquina virtual (VID del inglés Virtual Identifier), nombre, almacenamiento donde se hospeda, dirección completa de la carpeta contenedora de la máquina virtual y sistema operativo  vim-cmd vmsvc/power.off: Detiene una máquina virtual.  vim-cmd vmsvc/power.on: Inicia una máquina virtual.  vim-cmd vmsvc/power.reboot: Reinicia una máquina virtual.  vim-cmd vmsvc/snapshot.create: Permite hacer una instantánea a la máquina virtual, lo que es comúnmente empleado para la realización de salvas.(VMware 2015).

(35) CAPÍTULO 2. Componentes del sistema de IVR. 24.  vim-cmd hostsvc/datastore/summary: Permite obtener un resumen del estado de una unidad de almacenamiento, y obtener información sobre la capacidad y el porciento de utilización de la misma.(VMware 2015) 2.2.2 Virtualización con Proxmox VE. Proxmox VE es una distribución de virtualización que ofrece la posibilidad de gestionar servidores virtuales con tecnologías OpenVZ y Linux KVM al mismo tiempo. La línea de comandos de este hypervisor ofrece una amplia gama de opciones que permiten operar con las máquinas virtuales que alberga. Esta potencialidad de Proxmox, permite la gestión del entorno virtual a través del sistema de IVR. A continuación se relaciona los comandos que fueron seleccionados para ser ejecutados desde el sistema de IVR.(Proxmox 2014) Para el manejo de máquinas virtuales que emplean tecnología OpenVZ. (Cheng 2014)  vzlist: Muestra un listado de las máquinas virtuales que se están ejecutando en servidor de Proxmox. Si se le establece la opción “-a” muestra además los que están detenidos.  vzctl status: Muestra el estado de una máquina virtual. Es la forma de conocer si está detenida o iniciada.  vzctl stop: Detiene una máquina virtual.  vzctl start: Inicia una máquina virtual.  vzctl enter: Permite acceder a la consola de administración de la máquina virtual desde el hypervisor de virtualización, lo que es útil para ejecutar comandos en la propia máquina virtual  vzctl exec: Ejecuta un comando en la CLI de la máquina virtual desde el hypervisor de virtualización. (Similar a "vzctl enter") Para el manejo de máquinas virtuales que emplean tecnología Linux KVM.(Proxmox 2015)  qm list: Muestra un listado de las máquinas virtuales  qm status: Muestra el estado de una máquina virtual.

(36) CAPÍTULO 2. Componentes del sistema de IVR. 25.  qm stop: Detiene una máquina virtual  qm start: Inicia una máquina virtual  qm reset: Reinicia una máquina virtual  qm clone: Permite realizar un clon a una máquia virtual existente  qm créate: Crea una nueva máquina virtual  qm snapshot: Permite hacer una instantánea a la máquina virtual, lo que es comúnmente empleado para la realización de salvas 2.3. Diseño de la base de datos.. 2.3.1 Gestor de base de datos MySQL. MySQL es un sistema de base de datos multiusuario distribuido bajo Licencia Pública General (GNU por sus siglas en inglés), que ha alcanzado a ser uno de los gestores de bases de datos de código abierto más populares. Su continua evolución se debe al gran número de desarrolladores que trabajan para mejorar el código y mantenerlo actualizado. Ofrece uno de los motores de bases de datos más potentes de código abierto. Las características incluyen un soporte completo de ACID (atómica, consistente, aislada, duradera), bloqueo a nivel de filas, posibilidad de transacciones distribuidas, y soporte de transacciones con múltiples versiones donde los lectores no bloquean a los escritores y viceversa. Posibilita la instalación y puesta a punto en un tiempo corto, sin importar que la plataforma sea Windows, Linux o UNIX. MySQL también ofrece una completa colección de herramientas gráficas de gestión que permiten controlar y resolver problemas en varios servidores desde una misma estación de trabajo. (Morgan 2012) 2.3.2 Análisis de Requisitos. Se quiere diseñar una base de datos para una aplicación que se encarga de gestionar por vía telefónica, un Centro de Datos Virtualizado (CDV)..

(37) CAPÍTULO 2. Componentes del sistema de IVR. 26. El CDV está sustentado por varios servidores físicos instalados con los hypervisores de virtualización VMware ESXi y Proxmox. Cada servidor físico es caracterizado por su dirección IP, tipo de hypervisor de virtualización que tiene instalado, memoria RAM instalada y número de núcleos del procesador, las cuales representan las características más importantes para la tecnología empleada. Cada Servidor físico tiene discos de almacenamiento compartido (“storages”) que poseen diferentes capacidades y pueden ser usados por uno o más servidores. Son identificados dentro del sistema de virtualización por un nombre que se le asigna al crearse. Cada servidor físico controla servidores virtuales, que pueden ser de diferentes sistemas operativos. Al ser creados estos últimos, se les asignan identificadores numéricos únicos (VID) y nombres, así como una ubicación dentro de uno de los “storages” compartidos del sistema. Los servidores virtuales ofrecen servicios de red, de los cuales es necesario almacenar información como el nombre, el puerto por el que se ofrece y el estado en el que encuentra. La aplicación desarrollada es utilizada por un grupo de usuarios, de los que se conocen el nombre, el cargo que ocupan y el número telefónico, además de un identificador numérico de 6 dígitos y una clave de acceso de 12 dígitos. Nótese que se especifica dígitos y no caracteres, porque la autenticación de los usuarios será vía telefónica. Los usuarios realizan operaciones sobre los servidores virtuales y se necesita llevar el registro de todas las operaciones, almacenando el tiempo de inicio, usuario que ejecuta, tipo de acción realizada y resultado de la operación. Todos los datos deben quedar almacenados de forma tal que se puedan consultar cada vez que se necesite para hacer análisis de servidores físicos, servidores virtuales, o realizar alguna operación desde el sistema de IVR mediante el teléfono. 2.3.3 Diagrama Entidad – Relación. El modelo entidad-relación es una herramienta para modelar los datos de un sistema de información. Estos modelos expresan entidades relevantes para un sistema de información así como sus interrelaciones y propiedades. El modelo de datos entidad-relación está.

(38) CAPÍTULO 2. Componentes del sistema de IVR. 27. basado en una percepción del mundo real que consta de una colección de objetos básicos, llamados entidades, y de relaciones entre esos objetos.(Nixon 2012) Los diagramas Entidad-Relación son un lenguaje gráfico para describir conceptos, es decir, son dibujos o gráficos que describen información que trata un sistema de información y el software que lo automatiza. Para conformar el diagrama Entidad-Relación que modela la información del centro de datos se toman en consideración los siguientes aspectos:  Un servidor virtual es sustentado por un único servidor físico.  Un servidor físico contiene cero o varios servidores virtuales.  Un servidor físico posee 1 o varios dispositivos de almacenamiento  Un dispositivo de almacenamiento debe ser asignado al menos a un servidor físico  En un dispositivo de almacenamiento pueden existir 1 o varios servidores virtuales  Un servidor virtual está ubicado únicamente en un dispositivo de almacenamiento  Un tipo de hypervisor puede estar instalado en uno o varios servidores físicos  Un servidor físico tiene instalado un único tipo de hypervisor  Un servidor virtual ofrece uno o varios servicios.  Un tipo de servicio puede ofrecerse por uno o varios servidores virtuales El diagrama Entidad-Relación de este sistema es el que se muestra en la figura 5.

(39) CAPÍTULO 2. Componentes del sistema de IVR. 28. Figura 5. Diagrama Entidad-Relación del sistema de IVR 2.3.4 Estructura final de la base de datos. Para la realización de este proyecto se crea una base de datos con nombre Asterisk, que cuenta con ocho tablas dedicadas a la información de los servidores del centro de datos:  hypervisor: se almacenan los tipos y versiones de las tecnologías de virtualización instaladas en el centro de datos.  servidor_físico: se almacenan las características de los servidores físicos del centro de datos, definiéndose como dato imprescindible la dirección IP que posee cada uno en la red corporativa.  storage: guarda información sobre los dispositivos de almacenamiento del centro de datos.  servidor_virtual: contiene la relación de servidores virtuales instalados en cada servidor físico.  servicio: posee el listado de todos los servicios del centro de datos que van a ser administrados desde la IVR.  está_instalado: representa la relación entre los hypervisores y los servidores físicos.  posee: representa la relación entre los “storages” y los servidores físicos.  ofrece: representa la relación entre los servicios y los servidores virtuales. Fue necesario la incorporación de otro conjunto de tablas, para uso de la interfaz web, enfocadas a funcionalidades como la autenticación, el manejo de los roles de usuarios, la configuración de notificaciones, la configuración de los “logs” del sistema, entre otras. 2.4. Diseño de la interfaz de administración web.. Para el proveer al sistema de IVR de una interfaz de administración gráfica, que permita la configuración de los parámetros generales, se desarrolla una aplicación web. Esta se encuentra instalada en el propio servidor Asterisk, usando el servidor Apache..

(40) CAPÍTULO 2. Componentes del sistema de IVR. 29. Para la programación de esta interfaz se emplea el framework de código abierto CodeIgniter, y la biblioteca JavaScript Sencha Ext JS. A continuación se hará una descripción de estas tecnologías, definiendo las principales características que son aprovechadas para la realización de este trabajo. 2.4.1 Framework CodeIgniter. Para el desarrollo de la interfaz de administración web se emplea CodeIgniter, que es un framework basado en plataforma de código abierto mediante el empleo del lenguaje PHP Como cualquier otro framework, Codeigniter contiene una serie de bibliotecas que sirven para el desarrollo de aplicaciones. Marca una manera específica de codificar las páginas web y clasificar sus diferentes scripts, que sirve para que el código esté organizado y sea más fácil de crear y mantener. (Castrejón 2015) Principales ventajas que ofrece:  Versatilidad: Esta es la característica principal de CodeIgniter, en comparación con otros frameworks PHP. CodeIgniter es capaz de trabajar la mayoría de los entornos o servidores, incluso en sistemas de alojamiento compartido, donde sólo se tiene un acceso por FTP para enviar los archivos al servidor y donde no se tiene acceso a su configuración.  Compatibilidad: CodeIgniter es compatible con la versión PHP 4, lo que hace que se pueda utilizar en cualquier servidor, incluso en algunos antiguos, además de funcionar correctamente en PHP 5.  Facilidad de instalación: No es necesario más que una cuenta de FTP para subir CodeIgniter al servidor, y su configuración se realiza con apenas la edición de un archivo, donde se deben escribir personalizaciones como el acceso a la base de datos. Durante la configuración no se necesita acceso a herramientas como la línea de comandos, que no suelen estar disponibles en todos los alojamientos.  Flexibilidad: CodeIgniter es bastante menos rígido que otros frameworks. Define una manera de trabajar específica, pero en muchos de los casos se puede seguirla o no y.

(41) CAPÍTULO 2. Componentes del sistema de IVR. 30. sus reglas de codificación muchas veces se pueden evadir. Algunos módulos como el uso de plantillas son totalmente opcionales.  Ligereza: El núcleo de CodeIgniter es bastante ligero, lo que permite que el servidor no se sobrecargue interpretando o ejecutando grandes porciones de código. La mayoría de los módulos o clases que ofrece se pueden cargar de manera opcional, sólo cuando se van a utilizar realmente.  Documentación: La documentación de CodeIgniter es fácil de seguir y de asimilar porque está escrita en modo de tutorial. 2.4.1.1 Modelo Vista Controlador. CodeIgniter implementa el patrón arquitectónico llamado Modelo Vista Controlador (MVC), que es un estándar de programación de aplicaciones, utilizado tanto para hacer sitios web como programas tradicionales. Es un patrón para el desarrollo de software que separa la lógica de control, la interfaz del usuario y los datos del sistema. En este tipo de arquitectura del software existe un sistema central o controlador que controla las entradas y salida del sistema, uno o varios modelos que se encargan de buscar los datos e información que sea necesaria y una o varias interfaces gráficas (vistas), que se encargan de hacer las presentaciones al usuario.(Mendez 2014) El MVC es muy usado en el desarrollo Web porque a diferencia de la creación de programas locales donde se usa por lo general un mismo lenguaje para desarrollar toda un aplicación, en el desarrollo Web se requiere por lo menos usar 2 lenguajes (HTML y PHP) para crear una página simple.(Argulo 2014) 2.4.2 JavaScript. JavaScript es un lenguaje de programación interpretado. Se define como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico. Se utiliza principalmente en su forma del lado del cliente, implementado como parte de un navegador web permitiendo mejoras en la interfaz de usuario y páginas web dinámicas. JavaScript se diseñó con una sintaxis similar al lenguaje C, aunque adopta nombres y convenciones del lenguaje de programación Java. Todos los navegadores modernos interpretan el código.

(42) CAPÍTULO 2. Componentes del sistema de IVR. 31. JavaScript integrado. Para interactuar con una página web se provee al lenguaje JavaScript de una implementación del “Document Object Model” (DOM). 2.4.2.1 Biblioteca ExtJS. ExtJS es una biblioteca de JavaScript para el desarrollo de aplicaciones web interactivas que además de flexibilizar el manejo de componentes de la página como el DOM, Peticiones AJAX, DHTML, tiene la gran funcionalidad de crear interfaces de usuario bastante funcionales. (Villa 2013) Ventajas:  Una de las grandes ventajas de utilizar ExtJS es que permite crear aplicaciones complejas utilizando componentes predefinidos.  Evita el problema de tener que validar el código para que funcione bien en cada uno de los navegadores (Firefox, IE, Safari, Opera etc.).  Relación entre Cliente-Servidor balanceado: Se distribuye la carga de procesamiento, permitiendo que el servidor pueda atender más clientes al mismo tiempo.  Eficiencia de la red: Disminuye el tráfico en la red pues las aplicaciones cuentan con la posibilidad de elegir qué datos desea trasmitir al servidor y viceversa (criterio este que puede variar con el uso de aplicaciones de pre-carga).  Comunicación asíncrona. En este tipo de aplicación el motor de “render” puede comunicarse con el servidor sin necesidad de estar sujeta a un clic o una acción del usuario, dándole la libertad de cargar información sin que el cliente se dé cuenta. 2.4.3 Procesamiento a realizar a los datos. La aplicación debe permitir:  Insertar, eliminar y actualizar datos asociados a servidores físicos.  Insertar, eliminar y actualizar datos asociados a hypervisores de virtualización.  Insertar, eliminar y actualizar datos asociados a los servicios de red..

(43) CAPÍTULO 2. Componentes del sistema de IVR. 32.  Realizar reportes sobre los servidores virtuales, hypervisores de virtualización, servidores físicos y “storages”.  Crear, eliminar y modificar roles de usuario.  Crear y eliminar usuarios del sistema. 2.5. Comunicación segura entre el sistema IVR y el centro de datos.. Para la gestión del centro de datos, el sistema de IVR requiere comunicarse con los servidores físicos, de manera que pueda mediante el uso de la línea de comandos (CLI) ejecutar las operaciones definidas en cada hypervisor. De igual forma, requiere la comunicación con los servidores virtuales, para poder interactuar con los servicios que ofrecen desde la CLI del sistema operativo. Como puede notarse, la comunicación entre la IVR y cualquier elemento del centro de datos tiene fines administrativos, lo cual exige la implementación de mecanismos de seguridad y el empleo de protocolos seguros, razón esta que conduce a la implementación del protocolo de ejecución segura (SSH, del inglés Secure Shell), explotando una de sus mayores potencialidades: la autenticación mediante llaves pública/privada. 2.5.1 El protocolo de ejecusion segura SSH. SSH es un protocolo que facilita las comunicaciones seguras entre dos sistemas usando una arquitectura cliente/servidor, y que permite a los usuarios conectarse a un equipo remotamente. A diferencia de otros protocolos de comunicación remota tales como FTP o Telnet, SSH encripta la sesión de conexión, haciendo difícil que alguien pueda obtener contraseñas en texto plano.(Duran 2015) SSH está diseñado para reemplazar los métodos más viejos y menos seguros para registrarse remotamente en otro sistema a través de la línea de comando, tales como telnet o RSH. Un programa relacionado, el SCP, reemplaza otros diseñados para copiar archivos entre equipos como RCP, ya que estas aplicaciones antiguas no encriptan contraseñas entre el cliente y el servidor. El uso de métodos seguros para registrarse remotamente a otros.

Figure

Figura 1. Conexión de Asterisk con la PSTN.
Figura 2. Diagrama de línea dedicada entre la TDA 200 y Asterisk.
Figura 3. Diagrama de bloques del sistema de IVR.
Figura 4. Diagrama del sistema IVR en la DTVC
+7

Referencias

Documento similar

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de

"No porque las dos, que vinieron de Valencia, no merecieran ese favor, pues eran entrambas de tan grande espíritu […] La razón porque no vió Coronas para ellas, sería

d) que haya «identidad de órgano» (con identidad de Sala y Sección); e) que haya alteridad, es decir, que las sentencias aportadas sean de persona distinta a la recurrente, e) que

En este sentido, puede defenderse que, si la Administración está habilitada normativamente para actuar en una determinada materia mediante actuaciones formales, ejerciendo

La Ley 20/2021 señala con carácter imperativo los procesos de selección. Para los procesos de estabilización del art. 2 opta directamente por el concurso-oposición y por determinar

 Para recibir todos los números de referencia en un solo correo electrónico, es necesario que las solicitudes estén cumplimentadas y sean todos los datos válidos, incluido el

1) La Dedicatoria a la dama culta, doña Escolástica Polyanthea de Calepino, señora de Trilingüe y Babilonia. 2) El Prólogo al lector de lenguaje culto: apenado por el avan- ce de

6 José Carlos Rovira, en su estudio Léxico y creación poética en Miguel Hernández, expone lo que para él simboliza la figura del rayo: “El poeta es rayo que no cesa,