Area Linux

Breves sobre Linux y FLOSS en general

BigBlueButton: Sala de clases virtual Open Source

6 Comments »

Quisiera partir este, mi primer post, para agradecer la oportunidad de escribir en este sitio web y compartir un espacio con verdaderos Rock Stars (haciéndole la pata a Franco), especialistas de Linux, y poder aportar con mi granito de arena a la difusión de tecnologías FLOSS.

(c) BigBlueButton Inc.

BigBlueButton (BBB), es una plataforma abierta de conferencias en línea, enfocada al área de educación a distancia, tanto para universidad y escuelas, con herramientas de vídeo conferencia para múltiples usuarios, VoIP entre los participantes y conexión a una central telefónica digital, panel de presentaciones, pizarra para destacar contenido,  y escritorio compartido. Este proyecto oficialmente fue lanzado el 31 de marzo del 2008, pero ya llevaba un tiempo siendo desarrollado dentro del programa “Technology Innovation Management” de la Universidad Carleton, en Canadá.

El equipo de desarrollo describe su visión de que las conferencias vía web, deben ser tan simple como presionar un gran botón azul y que como proyecto open source debe ser fácil de implementar y extender, y que su atención, como equipo, está centrada en ser el mejor sistema de conferencias web para educación a distancia.

“Our vision is that starting a web conference should be as easy as clicking a single metaphorical big blue button. As an open source project, we believe it should be easy for others to embrace and extend. And while web conferencing means many things to many people — our focus is to make the best web conferencing system for distance education”


Como lo descubrimos

Llegué a conocer esta plataforma, cuando en mi trabajo se presentó la necesidad implantar un sistema de interacción grupal, llámese chat y/o video conferencia que permitiera la participación de profesores y alumno en forma remota, y que fuera complemento de las actuales plataformas docentes, todo esto, idealmente, debería usar software open source o caso contrario idear un proyecto en base a tecnologías propietarias como Adobe Flash Plattform.

Un día el Director del Centro de Informática y Computación, me envió URLs sobre información referente a proyectos de salas de conferencia que poseían integración directa con Moodle LMS, como plataforma de trabajo grupal y vídeo conferencia. En base a esta información se investigó sus capacidades y opción de implementación dentro de nuestra organización y al encontrarme con BBB, me llevé una grata sorpresa.

Esta plataforma diseñada sobre servicios y aplicaciones open source, tiene una apariencia y usabilidad muy similares a las aplicaciones de capacitación a distancia que poseen empresas como Cisco, Microsoft o Adobe, donde un expositor vía cámara web presenta un contenido en un panel de presentaciones, las usuarios pueden comentar usando el chat y escuchar al presentador vía VoIP.

Como proyecto de código abierto está muy bien documentado y posee un activo grupo de desarrolladores  y participantes que están abiertos a solucionar cualquier consulta que llegue por vía de la lista de correo.


Arquitectura

Una de las cualidades de BBB que más llaman la atención, es que es el resultado de la integración de varias aplicaciones y servicios, que también son open source, que en su conjunto conforman la arquitectura base de servicios web para transmitir vídeo, usar Shared Objects como el panel de presentaciones o la pizarra para destacar y dibujar, usar VoIP para conversaciones y llamadas telefónicas entre los usuarios, para chatear, Web Services para administrar las salas de conferencias, establecer privilegios de acceso, calendarizar uso de salas, o la conversión de archivos de imagen o texto como Word, Excel, PowerPoint, PDF, JPG, PNG, ODF y un larga etc. para ser usados como presentaciones y compartirlas con los participantes de la conferencia.

  • Adobe Flex SDK: Framework para construir y mantener aplicaciones web que puedan utilizarse en la mayoría de los navegadores, escritorios y sistemas operativos. Genera archivos Flash (SWF) para reproducción con Flash Player o en Adobe Air.
  • Grails: Es un framework para aplicaciones web implementado en JAVA.
  • Ghostscript: Es un interpretador de lenguaje PostScript y archivos PDF.
  • Asterisk PBX: Motor de telefonía PBX.
  • Apache ActiveMQ: Proveedor de mensajería para empresas e integración de patrones.
  • Image Magick: Es una colección de herramientas que permiten modificar y manipular imágenes.
  • MySQL: Motor de base de datos open source.
  • Nginx: Servidor HTTP y servidor mail proxy.
  • Red5: Servidor Flash escrito en JAVA.
  • swf Tools: Conjunto de aplicaciones para convertir imagen de cualquier formato  o PDF a formato Flash (SWF).
  • Apache Tomcat: Implementación open source de la tecnología JAVA Servlet y JavaServer Pages.
  • Asterix Java: Conjunto de clases que permiten una integración de JAVA con el servidor Asterisk PBX.
  • Xuggler: Codificador, decodificador y manipulador de vídeo en tiempo real.
  • Open Office: Suite de ofimática líder para documentos de texto, hojas de cálculo, presentaciones, gráficos, bases de datos y más. Es utilizado vía consola para la conversión de documentos para ser usados en el panel de presentaciones.

Incluso la máquina virtual de JAVA que utiliza esta plataforma es OpenJDK la cual posee licencia GPLv2, el backend y frontend puede ser modificado y compilado usando Eclipse y Adobe Flex SDK que también son open source.

Arquitectura de la PlataformaEstructura de la Arquitectura que hace funcionar a BBB – (c) BigBlueButton Inc.


Instalación

Con tanta aplicación open source integrada y configurada entre sí, uno cree a primeras, que la instalación será un procedimiento del terror con descarga de paquetes de forma manual, compilar, o peor aún, configurar repositorios malignos con versiones inestables.

Ya que este proyecto está orientado a una fácil implementación, por lo que el proceso de instalación es simple y se describe a continuación  en  un ambiente Red Hat / CentOS (para  Ubuntu es igual de sencillo y  lo pueden encontrar acá).

// Se descarga...
wget http://ec2-67-202-22-38.compute-1.amazonaws.com/centos/5.4/i386/stable/bbb-install.sh
// Se aplican permisos de ejecución...
chmod u+x bbb-install.sh
// Se ejecuta la instalación...
./bbb-install.sh
// Instalación de módulo para compartir escritorio.
yum install bbb-apps-deskshare
// Configuración de IP y puerto de acceso.
bbb-conf --ipconf {DirecciónIP:Puerto}
// Ejemplo:
// bbb-conf --ipconf 10.10.1.100:80
// Limpieza después de la instalación.
bbb-conf –clean

Y para finaliza, se ingresa la mismas IP y puerto del paso anterior en su navegador favorito, asegurándose de que tenga instalados el plug-in Adobe flash Player (que no es Open Source, pero está disponible para Mac, PC y Linux), y se tiene acceso a la aplicación completamente configurada y funcional out-the-box.-

Como requerimientos de hardware, la documentación publicada en el sitio web del proyecto y en base a un test de esfuerzo realizado a la última versión disponible (0.64v), en un servidor físico con procesador Pentium Dual-Core CPU E5200 @ 2.5 Ghz con 4 GB de RAM corriendo sobre Ubuntu 9.04 32 bit se pueden tener hasta 160 usuarios simultáneamente en una sala virtual.

El consumo de ancho de banda depende de la cantidad de usuarios y de las herramientas que estén utilizando simultáneamente, en el caso de un presentador, que puede estar transmitiendo video y audio, compartiendo un presentación en el panel, y compartiendo el escritorio, tendrá un bitrate de 100kbyte/sec de upstream aproximadamente.

Conferencia realizada en BBB – (cc) Universidad de La Serena.


Integración a otras plataformas

BBB actualmente ofrece integración con gestores de contenido como Drupal y TikiWiki Groupware, con sistemas de aprendizaje como Moodle, o un wiki orientado a empresas como Sakai. Además posee una API bien documentada para implementar sus propios desarrollos en PHP y JSP.


Comparativa a soluciones comerciales

Como casi todo proyecto open source, BBB nace de la necesidad de crear una plataforma de conferencias web que sea asequible para las organizaciones educacionales, para que puedan implementar procesos de educación a distancia y que el alto costo de las soluciones comerciales no sea una barrera para implementar estos servicios.

Hay varios servicios y aplicaciones que permiten brindar el mismo servicio por un alto costo por usuario, un ejemplo es WebEx, que por cada usuario se requiere desembolsar 49 USD mensuales por persona, Adobe Connect Pro 45 USD por personal mensualmente.

En el caso de querer implementar una solución basada en tecnología Adobe, solo el servidor de streaming y SharedObjects Adobe Flash Media Server 3.5, presenta un impedimento para una implementación de bajo costo, ya que su licencia para instituciones educacionales supera los 2 millones CLP.

Arriendo de servicios:

  • Cisco WebEx
  • 49 USD mensuales por persona.
  • Aplicación para dispositivos móviles.
  • VoIP.
  • Video en vivo.
  • Orientado a charlas y cursos.
  • Agenda de eventos.
  • Adobe Connect Pro
  • 45 USD mensuales por persona.
  • VoIP.
  • Video On-Demand.
  • Presentaciones Flash Interactivas.
  • Presentación de contenido dinámico (SWF, PDF).
  • Video en vivo.
  • Orientado a charlas y cursos.
  • Agenda de eventos.

Las capacidades y flexibilidad de implantación de esta plataforma, sumando al bajo costo de la misma la hacen una opción ideal para instituciones educacionales que no poseen el presupuesto necesario para adquirir una solución propietaria y como punto a favor que pueden desarrollarse nuevos módulos para añadir más funcionalidades acorde de las necesidades de cada institución. El acceso a este tipo de herramientas, en especial a universidades y colegios de regiones, con comunidades de estudiantes dispersas geográficamente, como el sur de Chile, hace de BBB una herramienta ideal para permitir establecer la comunicación e implementar herramientas y metodologías de educación a distancia, para profesores que gustan de a tecnología como herramienta formadora y para sus alumnos que pueden acceder a nuevos contenidos y formas de estudio, a un clic de distancia.


Links:

Sitio Web -  http://www.bigbluebutton.org
Demo Funcional – http://demo.bigbluebutton.org
Blog de Avances del Proyecto – http://bigbluebutton-blog.blogspot.com/
Google Code Project – http://code.google.com/bigbluebutton

Otros:

Cisco WebEx – http://www.webex.com/
Adobe Connect Pro – http://www.adobe.com/products/acrobatconnectpro/
Learn Flex in a Week – http://www.adobe.com/devnet/flex/videotraining/
(Programa de capacitación en línea para aprender a usar construir aplicaciones web en base a la tecnología Adobe Flex. Gratis!)


6 Responses

Excelente Articulo Carlos… esperamos más entregas… as soon as possible… jajajaja, Felicitaciónes… René

  • Que buena se ve. Voy a probarla.

  • Felicitaciones !!, muy buena herramienta y simplista. Gracias

  • [...] Área linux admin | General | 18 Junio, 3:21pm Trackback URI: [...]

  • [...] Plataforma abierta de conferencias en línea, enfocada al área de educación a distancia (más información: área linux). [...]

  • Leave a Reply