Fala pessoal, esses dias precisei instalar um sistema de web conferencia, após pesquisar um pouco no google, achei um projeto chamado OpenMeetings
O que é:
Sistema de video conferencia free, que contém vários recursos interessantes como:
Video/Audio e Video com Audio
Ver o desktop de qualquer participante
Multi-Idiomas incluindo portugues do brasil com suporte para edição.
“Lousa” com recursos de arrastar, editar, alterar tamanho, rabiscar inserir simbolos….
Exportar o que está na “lousa”
Importa documentos:(.tga, .xcf, .wpg, .txt, .ico, .ttf, .pcd, .pcds, .ps, .psd, .tiff,.bmp, .svg, .dpx, .exr, .jpg, .jpeg, .gif, .png, .ppt, .odp, .odt, .sxw, .wpd, .doc, .rtf, .txt, .ods, .sxc, .xls, .sxi, .pdf)
Envio de convites e links direto para a sala de conferencia
Conector para LDAP
Sistema de Moderação
Backup de usuarios, salas, e pack de idiomas
Salas de conferencia publica e privada
Nesse artigo vou explicar como fazer a instalação do OpenMeetings em um sistema Debian 5.
Quando escrevi o artigo, a versão 0.8.4 é a estável e a 0.9.0 RC1 é a versão de testes. Aqui iremos testar a versão de testes, visto que o procedimento para a instalação da versão estável é o mesmo apenas baixando o arquivo correspondente.
Mãos a massa…
Pre-requisitos:
Como o sistema é recém instalado, precisamos instalar alguns pacotes
aptitude install zip unzip vim-full bzip2 build-essential linux-headers-$(uname -r)
Feito isso vamos começar com a instalação. O OpenMeetings é uma aplicação que roda sobre um servidor Tomcat + um servidor Red5 (flash streaming), e para que isso funcione, é necessário ter o java jdk instalado.
No Debian, o java não está no respositório main, sendo necessário adicionar o repositório non-free (gosto de adicionar também o contrib) no arquivo /etc/apt/source.list. Seu arquivo deve ficar mais ou menos assim
deb http://ftp.br.debian.org/debian/ lenny main contrib non-free
Repita esse procedimento para todos os outros repositorios (security e o volatile) após isso, rode o comando:
aptitude update
Passo 1 – Instalação do Java JDK
aptitude install sun-java6-jdk
Leia :p e aceite os termos (será pedido para ser confirmado duas vezes.)
Passo 2 – MySQL
O Openmeetings usa o mysql como banco de dados para gravação das informações de usuários, salas e configurações gerais do sistema. O sistema tem suporte para vários outros sgbd’s como postgres, mssql. Para instalar use o comando:
aptitude install mysql-server
Uma tela será apresentada solicitando ao senha do usuário root do mysql, defina uma senha forte e anote, iremos usar esse usuário mais tarde.
Depois da instalação, é necessário criar um database chamado openmeetings para isso, acesse o console do mysql com o comando:
mysql -u root -p
(digite a senha do root que você definiu na hora da instalação)
Insira os comandos:
CREATE DATABASE openmeetings DEFAULT CHARACTER SET ‘utf8′;
GRANT ALL PRIVILEGES ON openmeetings.* TO ‘openmeetings’@'localhost’ IDENTIFIED BY ‘DIGITE SUA SENHA AQUI‘ WITH GRANT OPTION;
O primeiro comando cria a database chamada openmeetings e o segundo da privilégios para o usuário openmeetings usar essa base integralmente.
P.S. Onde está escrito DIGITE SUA SENHA AQUI, substitua pela senha do usuario openmeetings do mysql.
Passo 3 – OpenOffice
O OpenOffice (completo, writer, math….) é usado para fazer as conversões de documentos, e o imagemagick é usado para converter imagens. É necessário o pacote openoffice.org-headless para que você não precise de uma interface gráfica para executar a suite do openoffice.
aptitude install openoffice.org-headless openoffice.org-writer openoffice.org-calc openoffice.org-impress openoffice.org-draw openoffice.org-math imagemagick
Depois de completar a instalação do OpenOffice, é necessário criar um script de inicialização para o servidor do openoffice (como disse antes, esse serviço irá converter os arquivos para um formato conhecido pelo openmeetings)
Crie um arquivo no seguinte local:
vim /etc/init.d/openoffice
e insira o conteúdo:
#!/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
troque sua permissão
chmod 0755 /etc/init.d/openoffice
e insira na inicialização:
update-rc.d openoffice defaults
inicie o serviço
/etc/init.d/openoffice start
esse serviço roda na porta tcp 8100, após iniciar o serviço verifique se ele está rodando com o comando:
netstat -putan |grep soffice.bin
sua saída é:
tcp 0 0 127.0.0.1:8100 0.0.0.0:* LISTEN 14458/soffice.bin
Passo 4 – SWFTools
O SWFTools é um utilitário para manipulação de arquivos SWF (Adobe Flash). O SWFTools não está disponível na versão stable do debian, o que vamos fazer é baixar da versão unstable, mas antes precisamos resolver suas dependencias.
aptitude install gs-gpl libart-2.0-2 libt1-5 libungif4g
após instalar as dependências, baixe o swftools
wget http://ftp.br.debian.org/debian/pool/main/s/swftools/swftools_0.8.1-2.1_i386.deb
depois instale:
dpkg -i swftools_0.8.1-2.1_i386.deb
Passo 5 – Red5
O Red5 é um servidor que serve para entregar o audio e video para a aplicação propriamente dita, para fazer isso ele utiliza o protocolo RMTP
No site do openmeetings, você pode escolher por baixar somente o red5 ou openmeetings ou tudo junto, vamos baixar o que tem tudo junto.
wget http://openmeetings.googlecode.com/files/red5-openmeetings-0.9rc1-r2185.zip
descompacte:
unzip red5-openmeetings-0.9rc1-r2185.zip
copie o diretório descompactado para /usr/lib
cp -a red5-openmeetings-0.9rc1-r2185 /usr/lib/red5
após copiar, altere as permissões dos scripts do red5
chmod +x /usr/lib/red5/*.sh
como primeiro teste, vamos executar o red5 para ver se ele serve páginas normalmente:
cd /usr/lib/red5/
./red5
Muita informação vai aparecer na tela.
Se você executar isso de fora do diretório /usr/lib/red5 não irá funcionar!
Abra o browser e acesse o site: http://ip:5080
Uma tela como essa será exibida
pare o servidor com a sequencia de teclas control + c
Para que o servidor do red5 inicialize junto com o sistema, vamos colocar um script de incialização. Copie:
#! /bin/sh # # red5 red5 initscript # # Author: Simon Eisenmann . # set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DESC="Red5 flash streaming server" NAME=red5 RED5_HOME=/usr/lib/red5 DAEMON=$RED5_HOME/$NAME.sh PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME # Gracefully exit if the package has been removed. test -x $DAEMON || exit 0 # Read config file if it is present. if [ -r /etc/default/$NAME ] then . /etc/default/$NAME fi # # Function that starts the daemon/service. # d_start() { start-stop-daemon --start -c nobody --pidfile $PIDFILE --chdir $RED5_HOME --background --make-pidfile --exec $DAEMON } # # Function that stops the daemon/service. # d_stop() { start-stop-daemon --stop --quiet --pidfile $PIDFILE --name java rm -f $PIDFILE } case "$1" in start) echo -n "Starting $DESC: $NAME" d_start echo "." ;; stop) echo -n "Stopping $DESC: $NAME" d_stop echo "." ;; restart|force-reload) echo -n "Restarting $DESC: $NAME" d_stop sleep 1 d_start echo "." ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 exit 0
Igual ao serviço do openoffice, dê permissão de execução para o arquivo /etc/init.d/red5
chomd +x /etc/init.d/red5
Inserir na inicialização:
update-rc.d red5 defaults
inicie o serviço:
/etc/init.d/red5 start
verifique se ele esta rodando:
# netstat -putan |grep 5080
saída do comando
tcp6 0 0 :::5080 :::* LISTEN 15329/java
Tudo está ok até aqui…
É legal remover algumas coisas que não serão usadas pelo servidor do red5 como os exemplos que ele manda junto, para isso devemos remover os diretórios:
rm -rf /usr/lib/red5/webapps/installer
rm -rf /usr/lib/red5/webapps/root/*
Passo 6 – Configurando e instalando o OpenMeetings
Primeiro, vamos configurar a conexão com o banco de dados. Vá até o diretório:
cd /usr/lib/red5/webapps/openmeetings/conf
copie o arquivo de exemplo mysql_hibernate.cfg.xml para hibernate.cfg.xml
cp mysql_hibernate.cfg.xml hibernate.cfg.xml
edite o arquivo hibernate.cfg.xml
vim hibernate.cfg.xml
onde você ver (começo do arquivo) :
<!– User / Password –>
<property name=”connection.username”>root</property>
<property name=”connection.password”></property>
Altere para:
<!– User / Password –>
<property name=”connection.username”>openmeetings</property>
<property name=”connection.password”>SENHA DEFINIDA NA HORA DA CRIAÇÃO DO USUARIO NO MYSQL PASSO 2</property>
reinicie o red5
/etc/init.d/red5 restart
Dê permissão de execução para arquivos .sh no diretório: /usr/lib/red5/webapps/openmeetings/jod
chmod +x /usr/lib/red5/webapps/openmeetings/jod/*.sh
Mais permissões para serem alteradas:
chown nobody /usr/lib/red5 -R
Como o serviço do red5 roda sobre o usuario nobody, ele precisa ser dono de alguns arquivos para funcionar direito.
feito isso, vamos rodar a instalação do Openmeetings, abra no browser: http://ip:5080/openmeetings/install
Na tela de instalação, preencha os campos de username, userpass e email, esses campos são do usuario “admin” do openmeetings;
No campo organisations, preencha com o nome da empresa, ou algum nome que irá identificar os primeiros usuários, isso pode ser alterado depois, mas não pode ser deixado em branco;
Nas perguntas de sim / não, deixe todas como não, pois elas perguntam se vocÊ quer liberar o auto registro, enviar emails para novos usuarios e verificação do e-mail dos usuarios recem registrados;
Nas opcoes de mail, preencha com os dados so seu serviço de e-mail;
Idioma, como estamos no Brasil, selecione português :p
Defualt font, coloque uma que vc goste… isso é perfumaria;
A parte de converters, Crypt Type, Authentication Type , Screen Viewer, deixe tudo como está;
Ao final, clique em INSTALL
Aqui comigo demorou um pouco essa etapa (estou usando uma vm com 256 de ram :p)
Quando terminar, você será levado para uma tela como essa:
Faça o login com o usuário que vc cadastrou na hora da instalação e aproveite!!!!