La Versión Digital De Esta Tesis Está Protegida Por La Ley De Derechos De Autor Del Ecuador. Los Derechos De Autor Han Sido En
Total Page:16
File Type:pdf, Size:1020Kb
La versión digital de esta tesis está protegida por la Ley de Derechos de Autor del Ecuador. Los derechos de autor han sido entregados a la “ESCUELA POLITÉCNICA NACIONAL” bajo el libre consentimiento del (los) autor(es). Al consultar esta tesis deberá acatar con las disposiciones de la Ley y las siguientes condiciones de uso: • Cualquier uso que haga de estos documentos o imágenes deben ser sólo para efectos de investigación o estudio académico, y usted no puede ponerlos a disposición de otra persona. • Usted deberá reconocer el derecho del autor a ser identificado y citado como el autor de esta tesis. • No se podrá obtener ningún beneficio comercial y las obras derivadas tienen que estar bajo los mismos términos de licencia que el trabajo original. El Libre Acceso a la información, promueve el reconocimiento de la originalidad de las ideas de los demás, respetando las normas de presentación y de citación de autores con el fin de no incurrir en actos ilegítimos de copiar y hacer pasar como propias las creaciones de terceras personas. Respeto hacia sí mismo y hacia los demás. ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA DESARROLLO DE UNA APLICACIÓN WEB ALTERNATIVA PARA VIDEOCONFERENCIA Y COMPARTICIÓN DE PANTALLA CON EL USO DE WEBRTC TRABAJO DE TITULACIÓN PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERA EN ELECTRÓNICA Y REDES DE INFORMACIÓN MICHELLE ALEJANDRA PERALBO VELASCO [email protected] DIRECTOR: ING. ANDRÉS FERNANDO REYES CASTRO, MSc. [email protected] CODIRECTOR: ING. ANA MARÍA ZAMBRANO VIZUETE, PhD. [email protected] Quito, marzo 2019 AVAL Certificamos que el presente trabajo fue desarrollado por Michelle Alejandra Peralbo Velasco, bajo nuestra supervisión. Ing. Andrés Reyes, MSc. DIRECTOR DEL TRABAJO DE TITULACIÓN Ing. Ana Zambrano, PhD. CODIRECTOR DEL TRABAJO DE TITULACIÓN I DECLARACIÓN DE AUTORÍA Yo, Michelle Alejandra Peralbo Velasco, declaro bajo juramento que el trabajo aquí descrito es de mi autoría; que no ha sido previamente presentado para ningún grado o calificación profesional; y, que he consultado las referencias bibliográficas que se incluyen en este documento. A través de la presente declaración cedo mis derechos de propiedad intelectual correspondientes a este trabajo, a la Escuela Politécnica Nacional, según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y por la normatividad institucional vigente. Michelle Alejandra Peralbo Velasco II DEDICATORIA A mi madre Mercedes, mi fuente infinita de fortaleza, por ser mi pilar y no permitir que me derrumbe en los momentos difíciles. Por su amor y su paciencia. A mi hermano Jeremy, por ser mi más grande amigo, por todos los momentos en los que me dio su apoyo, confió en mí y me alentó a hacer mi mejor esfuerzo. A mi padre Freddy, por las enseñanzas y valores que en algún momento supo impartirme para hacer de mí una persona de bien. III AGRADECIMIENTO “Tantas veces me mataron tantas veces me morí, sin embargo, estoy aquí resucitando. Gracias doy a la desgracia y a la mano con puñal porque me mató tan mal y seguí cantando” María Elena Walsh A cada uno de mis familiares, por sus consejos, su bondad y apoyo, que hicieron esta etapa de mi vida más llevadera. A mis amigos, que siempre me brindaron su apoyo incondicional y que han sido parte importante de mi carrera universitaria y de mi vida en general. A mis profesores, que supieron guiarme a lo largo de este camino y me enseñaron a reconocer en la dificultad, las oportunidades, de manera especial agradezco al Ing. Andrés Reyes por ser mi guía en este proceso y al Ing. Pablo Hidalgo por sus consejos profesionales y su aliento constante para lograr mis objetivos. IV ÍNDICE DE CONTENIDO AVAL ....................................................................................................................... I DECLARACIÓN DE AUTORÍA ............................................................................... II DEDICATORIA ...................................................................................................... III AGRADECIMIENTO .............................................................................................. IV ÍNDICE DE CONTENIDO ....................................................................................... V ÍNDICE DE FIGURAS ........................................................................................... IX ÍNDICE DE TABLAS ............................................................................................ XII ÍNDICE DE CÓDIGOS ........................................................................................ XIII RESUMEN ........................................................................................................... XV ABSTRACT ......................................................................................................... XVI 1. INTRODUCCIÓN ............................................................................................. 1 1.1 Objetivos ................................................................................................... 1 1.2 Alcance ..................................................................................................... 1 1.3 Marco Teórico ........................................................................................... 3 1.3.1 Comunicaciones Basadas En Web .............................................................. 3 1.3.1.1 Arquitectura Web .................................................................................. 3 1.3.1.2 Aplicación Web .................................................................................... 3 1.3.1.3 Navegador Web .................................................................................... 5 1.3.2 Videoconferencia ......................................................................................... 6 1.3.2.1 Soluciones de Videoconferencia ........................................................... 6 1.3.3 WebRTC ...................................................................................................... 7 1.3.3.1 Introducción .......................................................................................... 7 1.3.3.2 Desarrollo e Historia ............................................................................ 8 1.3.3.3 Arquitectura WebRTC ........................................................................... 8 1.3.3.4 Stack de Protocolos .............................................................................. 9 1.3.3.5 Arquitecturas de Videoconferencia ......................................................10 1.3.3.6 Señalización en WebRTC ....................................................................12 1.3.3.7 WebRTC y Navegadores ....................................................................12 1.3.3.8 APIs WebRTC .....................................................................................13 1.3.4 HTML5........................................................................................................15 1.3.4.1 Estructura Global HTML ......................................................................15 1.3.5 CSS ............................................................................................................16 V 1.3.6 JavaScript ...................................................................................................16 1.3.7 Bootstrap ....................................................................................................16 1.3.8 APIs HTML5 JavaScript ..............................................................................17 1.3.9 Node.js .......................................................................................................18 1.3.9.1 Definición .............................................................................................18 1.3.9.2 NPM ....................................................................................................18 1.3.9.3 Módulos de Node.js .............................................................................19 1.3.10 Socket.IO ....................................................................................................19 1.3.10.1 APIs Socket.IO ....................................................................................20 1.3.11 MySQL .......................................................................................................20 1.3.12 Scrum .........................................................................................................21 1.3.12.1 Roles ...................................................................................................21 1.3.12.2 Eventos ...............................................................................................22 1.3.12.3 Artefactos ............................................................................................22 1.3.13 Trabajos Relacionados ...............................................................................23 2. METODOLOGÍA ............................................................................................ 25 2.1 Diseño del Prototipo ................................................................................ 25 2.1.1 Arquitectura ................................................................................................25 2.1.2 Análisis de requerimientos ..........................................................................26 2.1.3 Especificación de requerimientos ...............................................................26 2.1.3.1 Requerimientos