ralphm's blog

Monday, 9 February 2004

XMPP IM moves to Proposed Standard

Completing the Dynamic Duo™

Today, the IESG announced approved XMPP IM Internet Draft as IETF Proposed Standard. This follows the recent approval of XMPP Core. Together the two documents form the basis of Jabber, and this approval is a major milestone for the Jabber community, but also for the general IM world. XMPP is the first IETF approved standard for Instant Messaging.

So what is the difference between these two documents? Well, Jabber is much more than IM. It is a generic XML routing platform. The XMPP working group has tried to capture this thought by separating the basis of Jabber in two parts.

XMPP Core defines how to communicate snippets of information using a pair of streaming XML documents. It defines how to do secure communication using TLS and SASL, describes the three basis containers of information (<message>, <iq> and <presence>), and how to extend XMPP Core to carry any kind of data, to support a wide range of applications.

XMPP IM on the other hand, defines basic Instant Messaging and Presence functionality based on XMPP Core. It gives more semantics to the different containers and describes interactions with a server to keep a roster of contacts, and selectively block communications to or from another entity.

On top of these two documents, more enhanced protocols can be build. The Jabber Software Foundation has a system for such enhancements called Jabber Enhancement Proposals, and examples of these are JEP-0045: Multi-User Chat and JEP-0060: Publish/Subscribe.

Again, I want to congratulate anyone involved with getting these documents where they are now! The wait is for the RFC numbers to match.

Jabber rocks, approvedly!

Jabber @ FOSDEM

Educating from within

FOSDEM, the Free and Open Software Developers Europe Meeting, is an annual conference in Brussels. It is really a gathering of people interested in the development of free and open software, with very good talks, and a nice informal atmosphere. This year, the conference takes place on 21 and 22 february.

I've been to the last two editions, and really enjoyed it, but only as a visitor. So, this year I am taking a different approach. I took up the task of promoting Jabber at this year's edition through various means.

Jabber server

First of all, on the 2003 edition, I talked to raphinou, the leading man of the FOSDEM team, to do something with Jabber on this years edition. He agreed that this would be nice. The result so far is the FOSDEM Jabber server: jabber.fosdem.org.

Everyone registered on the FOSDEM website automatically has a Jabber account. With this, or any other Jabber account from elsewhere, you can access the group chat rooms and meet other FOSDEM participants. There is general chat at hallway@conference.jabber.fosdem.org for both before and during the event, and all conversations in the chatrooms are logged for later reference.

Besides the chat room logs, the website has a Getting Started page with a list of Jabber clients, and some contact information. The pages are written in DocBook website and are processed using XSLT into XHTML.

Live reporting

During the two days of the conference, there will be a number of chat rooms, corresponding to the physical rooms where the talks will be held. Using the WiFi access points, this enables people in the same talk to exchange ideas about the talk at hand. Also, it would be great to get live reports from the talks in the chat room, so people that are in another talk, or not even at FOSDEM, can still attend the talk at least virtually.

Other goodies

Time permitting, I will be extending the services with stuff I've been working on the last couple of years. I want to make a local version of the Jabber World Map, so people can publish their location and find others on the conference grounds. Also, I want to make it easy for the FOSDEM team to do announcements using a variant of Mimír.

Furthermore, dj, who did a Jabber talk two years ago at FOSDEM and is attending again this year, suggested to setup something like the Chump. Originally, this is an IRC bot that allows the occupants of a chat room to maintain a simple blog by interacting with the bot. Looking at it, it looks really interesting, and I've contacted Edd Dumbill about the existence of a Jabber variant. It seems the Chump team is working on a version of Chump rewritten in the Twisted Framework. Using the Twisted Jabber stuff from offline offlinedizzyd, it should be easy to make a Jabber Chump bot.

JSF Stand

Besides the FOSDEM Jabber server and its facilities, I'm also busy setting up a Jabber Software Foundation stand on FOSDEM. With a fancy table skirt featuring the JSF logo, and some informational handouts, I hope to draw the attention of even more developers. Seeing the recent approvement by the IETF for XMPP Core, Jabber will get more attention in the market place, and where better to start educating than the people having to build stuff with Jabber.

I am particularly interested in the integration of Jabber into the desktop. For example micke is working on connecting GNOME's DBUS to Jabber. I will definately be talking to micke on FOSDEM. I owe him a beer, too.

Finally, Ulrich will be giving a lightning talk on merging media streaming and Jabber in the Jabber on Helix project.