JINGLE

Skype benefits and drawbacks

Some quick notes for an upcoming interview.

Benefits

  • free voice calls between Skype users
  • easy multi-person conferencing (up to 50, depending on bandwidth)
  • multi-platform -- works on Windows, Mac, and Linux
  • first IM client for many users who use voice feature first
  • easy file sharing
  • can have "real" phone numbers in many locations
  • can also use video (various solutions, Windows only for now)
  • Skype on your phone -- Microsoft PocketPC has a Skype client, EQO is new and works on Symbian Series 60 and other Java capable phones (client currently requires Windows on desktop)

Disclaimer: EQO is a local Vancouver company that I've met with, and my company Bryght powers their online community forums. They're also the only mobile app other than ShoZu that made my jaw drop (well, until I found out about the desktop client requirement...boo!).

Drawbacks

  • have to have Skype to communicate (or pay for SkypeOut)
  • built on a closed network, closed protocols (as opposed to open standards like SIP or JINGLE)
  • computers on open networks might be used as a SuperNode, consuming lots of bandwidth
  • Skype (now bought by Ebay) is the only provider of the service

Other forward looking options include click-to-buy or click-to-access solutions -- use your Skype ID and the client to pay for online goods and services, including restricted access to online content -- enter your Skype ID into a web form, get messaged with a special code, complete a transaction, receive an access code -- voila! instant online access. Note: this is of course possible with any IM service or even SMS, and Jabber is doing this today. In many ways, Skype is JAIS -- Just Another Identity Store -- that happens to have VoIP/IM/etc. built on top of it as an application.

2006 will be the year of XMPP

As Ralph Meijer puts it, I am still delinquent in publishing the notes I took after BarCamp Amsterdam:

I suppose the plan for World Domination™ will remain a secret until Boris Mann publishes the result of the notes he took at BarCamp Amsterdam. The event was totally awesome. Thanks all!

I'm *still* carrying the notes around with me -- I had the great good fortune to spend a lot of time with Ralph and Edwinn and suck all the Jabber aka XMPP knowledge I could out of them that I could. I've been following the growth of Jabber/XMPP for years, and here are some of the concepts and happenings which I think are going to blow it wide open in 2006:

  • A major Internet entity commits to natively using the XMPP protocol for a new IM network: Google did this with the release of GoogleTalk; their recent deal with IM makes me think that Google - AOL - Apple iChat interoperability could happen in 2006. At any point, Google could also turn on gateway services to MSN and Yahoo as well.
  • Consumer multi-network IM gets funding: Meebo got WAAAAY too much money. It's a simple, simple service, and there is no unique technology or IP. BUT...why are so many people using it? Because being able to talk to all your friends, no matter which network, is the killer app. And while the Mac has one of the best multi-network clients ever in Adium, on Windows it's just a pain. Oh, and web apps that you can get to from anywhere -- especially for a communication app like IM -- are infinitely better than desktop installs.
  • XMPP isn't just about IM anymore: there have always been really cool examples floating around in the Jabber community (e.g. Google Maps + Jabber, including a *very* cool way to login by having the server message you a login phrase), but the really big news is JINGLE, including the immediate release of an audio transport, with Asterisk integration almost immediately and video probably not far behind.
  • Increasing open source activity: eJabberd is one of the best XMPP servers period. For Java-heads, there is Jive Software's Wildfire, now available under a dual license. Jive Software also released a Flash Jabber API called XIFF, meaning you could build your own version of GTalkr (disclaimer: I know Wes and Dudley, the masterminds behind GTalkr...it's not that easy, and right this minute they're installing killer features to blow your mind :P). Now all we need to make Jabber really accessible for developers is a great server written in one of the "P" languages -- PHP, Python, or Perl. Since the Python Twisted networking stack has Jabber support in the Twisted Words component, and Python makes for great daemon-izable apps, it's probably the best choice.
  • The push for realtime: this goes hand in hand with the last point. The super secret part of XMPP is that it's not about IM at all...it's a generalized XML message passing protocol optimized for real-time. Every ounce of effort to get faster polling of RSS is wasted...it's an asynchronous poll model -- XMPP is the step beyond. I suggested that Plazes throw away it's proprietary protocol and use XMPP directly, preferably using the User Geolocation JEP that has already been defined for exactly such uses. Anything else you want to pass around in real time that can be represented in XML? Like real-time ATOM? Yep, the possibilities are endless.

What are my next steps with XMPP? Well, I'm getting very interested in what a combination of a Jabber server plus identity store might be able to do. Parceltongue is a placeholder for potentially writing such a server in Python (why another server? well, part of that is in the secret notes...let's just say that Jabberd 1.x and Jabber 2.x are both needed if you want to run a complete set of services, plus the aforementioned desire for a "P" language to run a Jabber server with).

Jabber's JINGLE comes out of the closet in time for the holidays

Sorry, couldn't resist the Christmas themed title. What am I talking about? Well, the JINGLE press release* came out yesterday, announcing the official Jabber Extensions Protocols (JEPs) for doing multimedia over Jabber, or XMPP as the IETF approved protocol is officially known.

Here's the part where we learn that this is in reality a way for everyone to plug into Google Talk:

The Jingle technology represents an open version of the protocols used in the popular Google Talk application released in August 2005, and Google is supporting the standardization and evolution of these protocols through the JSF's community standards process.

The two JEPs cover signalling and the specific format for audio sessions. There is running code for interoperability with Asterisk's IAX protocol, and SIP and H.323 is in the works.

I've long turned up my nose at the primarily telco driven (with the notable exception of Microsoft) SIMPLE spec, an attempt to add presence and text messaging to SIP. Now XMPP has turned the tables, and gone after SIP. Well, actually, I don't believe that SIP will go away -- it has emerged as the core way to ship VoIP around networks -- but I think we can close the lid on SIMPLE.