Jitsi

De Reliable Brain

Généralités

JITSI est un serveur de visio-conférence libre et gratuit.

Les premiers essais n'ont pas été très conclusifs pour les raisons suivantes :

  • Ne fonctionne bien qu'avec Chrome et les applications Jitsi-Meet, mais aussi avec les applications basées sur Electron.
  • Ne fonctionne pas avec Firefox hélas
  • Je n'avais pas employé le FQDN pour la création du serveur... En reprenant tout, c'est passé comme une lettre à la poste.

Nouveautés

Il existe désormais un site qui reprend toutes les informations : https://jitsi.github.io/handbook/

Installation

J'utilise un CT avec Ubuntu Server 18.04.4

Il faut bien suivre scrupuleusement ces sites, et utilisant systématiquement le FQDN créé.

  1. Installation de base : https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-quickstart
  2. Customisation : https://framacloud.org/fr/cultiver-son-jardin/jitsi-meet
  3. Sécurisation : https://crosstalksolutions.com/how-to-enable-jitsi-server-authentication/

Modifications effectuées

Fichier /etc/jitsi/meet/visio.<domaine>-config.js =

   enableInsecureRoomNameWarning: true,
   enableDisplayNameInStats: true,
   disableThirdPartyRequests: true,
   defaultLanguage: 'fr',


Fichier /var/www/jitsi-custom/interface_config.js

mkdir /var/www/jitsi-custom cp /usr/share/jitsi-meet/interface_config.js /var/www/jitsi-custom

   BRAND_WATERMARK_LINK: 'https://it.ambafrance.org/',
   ENABLE_DIAL_OUT: false,
   GENERATE_ROOMNAMES_ON_WELCOME_PAGE: false,
   HIDE_INVITE_MORE_HEADER: true,
   TOOLBAR_BUTTONS: [
       'microphone', 'camera', 'closedcaptions', 'desktop', 'fullscreen',
       'fodeviceselection', 'hangup', 'profile', 'chat', 
       'livestreaming', 'etherpad', 'sharedvideo', 'settings', 'raisehand',
       'videoquality', 'filmstrip', 'invite', 'feedback', 'stats', 'shortcuts',
       'tileview', 'videobackgroundblur', 'download', 'help', 'mute-everyone', 'security'
   ],

Voir aussi ici :

SIP et Jigasi

  1. Installer JIGASI
    apt install jigasi
  2. Modifier le fichier "/etc/jitsi/jigasi/sip-communicator.properties"
  3. Créer un compte jigasi :
    prosodyctl register jigasi visio.cahuet.fr mdp_jigasi

prosodyctl check prosodyctl cert generate example.org auth.example.org

I went into /etc/prosody/conf.d/domain.com.cfg.lua and changes storage="empty" to storage="memory". Suddenly it started working.

Modifier les fichiers nano /etc/jitsi/videobridge/config JVB_ENABLE_APIS=rest,colibri

nano /etc/jitsi/videobridge/sip-communicator.properties org.jitsi.videobridge.ENABLE_STATISTICS=true org.jitsi.videobridge.STATISTICS_TRANSPORT=muc,colibri org.jitsi.videobridge.STATISTICS_INTERVAL=5000

Voir https://community.jitsi.org/t/quick-install-cant-get-colibri-stats-working/26461 http://192.168.100.208:8080/colibri/stats

upgrades

Documentation

Particularités

  • Je n'hébergeais pas de serveur jusqu'à présent sur mon proxmox. Il a donc fallu faire quelques adaptations pour mettre en place ce service.
  • Créer un dyndns qui pointe vers mon adresse IP publique (via OVH et pfSense, pas de difficulté)
  • Créer les règles de nattage afin de renvoyer les flux http, https et 10000 vers le serveur en DMZ
  • Mise en DMZ du pfSense sur le modem opérateur

Clients

Ordinateurs

Sur Mac, Windows ou Linux, nécessité d'utiliser le navigateur Chrome de Google.

Sinon, télécharger le logiciel Jitsi Meet adapté à votre environnement sur https://github.com/jitsi/jitsi-meet-electron/releases/tag/v2.0.0 ou ici : https://github.com/jitsi/jitsi-meet-electron

Pour Mac

Installer homebrew si ce n'est pas déjà fait, et utiliser la commande :

brew cask install jitsi-meet

Android ou iPhone/iPad

Installer le logiciel Jitsi Meet puis configurer le serveur avec https://jitsi.cahuet.fr En profiter pour renseigner votre prénom.

Effectuer la demande de certificats Let's Encrypt

Executer le script suivant, et bien renseigner le FQDN

  • /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Automatiser la mise à jour des certificats

modifier le fichier crontab et ajouter les deux lignes suivantes : crontab -e

  • 4 * * 0 /usr/local/sbin/certbot-auto renew >> /var/log/certificates-renew.log
  • 4 * * 0 systemctl restart nginx

Supervision

Voir Supervision Serveurs

http://172.30.1.101:3000/d/mcfIHGrZz/serveur-visioconference?orgId=1&refresh=30s

  1. Installer Grafana : https://grafana.com/docs/grafana/latest/installation/debian/
  2. installer InfluxDB : https://portal.influxdata.com/downloads/
  3. Récupérer le numéro du DashBoard : 11969 (https://grafana.com/grafana/dashboards/11969)
  4. Créer son propre Dashboard : https://community.jitsi.org/t/how-to-to-setup-grafana-dashboards-to-monitor-jitsi-my-comprehensive-tutorial-for-the-beginner/38696

Architecture

Tuning

LoadBalancing

Customisation

Ajout des fonctions de diffusion

Cela passe par l'isntallation d'un serveur JIBRI qui permet de diffuser une visioconférence sur YouTube : https://community.jitsi.org/t/tutorial-jibri-overview-troubleshooting-tips-tricks-solve-your-jibri-problems-quickly/86054

Comparatif solutions visio

Quelques références

  1. Installation de base : https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md
  2. Customisation : https://framacloud.org/fr/cultiver-son-jardin/jitsi-meet
  3. Promotheus Exporter : https://github.com/karrieretutor/jitsi-prom-exporter
  1. Jitsi-Videobridge : https://jitsi.org/jitsi-videobridge/
  2. Evaluation des performances : https://jitsi.org/jitsi-videobridge-performance-evaluation/
  3. https://www.howtoforge.com/tutorial/how-to-create-your-own-video-conference-using-jitsi-meet-on-ubuntu-1804/
  4. https://www.scaleway.com/en/docs/setting-up-jitsi-meet-videoconferencing-on-debian-buster/