11 ans : quizz LinuxFr.org
LinuxFr.org a 11 ans !
À cette occasion, nous avons organisé un concours :
- 1 lot par jour à gagner
- 1 quizz par jour pendant une semaine
- 11 questions par quizz
Foncez sur http://linuxfr.org/concours/ !
Filed under: Planet-Libre | Leave a Comment
Après une longue période d’attente pour certains et de travail pour d’autres , la XSF a publié les spécifications Jingle en version 1.0 (statut ‘Draft’).
Longue attente, car Google avait publié les spécifications de son Jingle-voix en fin 2005, en même temps sa bibliothèque libre libjingle. Rappelons que le Jingle-voix de l’époque est présent dans Google Talk, l’application ‘lourde’, pas web, ni Flash, qui s’installe sur un bureau Windows. Ce qui explique une si longue attente, c’est le travail soigné apporté à la généralisation des spécifications (vidéo, fichiers, ICE), leurs implémentations, le feedback pour maturer les spécifications. Rappelons encore que Jingle est ‘très’ (tout est relatif) attendu, et qu’il est critique d’écrire quelque chose de bien chiadé. Tout cela prend énormément de temps. Un standard ouvert nécessite beaucoup d’attention et de mise au point.
Désolé pour les traductions manquantes, mais je n’ai pas trop le temps, voir le travail de Maclag sur le wiki de JabberFr. Merci Maclag ! ;-) Les mises en forme sont de ma main, ainsi que les commentaires.
Voici les spécifications en question :
- XEP-0166: Jingle
This specification defines an XMPP protocol extension for initiating and managing peer-to-peer media sessions between two XMPP entities in a way that is interoperable with existing Internet standards. The protocol provides a pluggable model that enables the core session management semantics (compatible with SIP) to be used for a wide variety of application types (e.g., voice chat, video chat, file transfer) and with a wide variety of transport methods (e.g., TCP, UDP, ICE, application-specific transports).
Il s’agit de la base du ‘protocole Jingle’, permettant un certain nombre d’applications, comme la voix, la vidéo et le transfert de fichiers pour ne citer que les plus évidentes. Pour bien repréciser le contexte, Jingle n’est qu’un protocole d’initialisation de sessions multimédia, qui n’a pas pour but de réinventer la roue (ou l’eau chaude, c’est selon), mais d’utiliser les avantages de XMPP pour apporter le multimédia sur XMPP et/ou d’amener les utilisateurs de XMPP vers le monde SIP (et/ou l’inverse). - XEP-0167: Jingle RTP Sessions
This specification defines a Jingle application type for negotiating one or more sessions that use the Real-time Transport Protocol (RTP) to exchange media such as voice or video. The application type includes a straightforward mapping to Session Description Protocol (SDP) for interworking with SIP media endpoints.
Là, on a affaire à RTP et UDP, je ne vais pas entrer dans le détail, c’est du protocole réseau de bas niveau. - XEP-0176: Jingle ICE-UDP Transport Method
This specification defines a Jingle transport method that results in sending media data using raw datagram associations via the User Datagram Protocol (UDP). This transport method is negotiated via the Interactive Connectivity Establishment (ICE) methodology, which provides robust NAT traversal for media traffic.
Ici, c’est pour passer les NAT à peu près proprement, de manière standard ouvert. ICE est utilisé également par SIP. - XEP-0177: Jingle Raw UDP Transport Method
This specification defines a Jingle transport method that results in sending media data using raw datagram associations via the User Datagram Protocol (UDP). This simple transport method does not provide NAT traversal, and the ICE-UDP transport method should be used if NAT traversal is required.
On est ici dans un contexte sans NAT, donc beaucoup plus facile, disons plutôt moins difficile.
Il existe également d’autres spécifications encore expérimentales, mais avancées, très probablement Draft après un certain temps d’implémentation et feedback :
- XEP-0181: Jingle DTMF
This specification defines an XML format for encapsulating Dual Tone Multi-Frequency (DTMF) events in informational messages sent within the context of Jingle audio sessions, e.g. to be used in the context of Interactive Voice Response (IVR) systems. Note well that this format is not to be used in the context of RTP sessions, where native RTP methods are to be used instead.
Pour passer les sons d’un clavier numérique vers les serveurs interactifs (votre répondeur par exemple). - XEP-0234: Jingle File Transfer
This specification defines a Jingle application type for transferring files between two entities. The protocol provides a modular framework that enables the exchange of information about the file to be transferred as well as the negotiation of parameters such as the transport to be used.
Avec cette méthode de transfert de fichiers, on espère se passer des (futures) anciennes méthodes, qui posent toutes un problème dans un contexte particulier. Je vous laisse lire l’intro de cette spec pour mieux comprendre.
Nous avons également d’autres spécifications, encore peu avancées, on ne peut pas encore dire à ce stade ce qu’elles vont devenir à terme (annulées, remplacées par d’autres, etc.) :
- XEP-0247: Jingle XML Streams
This specification defines a Jingle application type for establishing direct or mediated XML streams between two entities over any streaming transport. This technology thus enables two entities to establish a trusted connection for end-to-end encryption or for bypassing server limits on large volumes of XMPP traffic.
Utile dans de nombreux contexte : se passer du ou des deux serveurs interdmédiaire, une fois la session initialisée. - XEP-0251: Jingle Session Transfer
This specification defines an extension to XMPP Jingle for transferring a session (such as a voice call) from one person to another.
Pour ‘basculer’ un appel. - XEP-0260: Jingle SOCKS5 Bytestreams Transport Method
This specification defines a Jingle transport method that results in sending data via the SOCKS5 Bytestreams (S5B) protocol defined in XEP-0065. Essentially this transport method reuses XEP-0065 semantics for sending the data and defines native Jingle methods for starting and ending an S5B session.
Pour utiliser les proxies de type SOCKS5. - XEP-0261: Jingle In-Band Bytestreams Transport
This specification defines a Jingle transport method that results in sending data via the In-Band Bytestreams (IBB) protocol defined in XEP-0047. Essentially this transport method reuses XEP-0047 semantics for sending the data and defines native Jingle methods for starting and ending an IBB session.
Pour envoyer tout le flux multimédia dans une session XMPP, peu recommandable afin d’éviter une surcharge du ou des deux serveurs intermédiaires. - XEP-0262: Use of ZRTP in Jingle RTP Sessions
This specification defines a Jingle application type for negotiating one or more sessions that use the Real-time Transport Protocol (RTP) to exchange media such as voice or video. The application type includes a straightforward mapping to Session Description Protocol (SDP) for interworking with SIP media endpoints.
Pour chiffrer la VoIP. - XEP-0266: Codecs for Jingle RTP Sessions (de type ‘Informational‘)
This document describes implementation considerations related to voice and video codecs for use in Jingle RTP sessions.
J’y reviens en-dessous. - XEP-0269: Jingle Early Media
This specification defines a Jingle application type for negotiating one or more sessions that use the Real-time Transport Protocol (RTP) to exchange media such as voice or video. The application type includes a straightforward mapping to Session Description Protocol (SDP) for interworking with SIP media endpoints.
La XEP-0266: Codecs for Jingle RTP Sessions est très importante puisque les différents implémenteurs pourront utiliser les codecs qui leurs semblent les plus opportuns. C’est très ouvert : les éditeurs proprios pousseront leurs ’solutions’ proprio. Côté audio, c’est Speex et G.711 qui sont poussés, et côté vidéo, c’est Theora, Dirac et H.264. Gageons que les implémentations les plus importantes ou qui auront le plus de succès utiliseront des codecs libres et sans brevets.
Remarquons que SIP est beaucoup mentionné, preuve supplémentaire que XMPP ne réinvente pas SIP, mais cherche l’interopérabilité (j’en remet une couche, désolé).
La publication de ces spécifications n’est pas une fin en soit. C’est juste un passage en version ’stable’, comme un logiciel : ces spécifications contiennent sans aucun doute des bugs mineurs, qui vont être corrigées grâce au feedback des implémenteurs et utilisateurs.
Il s’écoulera encore d’autres années de travail pour que ces spécifications passent dans le girons de l’IETF.
Quoiqu’il en soit, plus rien ne peut retenir les implémenteurs désormais, excepté que le développement d’un logiciel multimédia est bien complexe qu’un client de chat.
Filed under: Jabber et XMPP en français, Planet-Libre, jabber, xmpp | 7 Comments
XMPP: The Definitive Guide
J’ai acheté le bouquin « XMPP: The Definitive Guide » en version PDF, sans DRM, à 31,99 $ (je n’ai pas fait la conversion en euros). Il est également disponible à 39,99 $ en version papier (pré-commande à ce jour), ou bien en version papier + électronique à 51,99 $.
Ce bouquin a été écrit par des pointures du monde XMPP :
- Peter Saint-Andre, directeur exécutif et membre du conseil technique de la XSF et (co-)auteur de nombreuses XEP ;
- Kevin Smith, membre du conseil technique de la XSF et ancien chef du projet Psi (pendant 4 ans et demi) ;
- Remko Tronçon, développeur Psi, contributeur de projets liés à XMPP et auteur de quelques XEP.
Comme d’habitude chez O’Reilly, la couverture affiche un animal qui sort de nulle part, il s’agit là d’un chevrotain (ne m’en demandez pas plus…).

XMPP: The Definitive Guide
Très synthétique et facile à lire (il fait tout de même 310 pages), il y a toujours un peu d’humour au fil de l’eau et un résumé à chaque chapitre. Il touche à tout ou presque, il couvre la plupart des fonctionnalités de Jabber et des XEP d’un point de vue fonctionnel, de la présence et du chat à Jingle, en passant par PubSub, et aussi les formulaires, les commandes, et l’échange de fichiers. Il est très utile aussi bien d’un point de vue d’un utilisateur qui veut en savoir plus (et qui ne lit pas forcément le XML), qu’un développeur pour bien comprendre l’architecture, le fonctionnement de base et les fonctionnalités avancées. Il conviendra même à un prof, chercheur ou manager, ou encore un architecte.
Au chapitre des reproches, je mettrais les copies d’écrans qui sont en noir et blanc et… sous Mac OS X. De même bien qu’il soit bien fournit en exemples de XML, il manque là encore de la colorisation syntaxique pour améliorer la lecture.
Voici le sommaire :
- Preface
- An Overview of XMPP
- Chapter 1Introduction
- Chapter 2Basics of XMPP
- The XMPP Toolkit
- Chapter 3Presence
- Chapter 4Instant Messaging
- Chapter 5Discovering the World
- Chapter 6Data Forms
- Chapter 7Multi-Party Interactions
- Chapter 8Publish/Subscribe
- Chapter 9Jingle: Jabber Does Multimedia
- Chapter 10Sending Binary Data
- Chapter 11Remote Commands
- Chapter 12Connection Methods and Security
- Putting It All Together
- Chapter 13Design Decisions
- Chapter 14Building an XMPP Application
- Appendixes
- A Guide to XMPP Specifications
- Popular Servers, Clients, and Libraries
- Further Practical Considerations
Et ça se termine sur les parties Glossary, Bibliography, Index, About the authors et Colophon. Voici la présentation officielle et le sommaire détaillé.
Je zoomerais rapidement sur le chapitre 14 : « Building an XMPP Application ». En effet, ce chapitre couvre la réalisation d’une application de microblogging, sous le nom de CheshiR, écrite en Python avec foultitudes d’exemples de code. Chaque partie (« sprint ») se découpe en analyse, design et code. Voici le détail des parties :
- The CheshiR XMPP IM Bot
- Configuring the CheshiR XMPP IM Bot
- Scaling the CheshiR XMPP Service Using a Server Component
- Registering with the CheshiR Server Component
- Extending the Server Component with Rosters
- Future Sprints
- A CheshiR Server Module or Dedicated Server?
Au final, je conseille cet achat, non seulement car c’est un bon bouquin clair et suffisament exhausitf, mais aussi car ça vient de la communauté et qu’il faut soutenir ce type d’initiative.
Go XMPP !
Filed under: Jabber et XMPP en français, Planet-Libre, jabber, xmpp | 5 Comments
mv -i sun/xmpp* oracle/xmpp/ ?
Donc Oracle rachète Sun, le gros buzz du jour.
La grosse question étant : que va-t-il advenir des produits opensource respectifs :
- Sun : Java, MySQL, OpenOffice.org, VirtualBox, OpenSolaris, GlassFish, OpenSPARC, NetBeans, etc.
- Oracle : BerkeleyDB, OCFS, InnoDB, etc.
Un grosse question également est : que va-t-il adevnir des produits XMPP ?
- Sun : Sun Java System Instant Messaging
- Oracle : Oracle Beehive et Oracle Messenger
Ces deux produits ne sont que propriétaires et assez peu répandus à ma connaissance.
Vont-ils être libérés ? Fusionnés ?
Filed under: Jabber et XMPP en français, Planet-Libre, jabber, xmpp | 4 Comments
Devinette
Devinette : qu’est-ce qui se pète la gueule à ce point et qui est une bonne nouvelle car ça va nous faciliter la vie à tous ?

devinette
Filed under: Planet-Libre, Vénère | 7 Comments
« Passe-moi un coup de fil », « Envoie-moi un e-mail » ou bien « Cherche/surfe sur le web » sont des expressions courantes de la vie quotidienne d’un utilisateur du téléphone et d’internet d’aujourd’hui. On dit un internaute en bon français moderne. En revanche, on ne dit pas « téléphonaute », on ne dit pas, c’est normal/logique.
En effet, nul doute qu’il y a un seul réseau de téléphonie ouvert, public, unique et fédéré mondialement, qu’il soit filaire ou mobile, avec des opérateurs partout sur le globe. On appelle ça « téléphone ».
Nul doute également que pour les messages et leurs pièces jointes il y a un seul réseau de messagerie ouvert, public, unique et fédéré mondialement, avec des fournisseurs présents sur tous les continents. On appelle ça « e-mail », ou mail (ou encore mèl, mais bon).
Nul doute encore qu’il y a un seul système d’applications et de publication de documents avec liens hypertextes qui soit standard ouvert, public, unique et fédéré sur internet, avec des fournisseurs dans toutes les régions. On appelle ça « World Wide Web », ou web.
Eh bien, sachez le cas échéant qu’il n’y a nul doute dans le domaine de la messagerie instantanée. Il y a un seul standard ouvert, public, unique et fédéré sur internet.
Mais comment l’appelez-vous ?
- Jabber ? Avec diverses prononciations dont « dja-beur» ou le bon vieux franchouillard « jjja-bère » (avec un vrai « j », pas « dj » à la angliche), ou le fameux mix « dja-bère »
- XMPP ? Avec diverses prononciations dont « ix-ème-pépé » ou le tout nouveau « zimpy »
- Chat ? Avec diverses prononciations dont « tchatte» ou « chatte »
- Tout simplement « messagerie instantanée » ou sa version anglophne « instant messaging » ?
- IM ? Avec diverses prononciations dont« i-ème » ou « aille-ème »
- MI ? Là, une seul prononciation, « ème-i »
- IMP ? Pour « Instant Messaging and Presence », avec « i-ème-pé » ou « aille-ème-pi »
- D’autres usages ?
Il est clair que l’usage de la messagerie instantanée est en forte croissance, et s’installe de manière durable, c’est donc en train d’entrer dans le langage courant, mais par quelle porte ?
Filed under: Jabber et XMPP en français, Planet-Libre, jabber, xmpp | 8 Comments
De retour des 10 ans de Jabber
La journée de conférences, marquant l’anniversaire des 10 ans de Jabber, au Carrefour Numérique de la Cité des Sciences, s’est bien déroulée. Nous avons eu quelque défections de dernière minute, c’est dommage, mais certaines pour d’heureux événement.
Les conférences se sont succédées toute la journée :
- Jehan Pagès, l’organisateur avec Parinux de l’événement, nous a introduit Jabber/XMPP ;
- Je lui ai succédé sur le sujet « Historique, situation et perspectives », que j’ai posté sur SlideShare, le fichier OpenDocuemtn est disponible en téléchargement (ou visionnable au format Flash) ;
- Laurent Lathieyre d’Ubikod a présenté l’application mobile BuddyMob, qui intègre du chat, du microblogging et de la géolocalisation, le tout sur Android, avec la bibliothèque libre Smack et le serveur XMPP libre ejabberd côté serveur ;
- Jan Torben Heuer est venu de Munster pour nous présenter son projet de réseau social respectant la vie privée, basé sur XMPP et OpenPGP, Diki du Pace Project ;
- Kael nous a présenté son (ro)bot, présentant la météo via les avatar de la carte de visite, de la recherche et programmation d’enregistrement d’émissions de télévision via Freebox et VLC, via découverte de services et commandes ad-hoc, énorme !
Il y avait beaucoup d’auditeurs techniques et libristes dans la salle, tout le monde a été très attentif et motivé, de bonne question posées aux conférenciers. Merci beaucoup Jehan !
À refaire !
Filed under: Jabber et XMPP en français, jabber, xmpp | 2 Comments
Black-out !
HADOPI, également connue sous le nom de « Création et Internet » ou « riposte graduée », est encore une loi « absurde, inapplicable et dangereuse qui met en péril le web français, l’innovation, et les libertés fondamentales ».
C’est la Quadrature du Net qui alerte le grand public, les médias et les élus.
Il s’agit d’une loi complètement débile mettant en œuvre une surveillance et un contrôle d’accès à l’internet par des entreprises privées pour des entreprises privées, avec présomption de culpabilité par défaut, ce qui est fondamentalement contraire aux principes mêmes de notre république démocratique (la France, pour les résidents et ressortissants).
Cette loi est voulue par Nicolas Sarkozy (actuel président de la république française) et défendue par Christine Albanel (actuelle ministre de la Culture et de la Communication).
Alertez votre député maintenant !
Ce bandeau est ici en guise de soutien. Relayez ces infos.
Filed under: Vénère | 1 Comment
On fête les dix ans de Jabber/XMPP, ce samedi, à Paris, on en parle sur L’Agenda du Libre (« Anniversaire décénnal du protocole XMPP ») et sur LinuxFr .org (« Anniversaire décennal de Jabber/XMPP le 28 février »).
En effet, le 4 janvier 1999, Jeremie Miller, l’inventeur de Jabber avait écrit ceci sur Slashdot :
“Jabber is a new project I recently started to create a complete open-source platform for Instant Messaging with transparent communication to other IM systems(ICQ, AIM, etc). Most of the initial design and protocol work is done, as well as a working server and a few test clients.”
C’est au Carrefour Numérique de la Cité des Science que l’on se retrouvera, de 10h à 18h, ce samedi 28 février. La journée permettra de se familisariser avec XMPP, à travers des conférences et des ateliers. L’April, FSF France et Parinux sont les associations organisatrices. J’y présenterai une conférence sur l’historique et l’état des lieux de la messagerie instantanée.
Venez nombreux !
Filed under: Jabber et XMPP en français, jabber, xmpp | Closed
Le mercredi 21 janvier 2009, Simon Chemouil et Geoffroy Youri présenteront XMPP-Jabber lors de la rencontre bi-mensuelle de Toulibre.
Ça se passera au Centre Culturel Bellegarde, 17 rue Bellegarde à Toulouse, de 19h à 23h.
« La présentation sera filmée et les vidéos seront par la suite mises à disposition sur le site de Toulibre. »
Bravo, belle initiative !
Filed under: Jabber et XMPP en français, Planet-Libre, jabber, xmpp | Closed
Entrées récentes
- 11 ans : quizz LinuxFr.org
- Les spécifications Jingle sont publiées
- XMPP: The Definitive Guide
- mv -i sun/xmpp* oracle/xmpp/ ?
- Devinette
- Zimpy ? XMPP ? Jabber ? IM ? MI ?
- De retour des 10 ans de Jabber
- Black-out !
- On souffle les 10 ans de Jabber ce samedi 28 février à Paris
- XMPP-Jabber à Toulouse le 21 janvier
- Jabber au Cr@ns
Catégories
- jabber (53)
- Jabber and XMPP in english (12)
- Jabber et XMPP en français (120)
- Planet-Libre (10)
- Vénère (11)
- xmpp (53)
Archives
- juin 2009
- avril 2009
- mars 2009
- février 2009
- janvier 2009
- décembre 2008
- novembre 2008
- octobre 2008
- septembre 2008
- juillet 2008
- avril 2008
- mars 2008
- février 2008
- octobre 2007
- août 2007
- juillet 2007
- juin 2007
- mai 2007
- mars 2007
- janvier 2007
- décembre 2006
- novembre 2006
- août 2006
- juillet 2006
- juin 2006
- mai 2006





