Je profite de ces temps de merdification de reddit pour essayer de faire connaître quelque chose qui me tient à cœur : XMPP (ou Jabber, pour son nom un peu plus sexy). Pour faire simple, c’est à Whatsapp (et Discord, etc.), ce que lemmy est à Reddit (ou ce que Mastodon est à Twitter, ou ce qu’internet est au minitel), bref, si vous êtes ici, vous devriez être sensibles à l’intérêt de ce truc.
Concrètement, c’est un protocole de communication. Il faut choisir (ou créer) une instance, s’y faire un compte (ou pas, les accès anonymes aux salons publics sont également possibles), et voilà, on peut tchatcher avec d’autres blaireaux personnes du monde entier !
Il existe également des passerelles vers les silos propriétaires, dont certaines que je développe. C’est comme ça que j’ai initialement découvert XMPP, j’aime l’idée d’avoir tous mes chats dans une seule appli, aussi bien sur mon ordiphone que sur mes ordipasphones.
Les points forts de XMPP selon moi :
- léger (donc écolo) : un serveur peut tourner sur un petit raspberry pi avec un bon paquet d’utilisateurs, ce n’est pas du tout un souci ;
- chiffrements de bout-en-bout : à la signal/whatsapp, facile à utiliser pour tout le monde, opengpg possible pour les plus nerds d’entre vous
- tout le monde participe à l’évolution du protocole, les entreprises n’ont pas plus de voix au chapitre que les petits devs ;
- amical avec la vie privée (huhuhu) : je n’ai pas les services google sur mon téléphone, et pourtant j’ai des notifications pushs, et ça bouffe pas particulièrement ma batterie.
Le moins bien :
- Les clients traînent un peu à implémenter les fonctionnalités « modernes » (réactions, réponses, fils…) de messagerie instantanée… mais ça vient !
- Les clients iphone un peu en dessous des autres, à cause de l’hostilité d’apple au devs. Là aussi ça s’améliore petit à petit.
Mon utilisation :
- Un serveur prosody hébergé sur le VPS le moins cher d’OVH.
- Les passerelles que je développe (https://sr.ht/~nicoco/slidge/) pour accéder à Whatsapp, Discord, Telegram, Signal, Messenger, Steam chat, Skype et Mattermost installées au même endroit. (EDIT: j’ai également biboumi comme passerelle IRC).
- Conversations sur mon android dégooglé : ce client est parfaitement adapté aux noobs, grâce à lui ma famille (et quelques copains proches) utilisent mon instance sans trop se poser de questions.
- Gajim ou Dino selon l’humeur sur mes ordis de bureau et Beagle sur le macbook (😭️) du boulot; ma femme non geek aime bien gajim sous windows aussi.
- Mes copains avec iphone utilisent siskin.
Je vais finir par quelques liens utiles si vous voulez creuser un peu plus:
- de la doc destiné aux novices : https://joinjabber.org/fr/
- autohébergement facile : https://snikket.org/
- un client web avec des fonctionnalités « réseau social » : https://movim.eu/
- un autre : https://libervia.org/
- une longue liste de logiciels XMPP : https://xmpp.org/software/
- un service commercial pour avoir un numéro de téléphone pour appels voix et SMS sur XMPP : https://jmp.chat/
- une appli (liée à une instance) où l’inscription se fait avec numéro de tel/OTP par SMS (comme sur whatsapp/signal/telegram/etc.): https://quicksy.im/
Viendez, on est bien.
EDIT: j’oubliais un autre point fort de XMPP, assez important. C’est un protocole qui existe depuis un bail (fin des années 90) et qui a fait ses preuves. Whatsapp par exemple, utilise le protocole XMPP légèrement modifié (et surtout non fédéré avec les autres) et gère… beaucoup, beaucoup, d’utilisateurs. Ça passe à l’échelle sans souci.
Super intéressant le principe de passerelles je connaissais pas, quand j’aurais un peu de temps ça me tente d’héberger mon serveur et de tester les passerelles Whatsapp et Signal.
Juste pour plus d’infos il y a beaucoup d’utilisateurs sur les passerelles que tu développes ? Ok Sourcehut c’est super pour les libristes mais au moins avec Github on a des stats (nombre de favoris, de forks, de contrbuteurs, etc.) qui permettent facilement de jauger la popularité d’un projet.
Et sinon ça passe sur une utilisation auto-hébergée avec accès via VPN ? Je me vois pas foutre ça en accès public.
Je ne fais pas de télémétrie, donc très dur de dire combien d’utilisateurs il y a. Je sais qu’il y a une 60aine de personnes sur le salon de discussion de mon projet, mais tous ne sont pas (encore?) utilisateurs. Je sais qu’il y a edhelas, l’administration de mov.im (et développeur du client xmpp movim) qui propose mes passerelles telegram et discord à ses utilisateurs sur son serveur. Idéalement j’aimerais que d’autres admins suivent, mais ils attendent probablement encore un peu que la stabilité s’améliore, et je les comprends. ;-)
Concernant sourcehut, j’aime bien qu’il n’y ait aucun aspect réseau social, et une interface assez austère, je me sens tout hackerman.
Accès VPN? Il faudra bien que les passerelles puissent communiquer avec les réseaux propriétaires ? Je ne suis pas sûr du setup auquel tu penses, mais pour info mon serveur xmpp est “privé”, dans le sens où je crée les comptes manuellement (et pas beaucoup, pas envie d’administrer un gros serveur), mais quand même fédéré avec les autres serveurs XMPP. Les passerelles ne sont accessibles qu’aux utilisateur de mon serveur… Qu’est-ce qui t’inquiète en pratique dans un accès public?
Merci des infos, par accès VPN je parle d’un hébergement sur mon réseau local. Donc le serveur aura bien accès à internet mais seuls les utilisateurs connectés directement au réseau local pourront y accéder (et c’est là que VPN entre en jeu pour accéder au service de l’extérieur).
Y a rien qui m’inquiète spécifiquement pour l’accès public mais je préfère dans la mesure du possible ne pas avoir de services publiquement disponibles sur internet.
Merci de parler un peu de XMPP ! C’est un très bon protocole et c’est vraiment dommage qu’il soit un peu délaissé au profit de Matrix cet dernières années.
Matrix a réussi à très bien communiquer et recruter pas mal de libristes, mais sa merdification a déjà commencé :(
XMPP j’ai vraiment essayé, mais contrairement à Mastodon/Lemmy ou je peux trouver des communautés pour discuter, la messagerie instantanée c’est souvent pour communiquer avec mes proches.
J’ai déjà réussi à les faire quitter WhatsApp pour Telegram (oui, je sais que la crypto est faite maison, mais c’était un moindre mal pour avoir une interface un peu sympa et sortir du giron de Méta), XMPP c’est juste pas assez user friendly pour la plupart des gens
Faire migrer c’est difficile, c’est pour ça que j’ai mes passerelles. Je ne suis pas sûr que tu aies fait une affaire en passant de whatsapp à telegram. Quicksy est la solution facile pour une UX proche de whatsapp (android seulement malheureusement).
Concernant la user-friendliness, je pense qu’en tant que nerds un peu militants, c’est à nous de commencer à utiliser ces outils, essayer de convaincre nos potes non nerds, et tenir compte de leurs retours pour que ça s’améliore.
J’ai vraiment essayé aussi XMPP mais quasi personne, même dans mes potes (pas assez) nerds, ne m’a rejoint Et quasiment TOUTES les associations (Sportives, Enfants, … ) ont des groupes Whatsapp Une solution que j’aimerais beaucoup c’est utiliser Xmpp et pouvoir discuter de facon transparente avec “les autres” De ce que j’ai vu cela semble relativement complexe. Il faut monter soit meme son serveur avec des passerelles etc.
Mettre en place un serveur et une passerelle est moins galère que d’autres protocoles (Matrix je pense à toi), mais effectivement fait bien aimer faire un peu d’administration système.
Il existe des serveurs publics où des passerelles sont déjà en place, par exemple https://mov.im a telegram et discord. J’envisage peut-être d’ouvrir mon serveur pour les gens qui voudraient essayer, mais je suis un peu embêté car d’une part administrer un serveur ouvert au public ça sera plus de boulot que mon serveur privé (mais fédéré) actuellement et d’autre part, rien ne m’empêchera techniquement de lire les communications de mes utilisateurs (pas de E2EE avec les passerelles). Je ne le ferai pas, j’ai pas que ça à foutre, hein, mais ça me plait pas trop sur le principe.