Etherpad Lite Avec Jitsi Meet

Etherpad-lite est un éditeur de texte collaboratif. Jitsi Meet est un système de video-conférence. Voyons comment les faire communiquer.

On part du principe que Jitsi Meet est déjà installé et configuré sur notre propre instance, sous Debian 10, avec systemd, et que node.js est aussi installé. @TODO écrire un article sur l'installation de Jitsi Meet.

Installation de Etherpad lite

En root, on télécharge localement le code source de etherpad-lite

1cd /opt
2git clone --branch master git://github.com/ether/etherpad-lite.git

on créé un fichier de service à /etc/systemd/system/etherpad-lite.service avec le contenu :

 1[Unit]
 2Description=Etherpad-lite
 3After=syslog.target network.target
 4
 5[Service]
 6Type=simple
 7User=root
 8Group=root
 9WorkingDirectory=/opt/etherpad-lite
10Environment=NODE_ENV=production
11ExecStart=/usr/bin/nodejs /opt/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js
12Restart=always
13
14[Install]
15WantedBy=multi-user.target

on recharge les modifs

1systemctl daemon-reload

on lance le service, il va tourner par défaut sur le port tcp/9001 (pas besoin d'ouvrir le firewall, il communiquera localement avec nginx en reverse proxy)

1systemctl start etherpad-lite

on vérifie qu'il n'y a pas d'erreur

1systemctl status etherpad-lite

si on veut le lancer à chaque démarrage on exécute :

1systemctl enable etherpad-lite

Paramétrage de NGinx

Passons maintenant à la configuration de Jitsi Meet

dans le virtual host nginx correspondant à Jitsi Meet (ex: /etc/nginx/site-available/meet.adhocmusic.com.conf), ajouter le bloc suivant :

1    # Etherpad-lite
2    location ^~ /etherpad/ {
3        proxy_pass http://localhost:9001/;
4        proxy_set_header X-Forwarded-For $remote_addr;
5        proxy_buffering off;
6        proxy_set_header Host $host;
7    }

Puis pour l'application cliente, ajoutez la ligne suivante dans le fichier /usr/share/jitsi-meet/interface_config.js

1      etherpad_base: 'https://chat.exemple.net/etherpad/p/',

et vérifiez dans ce même fichier la présence de l'élément etherpad dans le tableau TOOLBAR_BUTTONS.

ça mange pas de pain, vérifiez que la conf nginx modifiée n'a pas généré d'erreur

1# nginx -t
2
3nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
4nginx: configuration file /etc/nginx/nginx.conf test is successful

Si c'est ok, rechargez la conf de nginx

1systemctl reload nginx

Utilisation

C'est prêt, vous devriez avoir un nouveau bouton dans les options en bas à droite de Jitsi Meet intitulé ouvrir/fermer le document partagé. Au clic, une fenêtre d'éditeur de texte s'ouvre en plein écran chez vous et les autres participants. Vous pouvez écrire ensemble. Les noms d'utilisateurs correspondent aux participants du salon. Vous pouvez partager le document à l'extérieur de Jitsi Meet, via un lien de ce type : https://meet.domain.example/etherpad/p/xxxxxxx

comments powered by Disqus