Cette page est en lecture seule. Vous pouvez afficher le texte source, mais ne pourrez pas le modifier. Contactez votre administrateur si vous pensez qu'il s'agit d'une erreur. # Messagerie instantanée - XMPP [[https://fr.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol|XMPP]] est un protocole de messagerie instantanée, ouvert, standard et extensible. Je le considère comme l'un des meilleurs (si ce n'est le meilleur) protocole de discussion. Il permet de : - Discuter en un à un - Discuter en groupe dans des salons privés ou publics - Chiffrer les conversations de bout-en-bout, même en groupe - Gérer le status (présent, absent, "écoute telle musique", etc) - Personnaliser son profil (avec un nom, une photo, une URL, etc) - Et d'autres choses que j'oublie surement En fait il y a des chances pour que vous ayez déjà utilisé XMPP sans le savoir. Vous avez utilisé Google Talk à l'époque ? C'était du XMPP. L'application WhatsApp, c'est aussi du XMPP (fermé mais ça en est). Vous jouez à League of Legend ou avez une Nintendo Switch ? Leur chat est aussi basé sur XMPP. ## Pourquoi XMPP ? XMPP (parfois aussi nommé sous son ancien nom : Jabber) a beaucoup d'avantages par rapport à d'autres protocoles ou produits. ### Décentralisation Il est réellement décentralisé, ce qui veut dire que comme avec le mail ou le fédiverse il est facile de trouver une instance qui nous convient pour faire notre compte. Tout ne dépend pas d'une seule entité comme avec [[messagerie-instantanee:signal|Signal]] (et n'est pas absurde comme [[messagerie-instantanee:deltachat|Delta Chat]]). ### Auto-hébergement Héberger un serveur XMPP est assez simple pour quiconque à un peu l'habitude d'héberger des services. J'ai écrit [[https://toutetrien.lithio.fr/article/installer-son-serveur-xmpp-avec-prosody/|un article sur le sujet]] que je tient régulièrement à jour. Et contrairement à [[messagerie-instantanee:matrix|Matrix]], pas besoin d'être riche pour héberger son compte ou même ceux de toute sa famille chez soi. Un serveur XMPP consomme très peu de ressources, moins de 500 Mo de mémoire si on a que quelques dizaines de comptes. ### Extensibilité C'est un protocole extensible et c'est ce qui fait sa force : ajouter des fonctionnalités à XMPP en terme de protocole est relativement simple. C'est ce qui a permis de le faire évoluer en ajoutant des choses comme : - Le chiffrement - L'upload de fichiers - Les appels audio et vidéos - Et bien d'autres choses En particulier ces dernières années, XMPP semble de plus en plus avoir le vent en poupe. ## Les clients / applications Les clients ce sont les programmes ou applications sur ordinateur ou smartphone qui permettent d'utiliser la messagerie XMPP. Durant des années ce fût **le** point faible de XMPP : le manque de **bons** clients sur toutes les plateformes. Et par « bon client » j'entend un client qui soit utilisable, jolie, qui permette la communication à 2 ou en groupe et avec du chiffrement de bout-en-bout. Heureusement ces dernières années les choses ont bien avancés. Si bien qu'il existe à présent au moins 1 ou 2 clients sur chaque plateforme que je considère comme de « bons clients ». Je liste ici ceux que je recommandes, ils supportes tous le chiffrement de bout en bout. | Logiciel ^ Système ^ Appels audio/vidéo ^ Appels audio/vidéo groupés ^^^ | **Sur ordinateur** || ^ [[https://gajim.org/|Gajim]] | Linux, Windows, Mac | Non | Non | ^ [[https://dino.im/|Dino]] | Linux | Oui | Oui | ^ [[https://beagle.im/|Beagle IM]] | Mac | Oui | Non | ^ [[https://monal-im.org/|Monal]] | Mac | Oui | Non | | **Sur smartphone** || ^ [[https://conversations.im/|Conversations]] | Android | Oui | Non | ^ [[https://f-droid.org/packages/de.monocles.chat/|Monocles chat]] | Android | Oui | Non | ^ [[https://siskin.im/|Siskin]] | iOS | Oui | Non | ^ [[https://monal-im.org/|Monal]] | iOS | Oui | Non | ## Les ponts Un pont (*Bridge* en anglais) permet de se connecter à un réseau/protocole de messagerie depuis un autre protocole. Beaucoup de ponts existent pour se connecter depuis XMPP à d'autres protocoles comme : - [[https://biboumi.louiz.org/|Biboumi]] pour se connecter à IRC - [[https://github.com/42wim/matterbridge|MatterBridge]] pour se connecter à Discord, IRC, Matrix, Mattermost, Microsoft Teams, Mumble, Nextcloud Talk, Rocket.chat, Slack - [[https://slidge.im|Slidge]] pour se connecter à Signal, Whatsapp, Telegram, Discord, Mattermost, Steam, Skype, Facebook Messenger, Matrix Alors bien sur, les ponts font souvent perdre des fonctionnalités, comme le chiffrement de bout-en-bout par exemple. Mais ça permet de se parler et d'appliquer à XMPP [[https://xkcd.com/1782/|le XKCD 1782 habituellement réservé à IRC]]. ## Foire Aux Questions Cette FAQ reprend et traduis en partie des passages de https://xmpp.org/about/myths/ ainsi que d'autres questions croisées au fil du web. ### « XMPP est mort » et autres « Google à tué XMPP » Ce mythe est visiblement entretenus principalement par des personnes qui ne voient l'informatique que sous l'angle des produits d'entreprises. En effet durant longtemps XMPP fût connu pour être à la base du fonctionnement de produits connus comme Google Talk, Facebook chat, WhatsApp, etc. Mais à partir du moment où ces entreprises ont arrêté ces produits ou fermé la fédération XMPP, beaucoup de personnes ont considéré ça comme "la fin de XMPP" alors qu'il ne s'agissait bien sûr que de la fin des produits commerciaux en question, pas de XMPP lui-même. Si une personne continue de vous affirmer ça, vous êtes face à quelqu'un qui n'a visiblement pas touché à XMPP depuis plus de 12 ans ou qui fait du FUD. ### « XMPP est trop fragmenté » et autres « Y a trop d'implémentations différentes, tout est incompatible » Il y a en effet plusieurs implémentations et beaucoup d'usages à XMPP. Mais dans les faits beaucoup de logiciels se mettent d'accord pour faire des implémentations compatibles entre elles. Il y a d'ailleurs pour cela les [Compliance Suites](https://xmpp.org/about/compliance-suites/) : un guide à destination des développeur·euses mis à jour tous les 2-3 ans qui liste les fonctionnalités à implémenter pour obtenir des clients de messagerie XMPP modernes et à jour. Ainsi, la majorité des clients XMPP modernes fonctionnent parfaitement avec tous les autres. ## Ressources Voici quelques liens utiles pour en apprendre plus. - [[https://joinjabber.org/fr/|La communauté JoinJabber]] : Un espace inclusif avec des salons de discussions et des tutoriels - [[https://wiki.jabberfr.org|Wiki JabberFR]] : un wiki parfois pas très à jour mais intéressant - [Installer son serveur XMPP avec Prosody](https://toutetrien.lithio.fr/article/installer-son-serveur-xmpp-avec-prosody/) : Un tutoriel pas-à-pas pour installer son serveur en quelques dizaines de minutes Vous venez d'arriver sur XMPP et voulez rejoindre un salon d'entraide francophone ? On en a fait un : [[xmpp://entraide-xmpp@conf.lithio.fr|entraide-xmpp@conf.lithio.fr]]