Tour d'horizon de XMPP 12
[Reporter: Nicolas Vérité, assisté par Peter Saint-Andre]
Ce tour d'horizon est la troisième « presque mensuelle » revue de la sphère XMPP cet été. Il montre encore une fois énormément d'activité comme vous pouvez le constater à travers dces pointeurs vers des articles, logiciels, services et bien sûr spécifications, le coeur de notre activité ici à la XSF.
This Roundup is the third “almost-monthly” review of the XMPP-sphere this summer. It shows again a lot of activity as you can see through these pointers to articles, software, services, and of course specifications, the core of our work here at the XSF.
Articles
XMPP web project walk-through Boris Okner describes a weather web application using ejabberd and strophe over BOSH. You can play with the demo (username: shared, password: shared).
Scalable XMPP bots with erlang and exmpp ProcessOne has published a series of articles on how to build bots on top of the exmpp library (in Erlang). These come in three parts: part I, part II and part III.
Meet the Extensible Messaging and Presence Protocol (XMPP) IBM developerWorks has published an article by Tim Jones introducing XMPP as a multipurpose instant messaging architecture that is not only suited for chat applications. There is an example in Ruby using the xmpp4r library.
XMPP powering the “internet of things”? A few “internet of things” (or “IoT”) projects are using XMPP as a communication layer: this could well show an area of development for XMPP.
New and updated software
Psi 0.13 The verson 0.13 of Psi, the well-known free software Jabber client, has been released by Justin Karneges on the 28th of July. Sorry for that miss on the previous Roundup. The main new feature a top-requested one: Jingle voice! A few days later, Justin announced the 0.14 plan, you can read the interesting follow-up.
Pidgin 2.6 In yet another big advance for Jingle, the Pidgin team has released the version 2.6 of this multi-protocol IM client, with Jingle voice and video for Linux and Mac OS X. Support for Jingle file transfer is also on the way.
Silent Diving Seagulls Silent Diving Seagulls is a multi-platform Firefox extension for desktop notifications. It is based on xmpp4moz. This article also points to Yapper, an XMPP interface for the Growl notifier (for Mac OS X).
WideNoise WideNoise is an iPhone application using XMPP and OpenSpime to track noise: it will display decibel levels in maps.
ejabberd 2.1.0 beta ejabberd has been released in version 2.1 beta1, beta 2, and rc1 for testing purposes, providing a lot of PubSub improvements, and an experimental STUN server for NAT traversal.
eewdata eewdata is a simple Perl module for the Japanese Earthquake Early Warning, that has an XMPP example for real-time notification.
Sixties Clochix has extended the opensource library XMPPHP, which now talks PubSub (plus Jabber Search and Ad-Hoc Commands), under the GPL license of course, and the name Sixties (related to XEP-0060). You can read this in a mention on this blog post in French.
XMPP on Google App Engine Google has released the version 1.2.5 of their Java and Python SDK for the App Engine (or GAE), including in fact most current XMPP features.
Orbited Orbited is a Python library published under the MIT license, for real-time communication in the browser, including support for XMPP, IRC, and STOMP (ActiveMQ, RabbitMQ).
SocialVPN SocialVPN is a free and open-source P2P Social Virtual Private Network (VPN). It integrates social networking and peer-to-peer networking to create a VPN. SocialVPN has XMPP as a backend.
Tinder 1.1.0 Guus der Kinderen has announced the version 1.1.0 of the Tinder XMPP library fixing concurrency (threading) issues and other bugs.
ejabberd migration kit ejabberd 2.1.0 supports XEP-0227, a.k.a. PIEFXIS for Portable Import/Export Format for XMPP-IM Servers.
New and updated services
Data synchro from Google Google has announced that data synchronization from the browser is done through XMPP in their Chrome browser. Opera Link and Mozilla Weave provide the same feature, but do not rely on XMPP (yet!).
Switchub Switchub is a service for push notifications, using web hooks and XMPP. For now it is only available on invite.
Dispatch.io Dispatch.io is a notification service for Growl using XMPP.
Shion Audacious Software has released Shion, a home automation software for Mac OS X, that lets you remotely control and monitor your devices and appliances.
JabberHooks JabberHooks lets you receive XMPP messages via HTTP POST (aka webhooks).
PubSubHubbub to XMPP gateway Matt Mastracci has released a PubSubHubbub to XMPP gateway on appspot.
Mumbai Blood Bank Locator Agent The Blood Bank Locator bot is a small XMPP application written for and running on the Google App Engine, that enables you to locate blood banks in different areas in Mumbai.
New and updated specs
XMPP Relay Nodes XMPP relay nodes are a technology that grew out of discussions at the XMPP Summit in Brussels earlier this year. They are much like supernodes in Skype, but slightly better: any XMPP client can become a relay peer for the rest of a P2P Jingle network, typically on an opt-in basis (e.g., anyone in your buddy list can borrow some of your bandwidth). This has not been proposed as an official XSF “XEP” yet.
Linked Process Linked Process is a specification and an implementation aiming at machine communication. It will probably be proposed as an official XEP soon.
XMPP for cloud computing in bioinformatics XMPP for cloud computing in bioinformatics.
The XMPP community has also worked hard on the following specs recently:
- Over at the IETF’s XMPP Working Group, version 02 of draft-ietf-xmpp-3920bis has been released, including an updated description of the ACTive architecture used in XMPP.
- The XMPP Council has advanced both XEP-0202: Entity Time and XEP-0203 (Delayed Delivery) from Draft to Final in the XSF’s standards process.
- There are Last Calls in progress on XEP-0227: Portable Import/Export Format for XMPP-IM Servers, XEP-0244: IO Data, and XEP-0270: XMPP Compliance Suites 2010.
- The XMPP Council has approved some small “maintenance” fixes to XEP-0080: User Location, XEP-0256: Last Activity in Presence, XEP-0055: Jabber Search, XEP-0077: In-Band Registration (with some fixes to XEP-0085: Chat State Notifications and XEP-0136: Message Archiving on the way).
- Three new Experimental specifications have been published: XEP-0272: Multiparty Jingle (Muji), XEP-0273 Stanza Interception and Filtering Technology (SIFT), and XEP-0274: Design Considerations for Digital Signatures in XMPP.
Conclusion
It has been a busy summer for XMPP:
- With so much happening, it becomes difficult to keep track of XMPP-related news! If you would like to help, please ping me at nyco@jabber.fr or join the jabber@conference.jabber.org chatroom (you can even join it via the web here).
- XMPP is becoming more and more ubiquitous. It seems that developers everywhere appreciate many of its features and qualities, like openness, presence and IM, federation, push, request-response messaging, and so on…