Install Apache OpenMeetings On CentOS 6.5

Introduction

Apache OpenMeetings is an open source software used for online training, web conferencing, collaborative white board drawing and documents editing.This software is based on a number of open source tools like OpenLaszlo RIA framework and Red5 Media Server. The communication takes place in a virtual meeting room.It is availabe in 30 + languages and got downloaded more then 25,00000 times. It comes with lots of features.

Features

  • Audio Communication
  • Video Conferencing
  • Meeting recording
  • Screen Sharing
  • Collaborative Document editing
  • Chat and White boarding
  • User and  room management

Source: Wikipedia

Installation

We;ll be using Centos 6.5 to setup OpenMeetings.

Update system:

# yum update

First of all modify Selinux Security level to permissive mode.

vi  /etc/selinux/config

Set SELINUX value as Permissive.


SELINUX=Permissive

Start Installing required packages:

# yum install wget gcc-c++ unzip zlib-devel libjpeg-devel freetype-devel giflib-devel ghostscript ImageMagick sox gedit wget

Make sure that LibreOffice is installed.

Configure MySQL Database for OpenMeetings

Create database password for root user:

# yum install mysql-server mysql
# service mysqld  start

Create MySQL password for root:

# mysqladmin -u root password "password"

Create database database named ‘openmeetings’ and a database user ‘openmeetings’, assign password to that user.

# mysql -u root -p 
mysql> CREATE DATABASE openmeetings DEFAULT CHARACTER SET 'utf8';
Query OK, 1 row affected (0.00 sec)
mysql> CREATE USER 'openmeetings'@'localhost' IDENTIFIED BY 'openmeetings';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON openmeetings.* TO 'openmeetings'@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye

Verify Java version installed:

# java -version

Image 1

Now we need to install various add on  tools required to configure openmeetings.

Install LAME

It is an open source tool used to compress audio to mp3 format.

# curl -L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
# tar -xvf lame-3.99.5.tar.gz
# cd lame-3.99.5
# ./configure --libdir=/usr/lib --bindir=/usr/bin  
# make 
# make install

Install swftools

Tool is required to support .swf file formats.

cd /opt

# wget http://www.swftools.org/swftools-2013-04-09-1007.tar.gz

# tar -xvf swftools-2013-04-09-1007.tar.gz

# cd swftools-2013-04-09-1007

# ./configure --libdir=/usr/lib --bindir=/usr/bin

# make

# make install

Install Jodconverter

A document converter which converts various office formats.

# /opt

# wget http://jodconverter.googlecode.com/files/jodconverter-core-3.0-beta-4-dist.zip

# unzip jodconverter-core-3.0-beta-4-dist.zip

Install ffmpeg

A tool used to convert and stream audio, videos.

# wget http://ffmpeg.org/releases/ffmpeg-1.1.1.tar.gz

# tar -xvf ffmpeg-1.1.1.tar.gz

# cd ffmpeg-1.1.1

# ./configure --libdir=/usr/lib --bindir=/usr/bin --enable-libmp3lame --disable-yasm

# make

# make install

Download and configure JAVA MySQL Connector

A tool used to connect OpenMeetings with mysql.

# wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.0.8.tar.gz
#tar -xvf mysql-connector-java-5.0.8.tar.gz

Finally install openmeetings:

# mkdir /openmeetings && cd /openmeetings 
# wget http://ftp.cixug.es/apache/openmeetings/3.0.7/bin/apache-openmeetings-3.0.7.zip

Unzip package:

# unzip apache-openmeetings-3.0.7.zip

Now copy .jar file from Mysql-connector folder to /openmeetings/webapps/openmeetings/WEB-INF/lib.

# cd ~/mysql-connector-java-5.0.8
# cp mysql-connector-java-5.0.8-bin.jar  /openmeetings/webapps/openmeetings/WEB-INF/lib

Go to /openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/ and get backup of persistence.xml.

# cd /openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/
# cp persistence.xml persistence.xml.backup_rku

Rename mysql_persistence.xml to persistence.xml:

# cp mysql_persistence.xml persistence.xml

Edit persistence.xml and provide username and password details

#nano persistence.xml

Sample Output:

 
<property name="openjpa.ConnectionDriverName" value="org.apache.commons.dbcp2.BasicDataSource" />
<property name="openjpa.ConnectionProperties"
value="DriverClassName=com.mysql.jdbc.Driver
, Url=jdbc:mysql://localhost:3306/openmeetings?autoReconnect=true&amp;useUnicode=true&amp;createDatabaseIfNotExist=true&amp;cha$
, MaxActive=100
, MaxWait=10000
, TestOnBorrow=true
, poolPreparedStatements=true
, Username=openmeetings
, Password=openmeetigns" />
<property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema" />
<property name="openjpa.Log" value="DefaultLevel=WARN, Runtime=INFO" />

Ok, now you are very close to finalize Apache Openmeetings server configuration.

Navigate to /openmeetings folder and run red5.sh script:

# cd /openmeetings
# ./red5.sh

After script run is over do not close terminal and run apache service through new terminal.

# service httpd start

Open Browser and type <ip_addr>:5080,  a welcome window will appear, proceed to next screen.

Image 2

Specify username of database (‘openmeetings’ in our example scenario) and click next.

Image 3

Provide username, password which were defined in persistence.xml file, click next.

Image 4

Leave this step as default and click next.

Image 5

Leave default and click next.

Image 6

Image 7

Now Openmeetings installation will start automatically. after this step is over click next.

Image 8

Click on enter the application link and proceed.

Image 9

Provide username and password and login to Apache OpenMeetings.

Image 10

Now you are ready to run this wonderful application.

Image 11

Note: One important thing to note is that I got error while running red5.sh script with updated Java version, but when I tried to configure this application with older version i.e. 1.7, it worked successfully.

Have Fun!