• TEMA DEL MES •

El efecto Beakman en México

Beakman y los retos tecnológicos: boletaje y transmisión online

Fernando Javier Martínez Mendoza
Beakman y los retos tecnológicos: boletaje y transmisión online
  • Uno
  • Dos
  • Tres

Introducción

 Boleto para la presentación de Beakman en la UNAM.
Boleto para la presentación de Beakman en la UNAM.
Es muy probable que uno de los elementos centrales en los procesos de desarrollo de muchos países sea la forma en la que afrontan los desafíos que plantea la revolución científica-tecnológica, así como su adaptación para satisfacer retos, por ejemplo, educativos, culturales y de comunicación (SUNKEL, 2006). Específicamente en el campo de la comunicación de la ciencia (divulgadores, museos de ciencia, revistas científicas o medios de comunicación), esta revolución ha obligado a desarrollar procesos y tecnologías que hagan más eficiente la entrega y el intercambio de información y que promuevan la participación de los públicos. Con la Internet, además, surgen nuevas posibilidades de dar sentido a fenómenos científicos y que el público general tenga un mayor acceso a estos contenidos.

La tecnología de la información es una herramienta cada vez más importante para la comunicación de la ciencia, especialmente cuando se pretende que el mensaje llegue a públicos masivos. La visita de Beakman a la UNAM no fue una excepción, pues el reto de convertir un pequeño show en un evento masivo requirió un sofisticado desarrollo tecnológico que simplemente no existía. La responsabilidad de llevarlo a cabo recayó sobre la Secretaría Técnica de Cómputo, Telecomunicaciones y Fotografía del Instituto de Física. El reto era grande: lograr que cualquier persona (sin importar edad, ocupación o lugar de procedencia) pudiera tener la oportunidad de asistir al evento. Y por otro lado, dado el inesperado efecto que tuvo la difusión de la visita de Beakman a través de redes sociales, evitar que hubiera tal sobrecupo que se pusiera en riesgo la seguridad de los asistentes.

La propuesta fue generar un sistema de entrega de boletos electrónicos gratuitos para tener accesos equitativos y evitar riesgos de sobrecupo y, además, ofrecer la posibilidad de que cualquier persona con acceso a Internet pudiera seguir en vivo a través del canal Youtube del Instituto de Física los shows en Universum y todos los eventos que se presentarían como parte de su 75 aniversario.

Formulario Beakman UNAM
Taquillas del Estadio Olimpico Universitario.

Ocho mil boletos en dos semanas

Se decidió que cada solicitante podía tener uno o dos boletos. Para reducir la posibilidad de que un mismo usuario se registrara varias veces era necesario que el sistema hiciera una validación por correo electrónico. Es decir, que limitara el registro de cada correo electrónico a una sola vez.

Cadena pseudoaleatoria

  • Que busca generar una cadena al azar por un algoritmo determinista. En las mismas condiciones iniciales producen el mismo resultado.
Resolver la creación y distribución de boletos para las presentaciones de Beakman propició varias reuniones con distintas dependencias de la UNAM. También hubo acercamientos con empresas privadas de boletaje. Desafortunadamente, ni las dependencias de la UNAM ni las empresas cumplían con todos los requisitos de nuestro evento, por lo que se tuvieron que explorar nuevos caminos.

Sin más opciones disponibles, y a dos semanas del show, se decidió que la Secretaría de Cómputo del Instituto desarrollara el sistema que respondiera a las necesidades del evento: otorgar boletos de forma equitativa, segura, gratuita y confiable. Debía, además, respetando la política de desarrollo del Instituto, estar basado en tecnología de software libre, beneficiándonos así de la experiencia de los desarrolladores del IFUNAM, que han generado desde hace algunos años aplicaciones para uso de la comunidad universitaria bajo la licencia de software libre.

Finalmente, ya que el desarrollo del sistema se haría en el mismo Instituto, se decidió incluir la generación de boletos para el resto de los eventos del 70 Encuentro de Ciencias, Artes y Humanidades –nueve en total- y compartirlo para que pudiera ser utilizado en cualquier otro evento universitario que requiriera controles de acceso.

Formulario Beakman UNAM
Formulario de la página de registro a eventos.

En dos semanas se desarrolló este sistema generador de boletos, el cual está integrado de la siguiente forma:
  1. Panel administrador para la creación, edición y eliminación de eventos vía formularios, así como visualización en tiempo real de la entrega de boletos.

  2. Módulo de registro y generación de boletos electrónicos.

  3. Módulo de validación de boletos electrónicos.

  4. Sitio Web con información de los eventos.
El sistema fue diseñado para que siguiera el siguiente flujo:
  • El usuario se registra en una página en internet, en la que se le solicitan algunos datos básicos, entre ellos, el evento al que quiere asistir y un correo electrónico de validación.

  • El sistema valida la existencia de boletos disponibles para el evento y que el correo proporcionado no haya sido registrado anteriormente. Con esto aseguramos que una misma cuenta de correo pueda solicitar boletos en todos los eventos del sistema pero solamente con un registro.

  • El sistema proporciona un token único formado por una cadena pseudoaleatoria , utilizado para formar una URL única de generación de boleto, que es enviada por correo electrónico al usuario.

  • URL

    • Uniform Resource Locator, secuencia de caracteres que se usa para nombrar recursos en internet para su localización.
  • El usuario ingresa a su correo electrónico y al dar click en la URL activa una acción de controlador que realiza varias acciones: valida el cupo en el evento y posteriormente valida si el boleto ya había sido generado –si no, lo genera en formato PDF agregando un código de barras que lo hace único dentro del sistema–.

  • El sistema almacena el boleto en un directorio bóveda desde el cual sólo se puede tener acceso haciendo uso de un controlador que requiere de un token único para descargar el boleto. Esa nueva URL única con la llamada al controlador y su respectivo token es presentada en una página web al usuario para que, al dar click, su boleto sea descargado.

  • En caso de pérdida de boleto por parte del usuario, éste siempre puede volver a dar click a su token de generación, pero el sistema detecta que ese boleto ya fue previamente generado por lo que simplemente le da acceso al boleto almacenado en la bóveda.

  • La emisión del boleto asegura un lugar en el evento. Pero en el momento en que se agotan los boletos, el sistema se bloquea automáticamente con el fin de evitar el sobrecupo.

¿Por qué fue tan difícil obtener un boleto?

Ejemplo de boletos generados por el sistema
Ejemplo de boletos generados por el sistema.

El hecho de que el registro no finalizara hasta que el usuario hubiera dado click en su enlace generador de boleto (enlace enviado por correo electrónico) era fundamental, ya que, de lo contrario, cualquier persona o programa podía llenar el formulario n cantidad de veces vaciando así los lugares disponibles del mismo. Sólo cuando una persona daba click al enlace enviado era cuando uno o dos lugares eran ocupados. Hubo diversos ataques informáticos, tratando de generar boletos como ataques de fuerza bruta o incluso de negación del servicio, pero ninguno tuvo éxito, aunque llegó a afectar la velocidad de respuesta.

La demanda al sistema fue asombrosa. Con apoyo de Google Analytics se pudo revisar en tiempo real las solicitudes al sistema, que entregó un total de dos boletos por segundo, en promedio. La siguiente gráfica muestra más de 2000 usuarios en el mismo momento realizando diversas peticiones simultáneas para el evento del viernes.

El módulo de validación de boletos electrónicos consistía en un sistema de ingresos con validación del código de barras generado por nuestro sistema de boletaje, el cual utilizaba tabletas electrónicas con puerto USB para conectar lectoras de código de barras. Al ingresar un boleto se validaba que éste fuera real y posteriormente se registraba el acceso en el sistema. Con esto se cumplía con la validación de los datos de ingreso único. Esto permitió evitar la duplicación de los boletos, ya que el primer registro del código de barras bloqueaba el acceso. En caso de un intento de abuso, el sistema indicaba la hora de acceso y boleto.

Solicitudes simultáneas. Fuente: Google Analytics
Solicitudes simultáneas. Fuente: Google Analytics.

Este sistema de boletaje fue desarrollado en dos semanas utilizando la siguiente tecnología:
  1. Lenguaje Ruby

  2. Framework Ruby on Rails

  3. HTML5, CSS3 y jQuery

  4. RDBMS MySQL

  5. Gema rghost_rails para la generación de archivo en PDF

  6. Gema rghost_barcode para la generación de códigos de barras

  7. Servidor Web Apache + Phussion Passenger para servidor de producción

  8. Conexión al Servidor de Correos del IFUNAM
La arquitectura de red del Instituto de Física de la UNAM permite tener controles sobre las conexiones. Tanto el firewall como los sistemas detectores de intrusos estuvieron registrando y deteniendo los ataques informáticos.

Arquitectura de red IFUNAM
Arquitectura de red IFUNAM.

Transmisión en línea, el segundo reto

Desde que se anunció la visita de Beakman en las redes sociales del IFUNAM, llegaron decenas de mensajes solicitando que hubiera transmisión en línea del show, especialmente de gente que no podía estar físicamente en el evento.

Desde hace varios años, la infraestructura del IFUNAM permite tener transmisiones en vivo de los eventos más importantes por streaming . Sin embargo, la demanda que se detectó al realizar la entrega de los boletos nos dio una clara señal de que se requería una gran capacidad de cómputo. En el 2013, el Instituto de Física adquirió un equipo de audio y video para la transmisión en vivo de nuestros eventos, mismos que fueron la oportunidad de probar nuestros sistemas de transmisión.

Streaming

  • Distribución de video a través de la red.

Con el avance de la tecnología y con empresas que permiten hacer streaming con tecnología compartida como youtube live, es posible que la transmisión sea estable y pueda existir una gran cantidad de peticiones al servidor de streaming. Con una consola sencilla para realizar mezclas de las tres cámaras de videoconferencia que se encuentran en el auditorio del Instituto y una consola roland v40hd para convertir audio y video a una señal digital y transmitirla con el software wirecast al canal de Youtube del IFUNAM, tuvimos la posibilidad de transmitir y tener una gran cantidad de usuarios viendo nuestros eventos. Fueron hasta 6,000 usuarios simultáneos viendo los eventos en vivo, y en un sólo día otros 19,000 vieron los eventos grabados.

Streaming de eventos
Streaming de eventos.

Nada de esto hubiera sido posible sin la red gigabit del IFUNAM, una red estable, con seguridad, que permite controlar el tráfico. El tener este tipo de herramientas nos permite llegar a una gran cantidad de público, no sólo en México, sino también en países como Estados Unidos, Colombia, España, Argentina, Perú, Brasil, Francia, o Reino Unido.

La tecnología de wirecast comprime el video a un formato H.264. Si se configura a 30 fps podemos obtener las siguientes tasas de transmisión:

Tasas de transmisión wirecast
Tasas de transmisión wirecast

Con esto podemos obtener transmisiones de excelente calidad utilizando un ancho de banda relativamente bajo y asegurar la transmisión hacia el canal de Youtube del IFUNAM.

Más allá de Beakman, la tecnología al servicio de la sociedad

En el ciclo de desarrollo de un software, realizar pruebas de estabilidad en un ambiente controlado es un paso indispensable para asegurar su funcionamiento. Los retos establecidos al equipo de cómputo del IFUNAM exigían resultados inmediatos. Se desarrolló un software de gran calidad para la entrega de los boletos y control de acceso, se encontraron diversos puntos de mejora en el ambiente productivo que pudieron haber sido resueltos durante la fase de pruebas (que no existió por la urgencia de desarrollos y puesta en marcha), que incluía ancho de banda en el firewall, separación de tareas en los distintos servidores, o incluso un cluster para la atención de las peticiones. A pesar de la falta de tiempo para esto, el sistema cumplió con los objetivos propuestos. Con poco menos de dos semanas se desarrolló un software estable que permitió entregar los boletos, que los hacía únicos y que aseguró tener un evento seguro y controlado. Por otra parte, con el sistema de boletaje se le dio la oportunidad a toda la gente de asistir al evento, o en su defecto, con la transmisión en vivo, de poder verlo en una transmisión sin interrupciones y con excelente calidad de audio y video.

Pero el resultado va más allá de los shows de Beakman, pues actualmente el Instituto de Física cuenta con un software que puede ayudar a distintos eventos universitarios, así como el equipo y la experiencia para transmitir eventos en vivo. Es la experiencia viva de cómo la tecnología puede ayudar a acercar la ciencia a todos los interesados. fin

Estos sistemas no hubieran sido posibles sin la valiosa cooperación, iniciativa y desarrollo del Ing. Gustavo Gómez, también agradecemos las revisiones y consejos de la Mtra. Aleida Rueda, el diseño de las ilustraciones a la L. en D. Dulce Aguilar y todo el soporte técnico a Francisco López, Neptalí González, Alberto García, Alejandro Juárez y Carlos López.

Bibliografía

LINN, Marcia. "Promover la educación científica a través de las tecnologías de la información y comunicación (TIC)". Enseñanza de las ciencias. 2002, Vol. 20, Núm. 3 [en línea]: http://ddd.uab.es/pub/edlc/02124521v20n3p347.pdf.

SUNKEL, Guillermo. "Las tecnologías de la información y comunicación (TIC) en la Educación de América Latina. Una exploración de indicadores". CEPAL-Serie Políticas Sociales. Organización de Naciones Unidas. Diciembre, 2006.

COMENTARIOS

SÍGUENOS
2013 Esta obra está bajo una licencia de Creative Commons
Fernando Javier Martínez Mendoza
Secretario técnico de cómputo del Instituto de Física

Fernando Javier Martínez Mendoza Estudió la carrera de Ingeniero en Computación en la Facultad de Ingeniería de la UNAM y un diplomado en seguridad informática. Ha trabajado como administrador de servidores y seguridad informática durante 15 años, tanto en el sector privado como en el gobierno y el sector educativo, impartido clases y cursos cortos, además de haber sido oficial de seguridad informática en un banco. Especialista en temas de seguridad informática con una certificación internacional en análisis forense y respuesta a incidentes. Entre sus principales intereses se encuentra el software libre, seguridad informática y el análisis forense.

MARTÍNEZ Mendoza, Fernando Javier "Beakman y los retos tecnológicos: boletaje y transmisión online" Revista Digital Universitaria [en línea]. 1 de junio de 2014, Vol. 15, No.6 [Consultada:]. Disponible en Internet: <http://www.revista.unam.mx/vol.15/num7/art54/index.html> ISSN: 1607-6079.

Beakman y los retos tecnológicos: boletaje y transmisión online

Fernando Javier Martínez Mendoza

Con el anuncio de la visita de Beakman a la UNAM se le presentó al Instituto de Física el reto de convertir un pequeño show en un evento masivo, además de lograr que cualquier persona pudiera tener la oportunidad de asistir al evento y evitar que hubiera tal sobrecupo que se pusiera en riesgo la seguridad de los asistentes. En este artículo se describe la solución que proporcionó el Instituto, que actualmente cuenta con un software que puede ayudar a distintos eventos universitarios, así como el equipo y la experiencia para transmitir eventos en vivo, otorgando la posibilidad de que cualquier persona con acceso a Internet pueda seguir en vivo el evento a través del canal Youtube del Instituto de Física. Es la experiencia viva de cómo la tecnología puede ayudar a acercar la ciencia a todos los interesados.

Palabras clave: Beakman, sistema de boletaje, streaming.