XMPP Roundup 10

June 11th, 2009

[Reporters: Nicolas Vérité and Peter Saint-Andre]

For those who love round numbers, welcome to the tenth edition of the XMPP Roundup, our semi-regular review of news and events in the XMPP community. Since our last roundup on May 11, here’s what’s been happening…

Software

Google Wave

Google has announced the existence of Google Wave, an early-stage technology for real-time interaction that will incorporate aspects of IM, email, wikis, and other collaboration techniques. The technology for federating different Wave instances is pure XMPP, so the developer community is watching this project quite closely.

Minbif

Minbif is an IRC gateway to IM networks which lets the user connect to Jabber (and many proprietary legacy IM systems), through IRC command lines. It is release under the GPLv2 license, in version 1.0alpha as the time of this writing.

Utterance

Nolan Darilek has announced the development of Utterance, an XMPP microblog transport, written in Ruby under a BSD license.

modular_muc

Eric Cestari wrote a Multi-User Chat (MUC) module in ejabberd that is as modular as the PubSub module.

exmpp

ProcessOne has launched its exmpp Erlang XMPP library under the Erlang Public License (EPL), in its newly opened Labs.

Hemlock

Hemlock is an opensource soon-to-be-released Flash XMPP framework.

Services

Ask me

http://askme.im/ has a set of XMPP bots that cover quotes, jokes, movie reviews, stock prices and daliy horoscopes, and much more…

Jabbim’s URL shorting service

Jabbim community has released a new URL shortening service at xmpp:shorty@jabbim.com: just add it to your roster and start chatting.

Community

Members of the XMPP community have started work on two new initiatives: an open framework for XMPP protocol testing and a website for information about the XMPP network. To participate, join the interop@xmpp.org discussion list or the operators@xmpp.org discussion list, respectively. Expect to see more work on these projects in the coming months!

Protocols

The big news here is that the core Jingle specifications have finally advanced from Experimental to Draft status (version 1.0)! We’ll post more about this in the near future. The specs that have moved forward are:

Another important specification to advance from Experimental to Draft is Roster Versioning. This technology will make it much more efficient for IM clients to log into XMPP servers, since the server can inform the client if the user’s contact list has not changed since the client last logged in (or send a small diff if it has changed). This is especially important in mobile applications such as cell phones and PDAs. The roster versioning technology is one of the mobile optimizations we are working on, and will be incorporated into the revisions to RFC 3921 within the IETF’s newly re-formed XMPP Working Group.

In addition, the XMPP Council has been working to advance more XEPs from Draft to Final. The latest specification to be so honored are:

Finally, the Council has also been performing some “spring cleaning” by officially obsoleting XEP-0003: Proxy Accept Socket Service, XEP-0011: Jabber Browsing, XEP-0022: Message Events, XEP-0023: Message Expiration, XEP-0025: Jabber HTTP Polling, XEP-0090: Legacy Entity Time, and XEP-0091: Legacy Delayed Delivery.

Conclusion

Again, 2009 seems to be a very active year for XMPP technologies.

XMPP Roundup #9

May 11th, 2009

[Reporters: Nicolas Vérité and Peter Saint-Andre]

Welcome to the 9th edition of the XMPP Roundup, the periodic stream of news and events in the XMPP universe.

New and updated software

Wokkel 0.6.0

Ralph Meijer has announced Wokkel 0.6.0, a set of XMPP tools on top of the Python Twisted framework.

PySoy game engine

PySoy is a 3d game engine including networking support being based around XMPP for player chat and server discovering, Jingle ICE-UDP for network games. It is released under the AGPLv3 license.

XMPPLogger

XMPPLogger is a small Perl utility written under the BSD license that listens on a FIFO and sends every line to the given XMPP/Jabber account(s).

Mojo Messaging Service: PubSub by Palm

In a article titled “Palm to Introduce Push Services“, pre central notes:

When the Mojo SDK is broadly released later this year, it will include a developer-facing offering called the Mojo Messaging Service, an XMPP publish/subscribe service. The Mojo Messaging Service is an elegant, standards-based way to exchange information over the Internet. When new information is available, it is “published” to the cloud and all interested parties who are subscribers are notified that new information is available. This will allow developers to push live content to their applications or services. The Mojo Messaging Service initially will have a limited feature set and service level that will evolve over time.

xBookmarks addon for Firefox

xBookmarks stands for “XMPP bookmarks”, it is a Firefox extension that implements XEP-0048 so that a user having an XMPP account can store all of his bookmarks in one place and can retrieve them from anywhere. xBookmarks needs xmpp4moz.

Babylon

Babylon is a Ruby framework for XMPP applications, written under the MIT license and currently available in a “pre-0.1″ version.

Services

WordPress.com’s firehose

WordPress.com, a hosting service for WordPress blogs (this blog is using WordPress), has launched Firehose, a private, commercial stream service for blog posts and comments:

The WordPress.com firehose is designed for partners like search engines and market intelligence providers who would like to ingest a real-time stream of new WordPress.com posts and comments the second they get published. The firehose is XMPP based and can be accessed s2s (server-to-server) or c2s (client-to-server).

File transfer proxy at jabber.org

The jabber.org XMPP service has gained a SOCKS5 file transfer proxy, it is located at proxy.eu.jabber.org.

WeFeelFine

wefeelfine@jabber.spektral.at is a Jabber bot that seeks the feeling expressed in blogs worldwide. More information on the blog post.

Articles

What Can You Do with XMPP?

Kathryn Barrett from O’Reilly, has written a lengthy article on the book XTDG, aka XMPP: The Definitive Guide by Peter Saint-Andre, Kevin Smith, and Remko Tronçon, detailing a large range of the features and possible applications of XMPP.

Specifications

Since the last XMPP Roundup, several specifications published by the XMPP Standards Foundation have evolved:

A final word

XMPP’s ubiquity shows even more after months pass.

Australian XMPP Meetups

May 3rd, 2009

David Banes is hoping to get some XMPP Meetups going in Australia. Looking at Sydney to start with and Melbourne next.

Register at Meetup.com if you’re interested.

http://www.meetup.com/Sydney-XMPP-Meetup/

XMPP.org and Jabber.org: Rough Consensus and Running Code

April 30th, 2009

It’s well-known that XMPP technologies emerged from the open-source server project first released by Jeremie Miller in 1999, as well as the combined software/operator community that grew up around the server.

In the early days, “Jabber” meant many things: Jer’s server, the protocol used between clients and servers, the server network, the community in general, even a company called Jabber.com (then Jabber Inc., purchased by Cisco Systems in late 2008). Over time we have worked to disambiguate the terms. Thus Jer’s server was renamed jabberd and the protocol was renamed XMPP.

However, the relationship between the jabber.org and xmpp.org domains has remained a bit nebulous. Several years ago, the Board of Directors of the XMPP Standards Foundation clarified the matter by stating that the jabber.org domain was a community effort hosted on XSF machines but operationally independent of the XSF. That clarification was never formally announced, but the decision was recently re-affirmed by the current Board so now seems like an appropriate time to make the distinction more public.

The basic division of responsibilities is this: the XSF focuses on the “rough consensus” part of “rough consensus and running code” by defining the core protocols used by the entire XMPP community, as published at the xmpp.org website; by contrast, the Jabber.org team focuses on the “running code” part by offering a popular, XMPP-based, real-time communications service. This focus was incorporated into the recent redesign of the jabber.org website (which now is dedicated to information about the jabber.org IM service), and has long been evident at the xmpp.org website as well.

Now you know!

–stpeter

GSoC ‘09, with XMPP

April 29th, 2009

The XMPP Standards Foundation has helped support a number of open-source projects through Google’s Summer of Code program over the years. Although the XSF is not participating in the Google Summer of Code this year, a number of XMPP-related projects have been accepted by other mentoring organizations…

On the JabberFr forums, “Misc” posted the full list:

At the XSF, we’re tremendously excited to see so much implementation of cutting edge technologies in so many widespread projects. It’s a testement to the innovative nature of the XMPP community, and we’re looking forward to seeing - and using - the results.

Article by Misc, translated by Nicolas Vérité, edited by Dave Cridland.

XMPP Summit #7

April 28th, 2009

Mark your calendars! Thanks to the generosity of O’Reilly, the seventh XMPP Summit will be held at the premises of OSCON 2009 in San Jose, California, on July 20-21, 2009. Details to follow.

XMPP Roundup #8

April 21st, 2009

[Reporters: Nicolas Vérité and Peter Saint-Andre]

Welcome the 8th wonder^Wroundup of the XMPP world.

Contributions are welcome for next edition! Stop in the jabber@conference.jabber.org chatroom if you have suggestions (you can even join via web chat here).

Articles, Events and Talks

“Les Jeudis du Libre” in Lyon, France

Grégoire Ménuel, aka Omega, XSF member, has presented an introduction to XMPP at the event “Les Jeudis du Libre” (”the thursdays of free software”) in Lyon (France). It took place on the 5th of february, for the french LUG ALDIL (Association Lyonnaise pour le Développement de l’Informatique Libre). His slides are available in PDF format (720 Ko, 24 pages).

XMPP and interoperability

Nicolas Vérité aka Nÿco, XSF member, gave a talk on XMPP and interoperability at Solutions Linux 2009 event, the slides are available on SlideShare.

New Software and Services

Identichat: a personal MUC for microblogging

Identichat is a Jabber/XMPP MUC interface to Identi.ca/Laconica microblogging platform. Jean-Marc Liotier has blogged an article about it.

MatriX

MatriX is a proprietary XMPP SDK written in C# by AG Software for the .NET/Mono platforms. Demos require Silverlight 2.0.

Galaxium multiprotocol IM client

Galaxium Messenger is a GNOME multiprotocol instant messaging application for XMPP and IRC plus proprietary protocols. It is released under the GPLv2 license, and is written in C# for .Net/Mono.

Switchvox’s SMB 4.0 adds unified presence with XMPP

VoIPPlanet reports that Switchvox has released SMB 4.0, its unifed communications platform. It features “unified presence”, which is based on XMPP (see Switchvox Manual).

PEtALS ESB has XMPP

PEtALS, the opensource ESB from OW2, has an XMPP Binding Component, supporting sending and receiving messages, and sending files.

Swift

Swift is a future XMPP opensource client, made by Remko Tronçon and Kevin Smith, with a Qt-based GUI, for Mac OS X, Linux and Windows.

Afflux web client

Afflux is a web-based XMPP client made by François de Metz and Pierrick Vignand, released under the GPLv3 license.

Drop.io adds XMPP

The web-based file swapping service drop.io has added MUC chatroom features for each “drop”. Jack Moffitt blogged about it.

Neuros OSD embeds XMPP

Neuros Technology’s OSD product (home video device) has an “unified client gateway to the XMPP network”.

Synapse for Linux

Synapse Instant Messenger is an attractive, featureful XMPP client by Eric Butler. It is still alpha software, written in C# for Mono for Linux, and released under the GPLv3 license.

UDDI over IO-DATA (over XMPP)

IO-DATA is a protocol extension on top of the XMPP that enables machine-to-machine communication. UDDI OASIS Standard (Universal Description, Discovery and Integration) defines a universal method for enterprises to dynamically discover and invoke Web services. The Taverna project has implemented XMPP-based web/cloud services using these technologies.

More web services with IO-DATA

Developer Tuomas Koski has been experimenting with more uses of IO-DATA for web services at his site lobstermonster.org. The folks on the WS-XMPP discussion list were quite impressed with some of his applications, described here and here.

Personalised Track Notifications over XMPP

BBC Radio Labs has released the bot xmpp:radio1@hug.hellomatty.com, which will ping a user when one of the BBC music stations is playing a tune by an artist the user likes. The user simply has to send the message lastfm lastfmusername.

Jabiru: XMPP client for Android

Jabiru is free jabber client for Google Android platform, released in version 1.0 in March, and constantly updated since.

Concordance: Python 3 framework

Concordance is an XMPP service framework for Python 3.0 (still alpha but under heavy development).

TOXTOX

TOXTOX is an innovative web browser for your television, with built-in XMPP support for “social browsing”.

Jabbear

Jabbear is a new, user-friendly IM client based on XMPP.

Present.ly and XMPP

The present.ly microblogging service makes heavy use of XMPP in its backend architecture.

MU-Conference 0.8

Grégoire Ménuel aka omega, has released version 0.8 of MU-Conference the free software component for Multi-User Chat.

Business Chat with TioLive

The new Business Chat service from TioLive is all based on XMPP (using the ejabberd server).

Yambi

A new XMPP/Jingle client is available from Yambi.

XMPP gateway in MS LCS

Alfonso Castro, director of interoperability strategy at Microsoft, announced at Solutions Linux 2009 that Live Communication Server, Microsoft’s presence and instant messaging product, will have an XMPP gateway in the future.

Live Baseball Chat

Fans of both XMPP and American baseball were happy to learn that livebaseballchat.com is a new XMPP-based service for real-time chat about baseball games as they happen.

Bots to the rescue!

Internet Relay Chat “bots” (which provide helpful services in IRC channels) are starting to migrate over to XMPP multi-user chat (MUC) rooms. A good example is Gozerbot.

Ohloh goes live

Journal entries from the Ohloh project management service can be automatically shared over XMPP.

Apache Vysper

Some developers associated with the Apache community have started work on Vysper, which aims to be a complete XMPP server implementation.

Orkut got XMPP

The Orkut social networking service recently added XMPP support.

Specifications

The XMPP Standards Foundation has been busy finalizing a number of items on its roadmap. Here is a brief summary:

The core specifications underlying the XMPP Jingle technology are very close to being done, and are currently in “Last Call” within the XSF’s standards process. The specifications in question are Jingle, Jingle RTP Sessions, Jingle ICE-UDP Transport Method, and Jingle Raw UDP Transport Method. Once these specifications advance to Draft, expect to see more Jingle implementations as well as further progress on other Jingle-related technologies (e.g., file transfer).

Another area of focus right now is improved reliability and traffic optimization for mobile applications of XMPP. There are two technologies being developed to address these issues: stream management (which provides acks and reliable delivery of XMPP stanzas) and roster versioning (which removes the need to download the complete XMPP roster each time a client logs in). The XMPP developer community appears to have consensus on these improvements, so look for them to be implemented and deployed in the relatively near future.

In addition, members of the XMPP developer community held a successful “Birds of a Feather” session at the most recent meeting of the Internet Engineering Task Force as a means of jump-starting work to finalize the improvements to the XMPP RFCs, which define the very core of XMPP. If an XMPP Working Group is approved, it will also work on some security enhancements to XMPP as well as adjustments to server-to-server communication for increased scalability. We will be reporting on this work more fully in the coming months.

Conclusion

2009 continues to be a very busy year for XMPP development, implementation, and deployment. So busy that it is difficult to find people who can report on everything that is happening! However, we will endeavor to publish “XMPP Roundup #9″ before too much more time goes by.

Information Flow in XMPP Clients @ FOSDEM 09

April 21st, 2009

 

Those who attended FOSDEM would have seen Dave Cridland typing furiously during the day’s other XMPP talks when everyone else was paying attention to the speakers. Some might have assumed that this was because Dave hadn’t written his presentation until the day he was due to give it. Dave assures me however that he was ‘rewriting’ the presentation to take account of the lack of internet connectivity which crippled his plans for application demos.

 

"Rewriting"

"Rewriting"

Dave’s Presentation is available here in PDF format. The PDF is in two parts, Pages 1-19 are the slides themselves but as these make little sense without the accompanying talk, pages 20-38 contain the slides and Dave’s notes on his own talk.

 

Information Flow in XMPP Clients

Information Flow in XMPP Clients

Large Scale XMPP Deployments @ FOSDEM 09

April 17th, 2009

In his talk at FOSDEM this year Florian Jensen, CTO and co-founder of Flosoft, talked about the challenges involved in setting up and administering a large scale XMPP deployment. Forian’s slides are available in PDF format here

 

 

Florian Jensen @ FOSDEM 2009

Florian Jensen @ FOSDEM 2009

Florian’s own entertaining description of his adventures at FOSDEM can be found on his blog.

MXM #2

April 14th, 2009

Reported by Peter Saint-Andre

Back in March, we decided to hold an informal “Monthly XMPP Meeting” among developers in our community. Here is a brief report on the second such meeting, held today (April 14) in the jdev@conference.jabber.org chatroom (the archived discussion log is here).

Here are some of the topics we discussed…

  1. Last Call for XEP-0232: Software Information

    The points raised included:

    The XMPP Council will vote on XEP-0232 at its next meeting (April 22). More feedback is welcome before then on the standards@xmpp.org mailing list.

  2. Last Call for XEP-0237: Roster Versioning

    There is general agreement that this proposed modification to the core XMPP roster management protocol is in good shape. There are still a few edge cases to figure out, especially the empty roster case.

  3. Last Calls for the core Jingle specs

    No real discussion here. Most people seemed to think that these are ready for advancement to Draft in the XSF’s standard process.

  4. Pubsub/PEP implementations

    Consensus that we need more interop testing among implementation such as ejabberd, idavoll, Openfire, and Tigase. Perhaps we will make this a focus at the next XMPP Summit.

  5. XEP-0198: Stream Management

    People like this because it will improve the reliability of communications across the network. Now we need to go forth and implement.

  6. Bidirectional server-to-server connections

    As defined in RFC 3920, XMPP requires two TCP connections for each server-to-server (”s2s”) link. This is sub-optimal. We decided that we need to hold a dedicated discussion session about s2s fixes and improvements (server dialback, multiplexing domains over a given stream, etc.). We agreed to make that the focus of the next Monthly XMPP Meeting, tentatively scheduled for May 5 (add it to your calendar here).

My impression is that it is quite valuable to hold these meetings. I especially found it helpful to have a more general community discussion about XMPP Extension Protocols that are currently in Last Call or under heavy development, because it gives people a chance to talk about them in real time rather than only on the standards@xmpp.org mailing list. So expect us to keep holding this kind of online meeting over the coming months.


Bad Behavior has blocked 1396 access attempts in the last 7 days.