generationcyb.net pointcyb lien vers les points cyb
Inscription à la lettre d'information | Fil infos rss 
Accueil > Communication par Internet : chat, mail, blog, forum…

Jabber : la messagerie instantanée libre et bien plus encore


Version imprimable Version imprimable


Jabber est une application réseau basée sur le protocole [1] XMPP. Jabber offre une alternative ouverte pour la messagerie instantanée, son utilisation la plus connue. Nous vous invitons à travers ces quelques lignes à découvrir les principes de la technologie Jabber et ses avantages. Nous présentons quelques d’usages basés sur Jabber et les outils associés, le plus souvent des logiciels libres.

Le babel des messageries instantanées

Aujourd’hui lorsque vous décrochez votre téléphone pour appeler un correspondant, vous ne vous préoccupez pas de savoir s’il est abonné chez le même opérateur que vous. Il n’en va pas de même pour les messageries instantanées. MSN, Yahoo, AIM, ICQ constituent autant d’univers parfaitement cloisonnés. Vous ne pouvez discuter qu’avec les utilisateurs du même réseau. Il arrive que 2 sociétés décident de rendre compatibles [2] leurs réseaux mais les échanges restent impossibles avec les autres protocoles. On nous prend pour des idiots [3] écrit avec raison Thierry Stoehr sur Formats-ouverts.org.

Un standard ouvert

Jabber est basé sur le protocole ouvert XMPP. Cet article s’inscrit dans la série Des formats ouverts pour des données libres. Les lecteurs pour lesquels les notions de format ouvert et d’interopérabilité ne sont pas familières liront avec intérêt l’introduction de notre article consacré au format Opendocument.

Une architecture décentralisée

L’architecture du réseau Jabber est très proche de celle utilisée pour la messagerie électronique. Chaque client communique avec un serveur. Les serveur échangent entre eux les messages de leurs clients. On trouve un bon aperçu technique [4] sur le wiki Jabberfr.

Cette architecture décentralisée constituée de très nombreux serveurs distribués sur l’ensemble de la planète offre l’avantage de ne pas dépendre d’un fournisseur unique. À l’inverse, Microsoft imposait récemment la mise à jour de son logiciel de messagerie en interdisant l’accès aux utilisateurs récalcitrants [5].

Encore du XML

Comme les standards Opendocument [6] et SVG [7] qui ont fait chacun l’objet d’un article de la série Des formats ouverts pour des données libres, Jabber est basé sur la technologie XML. Notre article consacré au format SVG comporte une courte présentation de cette technologie.

Une norme internationale

XMPP est une norme internationale maintenue par la Fondation XSF [8] et reconnue par l’IETF [9] depuis octobre 2004 [10]. Le protocole est décrit dans des documents appelés RFC (Request For Comment) [11] qui décrivent précisément les différents aspects du protocole. Ces spécifications sont librement consultables [12] [13] et l’IETF n’impose aucune restriction à l’utilisation de sa norme. Il s’agit donc bien d’un standard ouvert tel que définit dans la loi française [14].

Les JEPs (Jabber Enhancement Proposals) permettent d’étendre le protocole pour des applications spécifiques. C’est le cas par exemple de Jingle pour la vidéo [15].

Messagerie instantanée et présence

La messagerie instantanée est sans aucun doute l’utilisation la plus courante parmi les possibilités offertes. On trouve de nombreux clients Jabber [16] sous licence libre : Coccinella [17], Exodus [18], Freetalk [19], Gabber [20], Gajim [21], Gossip [22], Psi [23]. D’autres clients supportent plusieurs protocoles dont Jabber : Adium [24], CenterICQ [25], Kopete [26], Miranda [27], Openwengo [28], Pidgin [29] (anciennement Gaim). Ces listes n’ont pas la prétention d’être exhaustives.

Parmi les applications propriétaires, on peut citer Google Talk [30] dont la FAQ vente les mérites du protocole XMPP en matière d’interopérabilité : Google Talk prend également en charge des clients de communication standard. Les utilisateurs Gmail peuvent donc accéder au service Google Talk et échanger des messages instantanés à l’aide d’autres clients prenant en charge le protocole standard XMPP, tels que Trillian, GAIM, iChat, Adium et Psi. Vous pouvez donc accéder au service Google Talk et envoyer des messages instantanés à partir des principales plates-formes du marché, notamment OSX, Linux et Windows [31].

Jabber gère également votre présence, ce qui permet à vos contacts de connaître votre statut (connecté, disponible, occupé…).

Jargon Jabber

  •  Le JID (Jabber IDentifiant) désigne l’adresse Jabber d’un utilisateur. Sa forme est la même que celle des adresses de courrier électronique.
  •  Les JUD (Jabber User Directory) sont les annuaires d’utilisateurs Jabber.
  •  Chaque utilisateur stocke ses contacts dans son roster. Ces contacts sont stockés sur le serveur, ce qui permet de les rendre accessibles quel que soit le lieu de la connexion.
  •  Les passerelles [32] ou transports vous permet de vous connecter à d’autres réseaux de messagerie instantanée depuis Jabber. Les passerelles sont installées sur le serveur Jabber. On trouve des passerelles pour MSN, ICQ, Yahoo, AIM…
  •  Les MUC [33] (Multi User Chat) ou salles de discussion offrent la possibilité d’échanges à plusieurs avec Jabber.

    D’autres termes vous semblent obscurs, le wiki Jabberfr comporte un très bon glossaire [34].

    Jabber côté serveur

    Il existe des serveur publics sur lesquels chacun peut s’inscrire pour disposer d’une adresse Jabber. Une liste est disponible sur le wiki Jabberfr [35].

    Chacun peut faire fonctionner son propre serveur Jabber. Parmi les logiciels disponibles, on peut citer : ejabberd [36], jabberd [37], Tigase [38], Wildfire [39].

    Jabber et la sécurité

    Citons le Journal du net : Jabber a aussi le bon goût d’être sûr : il supporte le protocole SSL, les systèmes d’authentification de LDAP et de SQL, il crypte les mots de passe stockés sur le serveur [40].

    Autres applications de Jabber

    Jabber est conçu comme un protocole d’échange générique, dont une des applications est la messagerie instantanée mais son champ d’application s’étend largement au delà : notification, transfert de fichiers [41], salles de discussion [42] mais aussi voix sur IP et multimédia  [43] ou encore jeux en réseau [44].

    Vous aimez consulter rapidement les flux RSS de vos sites favoris ? Avec JabRSS [45], vous pouvez recevoir les mises à jour directement dans votre client Jabber.

    Jabber sert également de support à des applications de travail collaboratif en temps-réel. Des outils comme Coccinella [46] ou Inkboard [47] permettent de partager une fenêtre de dessin entre plusieurs utilisateurs à travers le réseau. Le traitement de texte Abiword peut fonctionner en réseau via Jabber [48] comme l’illustre une animation disponible sur le site du logiciel [49].

    Jabber dans le texte

    Voici un exemple fictif de communication entre un client et un serveur Jabber. Bien entendu, tout ceci est transparent pour l’utilisateur. Nous nous inspirons ici du chapitre 4.8 de la RFC 3920 : Simplified Stream Examples.

    Le client :


    <?xml version='1.0'?>
         <stream:stream
             to='example.com'
             xmlns='jabber:client'
             xmlns:stream='http://etherx.jabber.org/streams'
             version='1.0'>

    Le serveur :


    <?xml version='1.0'?>
         <stream:stream
             from='example.com'
             id='someid'
             xmlns='jabber:client'
             xmlns:stream='http://etherx.jabber.org/streams'
             version='1.0'>

    Le client :


    <message from='juliet@example.com'
                    to='romeo@example.net'
                    xml:lang='en'>
    <body>Art thou not Romeo, and a Montague?</body>
    </message>

    Le serveur :


    <message from='romeo@example.net'
                    to='juliet@example.com'
                    xml:lang='en'>
    <body>Neither, fair saint, if either thee dislike.</body>
    </message>

    Le client :


    </stream:stream>

    Le serveur :


    </stream:stream>

    Pour en savoir plus :

  •  Le wiki Jabberfr
  •  Présentation de Jabber sur le wiki Jabberfr
  •  Le protocole Jabber sur Minet
  •  Le guide de l’utilisateur Jabber et Vue d’ensemble du système Jabber traduits de l’anglais par Yvon Le Gal.
  •  Jabber sur Wikipédia
  •  Les deux crabes, le cocotier et l’utilisateur de Jabber et Jabber pour Marie et les non ordinateuriens… par Ploum
  •  Quand Jabber ne sert pas qu’à la causette par Talou

    Pour suivre l’actualité de Jabber :

  •  Le Jabber Journal
  •  News Jabber
  •  Le Planet Jabberfr

    A propos de l’auteur

    Jean-Christophe BECQUET est le fondateur d’APITUX, cabinet spécialisé dans la formation et le conseil en informatique libre. Il est également l’auteur du site Apitux.org consacré aux enjeux du logiciel libre, aux standards ouverts et à l’interopérabilité.

    Cet article est publié selon les termes de la licence Créative Commons BY-SA.


    [1] Qu’est-ce qu’un protocole ? sur le site de l’Open Discussion Day

    [2] Compatibilité, standard de fait et interopérabilité sur Apitux.org

    [3] On nous prend pour des idiots sur Formats-ouverts.org

    [4] Aperçu technique sur le Wiki Jabberfr

    [5] Microsoft impose la màj Windows Live Messenger 8.1 sur Clubic

    [6] Bureautique : le format Opendocument sur Generationcyb.net

    [7] Le format SVG sur Generationcyb.net

    [8] La fondation XFS : XMPP Standards Foundation

    [9] IETF - Internet Engineering Task Force

    [10] Messagerie instantanée : la norme internationale XMPP sur Formats-ouverts.org

    [11] RFC sur Wikipédia

    [12] Extensible Messaging and Presence Protocol (XMPP) : Core RFC 3920

    [13] Extensible Messaging and Presence Protocol (XMPP) : Instant Messaging and Presence : RFC 3921

    [14] Formats ouverts et interopérabilité sur Apitux.org

    [15] Jingle sur le wiki Jabberfr

    [16] Clients Jabber sur le wiki Jabberfr

    [17] Coccinela (en anglais)

    [18] Exodus (en anglais)

    [19] Freetalk (en anglais)

    [20] Gabber (en anglais)

    [21] Gajim

    [22] Gossip (en anglais)

    [23] Psi (en anglais)

    [24] Adium (en anglais)

    [25] CenterICQ (en anglais)

    [26] Kopete (en anglais)

    [27] Miranda (en anglais)

    [28] Openwengo (en anglais)

    [29] Pidgin (en anglais)

    [30] Google Talk

    [31] Google Talk - Foire aux questions (FAQ)

    [32] Les passerelles sur le wiki Jabberfr

    [33] Les MUC sur le wiki Jabberfr

    [34] Glossaire sur le wiki Jabberfr

    [35] Serveurs sur le wiki Jabberfr

    [36] ejabberd (en anglais)

    [37] Jabberd (en anglais)

    [38] Tigase (en anglais)

    [39] Wildfire (en anglais)

    [40] Jabber : une messagerie instantanée libre et universelle sur le Journal du net

    [41] Le transfert de fichiers sur le wiki Jabberfr

    [42] MUC sur le wiki Jabberfr

    [43] Solutions de voix et de vidéo sur le wiki Jabberfr

    [44] Gtetrinet sur Telepathy par Alban Crequy

    [45] JabRSS (en anglais)

    [46] Aperçu du tableau blanc partagé dans Coccinella

    [47] Inkboard

    [48] Wiki, Google Docs et Abiword par Alban Crequy

    [49] Abicollab : partage d’une fenêtre de traitement de texte via Jabber (animation multimédia)

    Mis en ligne le mercredi 10 octobre 2007



    Répondre à cet article

    Forum

    • Vous cherchiez à vous affranchir de Skype ? Voici ce qu’il vous faut !
      8 décembre 2007, par Jean-Christophe BECQUET

      De prime abord, Spark est tourné vers les personnes connaissant déjà le réseau Jabber : en effet, pas d’assistant de création de compte ni d’aide à la mise en place des passerelles MSN, Yahoo… Autant dire que si vous n’avez jamais entendu parler de Jabber et que vous cherchez juste à vous initier, ce logiciel n’est pas tout à fait ce qu’il vous faut et vous préférerez peut-être des logiciels comme Wengophone.

      En revanche, pour les utilisateurs plus avancés, il dispose d’une interface agréable et intuitive qui permet de converser par écrit, et Spark a intégré l’extension Jingle qui gère la fonction audio (et bientôt vidéo) afin d’ utiliser la VoIP qui vous permettra aussi de converser avec les correspondants qui utilise GoogleTalk. Il intègre aussi la fonction wizz qui permet de faire trembler votre fenêtre avec un son afin d’attirer votre attention. Rassurez vous, cette fonction n’est utilisable qu’entres clients Spark. ;)

      L’interface est localisée, on a donc pas une traduction totale mais cependant largement suffisante pour une utilisation courante et pour pouvoir téléphoner librement.

    • Jabber : la messagerie instantanée libre et bien plus encore
      13 novembre 2007

      Sortie de Psi 0.11

      Après un cycle de développement particulièrement long, et après 5 bêta et 3 RC, le client Jabber libre et multiplateforme Psi sort enfin en version 0.11. Cette version devait - à la base - n’avoir aucune nouvelle fonctionnalité et ne devait comporter comme modification que le passage de Qt3 à Qt4, mais Qt4 ayant mis du temps à se stabiliser, les développeurs ont eu le temps de rajouter beaucoup de fonctionnalités. Cette sortie lui permet de rattraper en partie le retard que ce client a pris par rapport à son principal concurrent libre : Gajim.

      Parmi les nouveautés, on trouve une gestion largement amélioré des salons de discussion. Il est maintenant possible avec Psi de configurer un salon et de le modérer. Les avatars ont également été ajoutés, par contre la méthode la plus utilisée par la majorité des autres clients jabber n’est supportée qu’en lecture, l’équipe préfère supporter la nouvelle méthode pour les avatars, techniquement meilleure mais qui demande une prise en charge au niveau du serveur qui n’est encore que très rarement présent.

    • Jabber : la messagerie instantanée libre et bien plus encore
      12 octobre 2007
      • Jabber : la messagerie instantanée libre et bien plus encore
        13 mai 2008, par Jeremy Berghougnoux
        j’ai vraiment du mal à me séparer de meebo… c’est le seul webservice à avoir une fonctionnalité d’historique des conversations ?
    Des mêmes auteurs

    apitux | (APITUX) : Formateur et conseil en informatique libre. Auteur du site http://www.apitux.org/ consacré aux enjeux du logiciel libre, aux standards ouverts et à l’interopérabilité. APITUX vous accompagne dans votre migration vers le logiciel libre.

    - Le format SVG
    - Conférence : Y a t-il une économie du libre ?
    - Des agendas partagés en toute liberté avec Webcalendar
    - Jabber : la messagerie instantanée libre et bien plus encore
    - Le format Opendocument

  • Contact | Plan du site | Espace privé
    Dernier ajout : lundi 14 juillet 2008 | 744 articles sur ce site.
    XHTML 1.0 | CSS 2 | RSS

    Generationcyb.net est motorisé par Spip 1.9.2c associé à un squelette graphique Rizom
    Sauf indication, les articles sont mis à disposition sous un contrat Creative Commons
    Ministère de la santé, de jeunesse et des sports Institut national de la jeunesse et de l'éducation populaire Information jeunesse Centre d'information et de documentation jeunesse