Habilitando gravações e streaming Jitsi com Jibri

Se em um Postagem anterior Vimos como podemos configurar nossa própria solução de videoconferência para nossa empresa, Hoje vamos dar algumas adições, como a possibilidade de gravar as sessões ou transmitir ao vivo nossas reuniões.

Através do Jibri podemos gravar em disco ou na nuvem as sessões que fazemos, bem como se você quiser fazer uma transmissão ao vivo e transmitir no Youtube. Uma consideração importante será que só podemos fazer uma gravação simultaneamente ou transmitir, para mais, teremos que criar diferentes Jibri's (por exemplo, em recipientes).

A ideia é seguir o post anterior por isso vamos permitir esta funcionalidade interessante! Partimos do facto de que no Github Todo o projeto está bem documentado, aqui vamos nós com um Ubuntu 20.04.

Vamos começar com o básico, Temos que ter a versão 8 Java, saberemos a versão que temos em execução:

java -versão

No meu caso, ter Ubuntu 20.04, Vejo que tenho a versão 11, Então você tem que fazer downgrade, Primeiro, certificamo-nos de instalar a versão 8:

Sudo apt-get install openJDK-8-jre sudo apt-get install openjdk-8-jdk

E quando você executa 'update-alternatives –Configuração Java’ Poderemos escolher a versão do Java que utilizaremos, No meu caso, escolhemos o 2:

Existem 2 Opções para o Java alternativo (fornecendo /usr/bin/java).

  Status de prioridade do caminho de seleção
------------------------------------------------------------
* 0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      Modo Automático
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      Modo manual
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      Modo manual

Criamos a variável JAVA_HOME com 'nano ~/.bashrc', nós o adicionamos ao final do arquivo, e depois de salvar o arquivo, deixaremos a sessão e carregaremos novamente para confirmar que a variável está carregada (com um simples 'echo $JAVA_HOME').

exportar JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java

Instalamos as seguintes dependências que serão necessárias:

apt update apt install unzip ffmpeg curl alsa-utils icewm xdotool xserver-xorg-input-void xserver-xorg-video-dummy -y

Carregando o módulo de loopback ALSA, Forçamo-lo a carregar no arranque e verificamos se o temos carregado:

ECO "SND-ALOOP" >> /etc/módulos modprobe snd-aloop lsmod | Grep snd_aloop

Instalamos a última versão estável do Google Chrome:

ondulação -sS -o - https (em inglês)://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key adicionar echo "Deb [arco = amd64] Referências HTTP://dl.google.com/linux/chrome/deb/ principal estável" > /etc/apt/sources.list.d/google-chrome.list apt atualização && apt instalar google-chrome-stable -y

Para ocultar o Aviso que o Chrome retirará que gravará a sessão: “O Chrome está a ser controlado por software de teste automatizado” Indicaremos isso por meio de uma preferência:

mkdir -p /etc/opt/chrome/policies/managed
echo '{ "CommandLineFlagSecurityWarningsEnabled": Falso }' >>/etc/opt/chrome/policies/managed/managed_policies.json

Também precisaremos do Chromedriver:

CHROME_DRIVER_VERSION='curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE' wget -N http://chromedriver.storage.googleapis.com/$CHROME_DRIVER_VERSION/chromedriver_linux64.zip -P ~/ descompactar ~/chromedriver_linux64.zip -d ~/ rm ~/chromedriver_linux64.zip mv -f ~/chromedriver /usr/local/bin/chromedriver chown root:raiz /usr/local/bin/chromedriver chmod 0755 /usr/local/bin/chromedriver

Instalamos o repositório Jitsi para finalmente instalar o Jibri:

wget -qO - https (em inglês)://download.jitsi.org/jitsi-key.gpg.key | Sudo apt-key add -
sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"
apt update apt install jibri -y

Colocamos o usuário Jibri nos grupos para ter acesso aos dispositivos de áudio ou vídeo:

usermod -aG adm,áudio,vídeo,Plugdev Jibri

Adicione ao final do arquivo /etc/prosody/conf.avail/meet.domain.eso.cfg.lua o seguinte:

Componente "interno.auth.meet.domain.eso" "Muc"
    modules_enabled = {
      "Ping";
    }
    armazenamento = "memória"
    muc_room_cache_size = 1000

VirtualHost "gravador.meet.domain.eso"
    modules_enabled = {
      "Ping";
    }
    autenticação = "internal_plain"

E recarregamos a Prosódia:

Recarga de Prosódia

Criamos as duas contas que a Prosody vai usar e estabelecemos uma senha que vamos usar daqui a pouco:

prosodyctl registro jibri auth.meet.domain.eso SENHA prosodyctl registro gravador recorder.meet.domain.eso SENHA

Acrescentamos estes 2 linhas no final de '/etc/jitsi/jicofo/sip-communicator.properties’ para localizar drivers Jibri:

org.jitsi.jicofo.jibri.CERVEJARIA=Ji**********@in******.eem
org.jitsi.jicofo.jibri.PENDING_TIMEOUT=90

E nós recarregamos Jicofo:

/etc/init.d/jicofo recarga

Nós descomentamos e deixamos as seguintes linhas em '/etc/jitsi/meet/meet.dominio.eso-config.js’ Para habilitar gravações ou streaming:

fileRecordingsEnabled: Verdadeiro,
liveStreamingHabilitado: Verdadeiro,
hiddenDomain: 'recorder.meet.dominio.eso',

Creamos el fichero de configuración de Jibri '/etc/jitsi/jibri/config.json':

{
    "recording_directory":"/SRV/Gravações",
    "finalize_recording_script_path": "/caminho/para/finalize_recording.sh",
    "xmpp_environments": [
        {
            "Nome": "ambiente prod",
            "xmpp_server_hosts": [
                "conheça.dominio.eso"
            ],
            "xmpp_domain": "conheça.dominio.eso",
            "control_login": {
                // O domínio a utilizar para iniciar sessão
                "domínio": "auth.meet.dominio.eso",
                // As credenciais para iniciar sessão
                "nome de usuário": "Jibri",
                "senha": "PALAVRA-PASSE"
            },
            "control_muc": {
                "domínio": "interno.auth.meet.domain.eso",
                "room_name": "JibriCervejaria",
                "alcunha": "jibri-apelido"
            },
            "call_login": {
                "domínio": "gravador.meet.domain.eso",
                "nome de usuário": "gravador",
                "senha": "PALAVRA-PASSE"
            },
            "room_jid_domain_string_to_strip_from_start": "conferência.",
            "usage_timeout": "0"
        }
    ]
}

Creamos el directorio donde vamos a dejar las grabaciones y nos damos permisos, también podríamos guardarlas en nube o en un share que montemos en la máquina:

mkdir /srv/gravações chown jibri:jitsi /srv/gravações

Reiniciamos Jitsi:

serviço jibri reiniciar

E é isso! Podemos tentar fazer uma reunião e fazer uma transmissão ao vivo ou fazer uma gravação da reunião.

Ao iniciar a gravação, todos os participantes ouvirão uma mensagem informando que a sessão está sendo gravada e você também poderá verificá-la, pois veremos um ícone no canto superior direito.

E poderemos confirmar que as gravações são deixadas no diretório que indicamos, Neste exemplo em '/srv/recordings/'.

Espero que, como sempre,, que você achou de interesse e obrigado a todos vocês que dão essas curtidas e recomendações nas redes sociais.

Postagens recomendadas

Autor

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Não hesite em contactar-me, Vou tentar ajudá-lo sempre que puder, Compartilhar é viver ;) . Desfrute de documentos!!!