XMPP/Jabber : les spécifications finales de Jingle enfin publiées

Bientôt l'audio et la vidéo dans tous les clients Jabber ou presque 81
xmpp jabber Jabber est un protocole de communication très souvent utilisé dans les solutions libres, et que l’on retrouve dans divers clients multiprotocoles comme Trillian, Pidgin ou Adium pour Mac OS X. Jabber est notamment utilisé par le service Gmail pour la discussion instantanée avec les contacts, ainsi que dans le client séparé Gtalk. On attendait depuis longtemps une extension pour permettre les sessions multimédias, et c’est désormais chose faite.

Les spécifications finales de Jingle ont en effet été publiées. Jingle est une extension de Jabber en préparation depuis des années, et qui a donné lieu à une association entre des développeurs du monde entier et Google (qui a créé la base du protocole en interne). Même si l’éditeur a publié les spécifications fin 2005, il fallait les généraliser de manière à ce qu’elles couvrent l’audio et la vidéoconférence et les utilisations multimédias attenantes.

Voici la liste des spécifications publiées :
  • XEP-0166 : définit une extension du protocole XMPP pour l'initiation et la gestion de sessions multimédias entre deux entités XMPP, d’une manière qui soit interopérable avec les standards Internet existants. À noter que cela inclut les transferts de fichiers ainsi qu’une ouverture vers les solutions SIP.
  • XEP-0167 : cette spécification définit un type d’application Jingle pour la négociation d’une ou plusieurs sessions de communication qui utilisent RTP pour l’échange de voix et de vidéo.
  • XEP-0176 : définit une méthode de transport à travers les NAT, via UDP et en utilisant l’ICE (Interactive Connectivity Establishment). ICE est également utilisé dans SIP (comme Ekiga et Gizmo)
  • XEP-0177 : définit également une méthode de transport, mais dans un environnement sans NAT.
Deux autres spécifications sont disponibles, mais elles ne sont pas encore finalisées, bien qu’à un stade avancé :
  • XEP-0181 : permet le transfert des sons d’un clavier numérique vers des serveurs interactifs, pour un répondeur par exemple
  • XEP-0234 : définit une nouvelle méthode pour le transfert de fichiers. Contrairement aux solutions qui existent actuellement, celle-ci permet d’avoir une infrastructure modulaire, qui permet entre autres l’échange d’informations sur le fichier qui va être transféré, ainsi que la négociation des paramètres de transferts. Là encore, la possibilité existe d'utiliser ICE et donc de passer à travers les NAT.
Au niveau des codecs multimédias qui sont mis en avant, on notera pus particulièrement Speex et G.711 pour l’audio, et Theora, Dirac et H.264 pour la vidéo.

Maintenant que ces spécifications ont été publiées, il faut attendre que les développeurs intègrent Jingle dans les clients XMPP/Jabber. Ce sera le cas pour la version Linux de Gajim (la situation est plus aléatoire pour la version Windows, mais d’autres clients travaillent également sur cette implémentation : Psi, Pidgin, Kopete ou encore Spark et Coccinella.