Instalação do openmeetings 5.0.0-M1. WEB-conferências sem Flash

Bom dia, caros usuários do Habr e visitantes do portal!
Recentemente, precisei levantar um pequeno servidor para videoconferências. As opções consideradas foram poucas — BBB e Openmeetings, pois apenas eles atendiam às necessidades funcionais:

  1. Gratuito
  2. Demonstração de área de trabalho, documentos, etc.
  3. Trabalho interativo com os usuários (quadro compartilhado, chat, etc.)
  4. Não é necessário instalar software adicional para os clientes

Comecei com o BBB... mas não deu certo... Primeiro — a exigência de hardware real, já que em virtual não garantem a funcionalidade; Segundo — o consumo de recursos. Sim, a qualidade de imagem e som é boa, mas para as minhas necessidades, não se compara ao consumo de recursos.
Tentei o openmeetings. Como alguém que prefere soluções testadas por outros usuários e lançamentos estáveis, instalei a última versão estável 4.0.8 (não vamos discutir esse processo aqui). Tudo bem, exceto pelo fato de que ele usa FLASH. E uma vez que isso acontece, ele parou de funcionar no Chrome, funcionou no Firefox... mas isso contradiz o item 4, pois nem todos usam FF e nem todos gostam dele. Já estava desanimado, até que vi que a versão 5.0.0-M1 foi anunciada sem FLASH! Foi aí que tudo começou. Digo de imediato que não consegui iniciar tudo de uma vez, demorou cerca de 2 semanas, com 1-2 horas por dia, até o lançamento completo.
Então, instalei no ubuntu 18.0.4-LTS. Requisitos:

  • JRE 8
  • Kurento Media server

Vamos começar com JRE8. Por padrão, os repositórios fornecem a versão 11, por isso, vamos adicionar ao repositório e, em seguida, iniciar a instalação da versão necessária:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Após a instalação, é necessário definir a versão do Java que será usada por padrão:

sudo apt-get install oracle-java8-set-default

verificamos a versão

java -version

deve retornar

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

agora falta definir os diretórios de instalação.

cat >> /etc/environment <<EOL
JAVA_HOME=/usr/lib/jvm/java-8-oracle
JRE_HOME=/usr/lib/jvm/java-8-oracle/jre
EOL

Para um funcionamento adequado dos fluxos de vídeo/áudio, é necessário o Kurento Media server (KMS). Existem várias opções de instalação, eu usei a opção Docker. O processo de instalação e configuração do Docker não faz parte deste artigo, felizmente a internet está cheia de informações. Então, vamos iniciar o KMS

docker run -d --name kms -p 8888:8888 kurento/kurento-media-server:latest

Agora vamos proceder com a instalação dos componentes auxiliares:
MySQL — O OpenMeetings possui um banco de dados integrado, mas não é recomendado usá-lo em uma versão de produção. Instale qualquer versão que seja conveniente para você. Uma versão dos repositórios padrão também funciona.

sudo apt-get install mysql

para conectar o Java ao MySQL, é necessário baixar o conector e colocá-lo na pasta /webapps/openmeetings/WEB-INF/lib/. A configuração da conexão MySQL está no arquivo /webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml
ImageMagick — Necessário para uma lousa compartilhada, exibição de documentos e imagens. Também pegamos dos repositórios padrão.

sudo apt-get install imagemagick

GhostScript — se quisermos trabalhar com PDFs, é essencial. Os repositórios também são os padrões.
OpenOffice ou Libre Office — para a saída de todos os formatos de documentos de escritório…
FFMpeg e SoX — para a capacidade de gravar videoconferências em diferentes formatos. A versão deve ser 10.3 ou mais recente.

sudo apt install ffmpeg
sudo apt-get install sox

Agora estamos prontos para baixar o OpenMeetings propriamente dito.
https://openmeetings.apache.org/downloads.html
Baixamos e descompactamos na pasta desejada.
Aparentemente, tudo está pronto para iniciar (especialmente se seguir a instrução oficial), mas há um link desse tipo https://localhost:5443/openmeetings/install. Se prestarmos atenção no https e na porta 5443, entendemos que não conseguiremos nada. Claro que podemos executar o script ./bin/startup.sh e o servidor será iniciado. Poderemos até acessá-lo e configurá-lo pelo link http://localhost:5080/openmeetings/install, mas a operação normal não funcionará. Atualmente, todos os navegadores, especialmente o Chrome, lutam pela segurança do usuário e permitem o uso de câmera e microfone apenas via https. Através do FF, conseguiremos acessar e permitir o uso da câmera, mas isso nos limita a um único navegador. Portanto, vamos para a instalação e configuração do SSL. Você pode fazer um certificado por um custo, ou pode fazer um por conta própria, o OpenMeetings não ficará pior com isso.
A versão do O.M. 5.0.0-M1 é baseada no TomCat, e não no Apache. A configuração do servidor web está na pasta ./conf/. Como criar um certificado autoassinado e instalá-lo no TomCat eu já descrevi.
Bem, o https está configurado, agora vamos para a pasta ./bin e executamos o startup.sh e após iniciar o servidor, vamos para o instalador web https://localhost:5443/openmeetings/install. Aqui já é tudo simples e intuitivo, EXCETO na seção "Conversores". Aqui é necessário informar os caminhos para os pacotes adicionais instalados.

  1. ImageMagick Caminho /usr/bin
  2. FFMPEG Caminho /usr/bin
  3. SoX Caminho /usr/bin
  4. OpenOffice/LibreOffice Caminho para jodconverter /usr/lib/libreoffice (eu instalei o LibreOffice)

Depois, as configurações novamente não são complicadas.
Após o primeiro acesso ao sistema, é OBRIGATÓRIO acessar «Administração» -> «Configuração», localizar o item path.ffmpeg e remover o valor registrado «/usr/bin». Salve as configurações.
Então, nosso servidor VKS está configurado e pronto para funcionar.
após reiniciar o servidor, é necessário iniciar

  1. o banco de dados SGBD (se você não estiver usando o Derby embutido)
  2. KMS
  3. script statup.sh

É possível fazer manualmente ou criar scripts de inicialização.
Para acesso externo, é necessário permitir as portas 5443, 5080, 8888 no firewall.
Aproveite!
P.S. Se a câmera não transmite imagem e você não vê ninguém além de si mesmo, é necessário adicionar o domínio e a porta às exceções do firewall. Se você estiver usando o Kaspersky, ele funciona corretamente e permite tudo (o que é surpreendente!), mas o Avast e o embutido no Windows têm dificuldades. Será necessário lidar com as configurações.

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster