Instalando OpenMeetings 1.1 en Debian Lenny
Para este post, me basé en el de Federico Christian Tomasczik.
Openmeetings es un sistema para videoconferencias, basado en un servidor flash libre (red5), java y openoffice-headless.
Actualmente lo instalé en mi trabajo para un evento en el que necesitabamos una video conferencia con 8 países conectados a la vez, compartir documentos y chat.
Lo que necesitaremos es:
-Java (versión Sun)
-MySQL Server
-OpenOffice headless server
-Red5 (Flash Server)
-ImageMagick (manejo / edición / conversión de imágenes)
-SWFTools (no existente en Debian)
Instalación de Sun Java Development Kit
Vamos a tener que habilitar los repositorios de la rama non-free de Debian. En mi caso, la rama “estable”.
# nano /etc/apt/sources.list
Agregamos non-free (en caso de no terlos ya), a los repositorios que figuran allí.
deb http://ftp.us.debian.org/debian/ lenny main non-free
deb http://security.debian.org/ lenny/updates main non-free
Estos son los repositorios casi default, por lo que no debería de haber inconvenientes.
Actualizamos el listado de paquetes:
# apt-get update
Ahora si, instalamos el SDK de Java:
# apt-get install sun-java6-jdk
Aceptaremos el contrato de la licencia del paquete.
Instalación de MySQL
OpenMeetings utiliza una base de datos para mantener información de usuarios, direcciones de correo electrónico, salas de reuniones, etc. En el presente caso usamos MySQL.
Instalamos MySQL:
# apt-get install mysql-server
Durante la instalación nos pedirán datos de usuario y contraseña administrativa para MySQL, los introducimos y mantenemos a la mano.
Ingresamos a la consola de MySQL para los siguientes pasos:
# mysql -p -u root
Ingresamos la clave de root de MySQL y nos encontraremos en la consola de MySQL. Allí creamos la base de datos ingresando:
mysql> CREATE DATABASE openmeetings DEFAULT CHARACTER SET ‘utf8′;
Con este comando hemos creado una base de datos llamada openmeetings pero el nombre puede ser el que deseemos.
Ahora creamos un usuario con todos los permisos para la base de datos recién creada:
mysql> GRANT ALL PRIVILEGES ON openmeetings.* TO ‘openmeetings’@'localhost’ IDENTIFIED BY ‘misuperpassword’ WITH GRANT OPTION;
En este caso llamé openmeetings al usuario también. La clave de dicho usuario en el ejemplo es misuperpassword. Sean libres de cambiar estos datos.
Salimos de la consola de MySQL con:
mysql> quit
Instalando OpenOffice en modo Headless
OpenOffice es necesario para la conversión de documentos en formatos, como por ejemplo, los de Microsoft Office. De esta manera, los usuarios reunidos en una sala virtual de Openmeetings pueden subir y compatirlos.
A partir de la versión de OpenOffice 2.4 se cuenta con la versión “headless”, lo cual significa que no necesitaremos instalr un gestor gráfico. En Debian Lenny esa es la versión disponible desde los repositorios oficiales.
Debemos instalar el paquete openoffice.org-headless para desentendernos definitivamente del servidor X:
# apt-get install openoffice.org-headless
Ahora si, instalamos el resto de los paquetes (todo en una sola línea):
# apt-get install openoffice.org-writer openoffice.org-calc openoffice.org-impress openoffice.org-draw openoffice.org-math
Ahora instalaremos OpenOffice como servicio.
Vamos a crear un script para que el servicio de OpenMeetings se levante cada vez que arranque nuestro servidor de OpenMeetings.
Creamos un archivo llamado openmeetings en /etc/init.d:
# nano /etc/init.d/openoffice
Ahí escribimos (o copiamos y pegamos) lo siguiente:
#!/bin/bash
# openoffice.org headless server script
#
# chkconfig: 2345 80 30
# description: headless openoffice server script
# processname: openoffice
#
# Author: Vic Vijayakumar
# Modified by Federico Ch. Tomasczik
#
OOo_HOME=/usr/bin
SOFFICE_PATH=$OOo_HOME/soffice
PIDFILE=/var/run/openoffice-server.pid
set -e
case “$1″ in
start)
if [ -f $PIDFILE ]; then
echo “OpenOffice headless server has already started.”
sleep 5
exit
fi
echo “Starting OpenOffice headless server”
$SOFFICE_PATH -headless -nologo -nofirststartwizard -accept=”socket,host=127.0.0.1,port=8100;urp” & > /dev/null 2>&1
touch $PIDFILE
;;
stop)
if [ -f $PIDFILE ]; then
echo “Stopping OpenOffice headless server.”
killall -9 soffice && killall -9 soffice.bin
rm -f $PIDFILE
exit
fi
echo “Openoffice headless server is not running.”
exit
;;
*)
echo “Usage: $0 {start|stop}”
exit 1
esac
exit 0
Luego, le damos permisos de ejecución a este archivo:
# chmod 0755 /etc/init.d/openoffice
Generamos los enlaces a nuestro pequeño script:
# update-rc.d openoffice defaults
Iniciamos el servicio:
#/etc/init.d/openoffice start
No deberíamos ver ningún mensaje de error luego de esto.
Como primera comprobación (más adelante veremos otra), veremos si en el puerto 8100 está el servicio de OpenOffice levantado:
# netstat -an | grep 8100
Y tendríamos que encontrar algo como esto:
tcp 0 0 127.0.0.1:8100 0.0.0.0:*
LISTEN 2467/soffice.bin
Muy bien, el servicio de OpenOffice está levantado (soffice.bin es el ejecutable) escuchando en el puerto 8100 peticiones por 127.0.0.1.
*En mi caso, esto no me dió mayor información… pero el servicio estaba arriba, por lo que no se alarmen si reciben un mensaje distinto.
Instalar ImageMagick
ImageMagick es un conjunto de herramientas que permiten manejar, modificar y convertir imágenes entre más de 100 formatos distintos, y nos será de gran utilidad.
Para instalarlo, simplemente ejecutamos:
# apt-get install imagemagick
Instalación de SWFTools
SWFTools son un grupo de herramientas de Código abierto para crear y manipular archivos SWF, el formato utilizado por el software de animación Adobe Flash (anteriormente Macromedia Flash).
Antes que nada, vamos a instalar algunas librerias y herramientas que son requeridas por SWFTools.
# apt-get install gs-gpl libart-2.0-2 libt1-5 libungif4g
Como SWFTools no está disponible en Debian, vamos a tener que bajar el paquete de otro lugar.
Ubuntu si tiene este paquete en sus repositorios, por lo que haremos un “volado”, descargándo este .deb de sus repos.
http://packages.ubuntu.com/karmic/i386/swftools/download
Y lo descargamos…..
# wget http://mirrors.kernel.org/ubuntu/pool/universe/s/swftools/swftools_0.9.0-0ubuntu1_i386.deb
Y lo instalamos:
# dpkg -i swftools_0.9.0-0ubuntu1_i386.deb
Borramos el paquete de instalación:
# rm swftools_0.9.0-0ubuntu1_i386.deb
Ya vamos llegando a pénjamo….
Instalando Red5 + OpenMeetings
Red5 es un servidor de código abierto escrito en Java que sirve para entregar contenido de audio y/o video en streaming. Para ello utiliza el protocol RTMP (Real Time Messaging Protocol) con lo cual se puede transmitir contenido en tiempo Real.
Por una de esas situaciones de la vida, llegué a encontrarlos en un .deb creado por Rodion Volkov, lo que nos ahorra un poco de tiempo.
#wget http://openmeetings.googlecode.com/files/red5-openmeetings_1.0.2760.noarch.deb
Esta trae la versión actual de red5 y openmeetings
Y con nuestro GRAN amigo dpkg, lo instalamos:
#dpkg -i red5-openmeetings_1.0.2760.noarch.deb
Durante este proceso, nos pedirá los datos que generamos con MySQL (usuario y contraseña), los ingresamos y listo.
Luego, ejecutamos lo siguiente:
# /etc/init.d/red5-openmeetings start
Existe la posibilidad que de un error de una carpeta inexistente en “/var/lock/subsys/red5-openmeetings ”
Por lo que ejecutaremos : #mkdir /var/lock/subsys/red5-openmeetings
Sino, solo veremos un “SUCCEED” en la consola.
Luego, ingresamos en nuestro navegador en : http://mi-server:5080/openmeetings/install
Las opciones del de formulario son:
a) Userdata: Allí hay que definir el nombre de usuario, clave y dirección de correo para un usuario que, por defecto, tendrá privilegios de administrador dentro de la aplicación.
b) Organisations (Domains): Para que un usuario pueda entrar a OpenMeetings necesita (además de un nombre de usuario y una clave) estar asociado a una organización. Los usuarios asociados a una organización no pueden entrar en las salas de conferencias de otra. Sólo pueden encontrarse los miembros de distintas organizaciones en las salas públicas.
Cada usuario puede pertenecer a más de una organización.
c) Configuration: Aquí se configuran algunos parámetros básicos de funcionamiento de la aplicación.
* Allow self-registering: Habilita o deshabilita la posibilidad que las personas se registren si no tienen un usuario en OpenMeetings llenando un formulario en la página de inicio de la aplicación. Ya que nosotros utilizaremos listas preestablecidas de usuarios, seleccionaremos no.
* Send Email to new registered Users: Define si se envía o no un e-mail de notificación cuando se registra un usuario nuevo. Ya que no hemos habilitado el autoregistro de usuarios, seleccionaremos no.
* New Users need to verify their Email: Define si se envía o no un e-mail cuando se registra un usuario nuevo para verificar su dirección electrónica. Así como en la anterior, seleccionamos no.
* Mail Referer: Dirección de correo electrónico con la que salen los e-mails generados por OpenMeetings.
* SMTP-Server, SMTP-Server Port, SMTP-Username, SMTP-Userpass: Indican el servidor de correo saliente SMTP, el puerto TCP donde atiende el mismo, el usuario y clave para el envío de correos, respectivamente.
* Default Language: El idioma por defecto de la aplicación, en mi caso opté por español.
* Default Font for Export: Las fuentes por defecto para los documentos exportados.
d) Converters: Aquí se configura la ubicación de las herramientas de conversiones SWTools e ImageMagick. En nuestro caso, no es necesario agregar los paths ya que por defecto quedan en variables de entorno del sistema.
e) Cryp Type: Tipo de encriptación a utilizar para usuarios y sesiones.
Adicionalmente, tiene la información para el uso de autenticación con LDAP y algunas otras opciones, que en este caso no utilizaremos.
Luego de completar el formulario pulsamos el botón INSTALL. Esto inicia el proceso de instalación, configuración y de generación de las tablas necesarias en la base de datos. Pasados unos minutos (no más de 1 o 2 minutos) deberíamos ver una página con el siguiente mensaje:
Allí terminaremos de instalar / configurar la aplciación y quedará lista para funcionar.
Luego de esto, al ingresar a http://mi-server:5080/openmeetings , tendremos algo como esto:

Y listo, tendremos nuestro openmeetings listo para usar.
Nota: En el caso de mi instalación, las carpetas de logs estan en:
/var/log/red5-openmeetings.log
/usr/share/red5-openmeetings/log/error.log
/usr/share/red5-openmeetings/log/openmeetings.log
/usr/share/red5-openmeetings/log/red5.log
Si llegaramos a tener algún inconveniente, revisémos estos logs para ver que pasa. Otra opción a revisar, es la VM de Java que estemos usando:
#update-alternatives –config java
Y seleccionamos la VM de Java.