OpenMeetings 2.0 debian Squeeze + asterisk. Parte 1

linux

Hoy toca la integración de OpenMeetings con Asterisk…. un gran paso. Primero instalaremos OpenMeetings 2.0 en nuestro debian y luego, lo integraremos con Asterisk.
ílvaro (aka Greenes), colaborador habitual del proyecto (https://incubator.apache.org/openmeetings/) es el responsable del manual original, del que yo, sí­mplemente he «copiado» aquí­, en mi blog.
Partimos de la base de nuestro debian recién instalado, nos vamos al fichero /etc/apt/sources.list y añadimos al principio:

deb https://security.debian.org/ squeeze/updates main contrib non-free
deb-src https://security.debian.org/ squeeze/updates main contrib non-free
deb https://ftp.debian.org/debian/ squeeze main contrib non-free
deb-src https://ftp.debian.org/debian/ squeeze main contrib non-free
deb https://ftp.debian.org/debian/ squeeze-updates main contrib non-free
deb-src https://ftp.debian.org/debian/ squeeze-updates main contrib non-free
deb https://ftp2.de.debian.org/debian squeeze main non-free
deb https://deb-multimedia.org squeeze main

Hacemos un update:

#apt-get update

Y pasado un rato, estaremos en disposición de empezar a instalar dependencias, siendo :

apt-get install sun-java6-jdk
apt-get install openoffice.org-writer openoffice.org-calc openoffice.org-impress
openoffice.org-draw openoffice.org-math imagemagick gs-gpl -y
apt-get install libgif-dev xpdf libfreetype6 libfreetype6-dev libjpeg8 libjpeg62 libjpeg8-dev
apt-get install g++ libjpeg-dev libdirectfb-dev libart-2.0-2 libt1-5 zip unzip bzip2
apt-get install subversion git-core checkinstall yasm texi2html libfaac-dev libfaad-dev
apt-get install libmp3lame-dev libsdl1.2-dev libx11-dev libxfixes-dev libxvidcore4-dev zlib1g-dev
apt-get install libogg-dev sox libvorbis0a libvorbis-dev libgsm1 libgsm1-dev libfaad2 flvtool2 lame

al hacer el apt-get install sun-java6-jdk, tenemos que aceptar la licencia….. Googleando un poco en la página del proyecto, en versiones anteriores a la 2.0, funcionaba con la openJDK, pero ahora no, en fin.
Instalararemos el mysql-server + mysql-client y crearemos una BBDD para openmeetings, o usaremos otro MySQL que tengamos instalado en otro server. Entramos en el MySql en cuestión y creamos la BBDD y un usuario para tal caso, siendo openmeetings / openmeetings.

CREATE DATABASE openmeetings DEFAULT CHARACTER SET 'utf8';
GRANT ALL PRIVILEGES ON openmeetings.* TO 'openmeetings'@'localhost' IDENTIFIED BY 'openmeetings' WITH GRANT OPTION;

Ahora descargamos y compilamos el SWF:

wget https://www.swftools.org/swftools-2012-04-08-0857.tar.gz
tar -zxvf swftools-2012-04-08-0857.tar.gz
cd swftools-2012-04-08-0857
./configure
make
make install

Ahora toca el paquete ffmpeg:

wget https://ffmpeg.org/releases/ffmpeg-0.11.1.tar.gz
tar -zxvf ffmpeg-0.11.1.tar.gz
cd ffmpeg-0.11.1
./configure --enable-libmp3lame --enable-libxvid --enable-libvorbis --enable-libgsm --enable-libfaac --enable-gpl --enable-nonfree
make
checkinstall

Ahora seguimos con el JOD converter:

wget https://jodconverter.googlecode.com/files/jodconverter-core-3.0-beta-4-dist.zip
unzip jodconverter-core-3.0-beta-4-dist.zip

Y seguimos con ANT, pero usaremos la versión 1.8.4 para compilar openMeetings

wget https://mirror.catn.com/pub/apache//ant/binaries/apache-ant-1.8.4-bin.tar.gz
tar -zxvf apache-ant-1.8.4-bin.tar.gz

Y ahora descargamos openmeetings:

# svn checkout https://svn.apache.org/repos/asf/incubator/openmeetings/branches/2.0/

Y lo compilamos:

# cd /usr/adm/2.0
# /usr/adm/apache-ant-1.8.4/bin/ant clean.all
# /usr/adm/apache-ant-1.8.4/bin/ant -Ddb=mysql

Una vez compilado (tardará un buen rato), lo movemos a su ubicación correcta:

# cd /usr/adm/2.0/dist
# mv red5/ /usr/lib/

Movemos de sitio el JOD converter, a la carpeta de OM

cp -R /usr/adm/jodconverter-core-3.0-beta-4 /usr/lib/red5/webapps/openmeetings

Y cambiamos unos permisos:

# chown -R nobody /usr/lib/red5
# chmod +x /usr/lib/red5/red5.sh
# chmod +x /usr/lib/red5/red5-debug.sh

Y creamos el script para controlar red5:

# nano /etc/init.d/red5

Y hacemos copy & paste de lo siguiente…. (Gracias a ílvaro por modificar el script)

#! /bin/sh
### BEGIN INIT INFO
# Provides: red5
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts red5 server for Openmeetings.
# OpenMeetings 2.X Installation on Debian 64bit Squeeze
# Stephen Cottham 29/07/2012
### END INIT INFO
# For RedHat and cousins:
# chkconfig: 2345 85 85
# description: Red5 flash streaming server for OpenMeetings
# processname: red5
# Created By: Sohail Riaz (sohaileo@gmail.com)
# Modified by Alvaro Bustos
PROG=red5
RED5_HOME=/usr/lib/red5
DAEMON=$RED5_HOME/$PROG.sh
PIDFILE=/var/run/$PROG.pid
[ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5
RETVAL=0
case "$1" in
start)
cd $RED5_HOME
start-stop-daemon --start -c nobody --pidfile $PIDFILE
--chdir $RED5_HOME --background --make-pidfile
--exec $DAEMON >/dev/null 2>/dev/null &
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo $! > $PIDFILE
fi
echo
;;
stop)
start-stop-daemon --stop --quiet --pidfile $PIDFILE
--name java
rm -f $PIDFILE
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG
;;
restart|force-reload)
$0 stop
$0 start
;;
status)
# Debian and Ubuntu 10 status check
ps aux | grep -f $PIDFILE >/dev/null 2>/dev/null && RETVAL=0 || RETVAL=3
# Ubuntu 12 status check using improved "start-stop-daemon" status query
# (use the above command, or comment out above command and uncomment the two below commands.
# start-stop-daemon --status --pidfile $PIDFILE
# RETVAL=$?
[ $RETVAL -eq 0 ] && echo "$PROG is running"
[ $RETVAL -eq 1 ] && echo "$PROG is not running and the pid file exists"
[ $RETVAL -eq 3 ] && echo "$PROG is not running"
[ $RETVAL -eq 4 ] && echo "$PROG - unable to determine status"
;;
checkports)
netstat -anp | grep soffice
netstat -anp | grep java
;;
*)
echo $"Usage: $0 {start|stop|restart|force-reload|status|checkports}"
RETVAL=1
esac
exit $RETVAL

Seteamos permisos para que pueda ejecutarse:

chmod +x /etc/init.d/red5
update-rc.d red5 defaults

Hacemos backup del fichero persistence.xml, por si las moscas:

mv /usr/lib/red5/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
/usr/lib/red5/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml-ori

Y ahora renombramos para habilitar el template de mysql:

# mv /usr/lib/red5/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml
/usr/lib/red5/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
#mv /usr/lib/red5/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml
/usr/lib/red5/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml

Ahora editamos el fichero y cambiamos los datos de acceso mysql

, TestOnBorrow=true
, poolPreparedStatements=true
, Username=openmeetings
, Password=openmeetings"/>

Y iniciamos red5

# /etc/init.d/red5 start

Y si todo ha ido bien, empezaremos a configurarlo, accediendo a la web:
https://ip.del.web.server:5080/openmeetings/install
Rellenamos el user / pass:
Username: admin
Userpass: password
EMail: admin@dominio.com
User Time Zone: spain
Organisation(Domains) craem.net
Y al final de la hoja, le damos al botón de install. Esperamos un poco y ya tenemos la primera parte lista.

2 comentarios en «OpenMeetings 2.0 debian Squeeze + asterisk. Parte 1»

  1. Hola,
    Estoy siguiendo estas pautas para instalar openmeetings en el servidor debian squaze.
    En un momento de la instalación, me he perdido, ¿Podrían indicarme la estructura del directorio de todo el software que interviene en esta instalación?
    Cuando ejecuto: # cd /usr/adm/2.0
    La respuesta es directorio no encontrado.
    Gracias

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *