Add Ons - DevSource
DevSource: Microsoft Developer Resource DevSource Home Sponsored by Microsoft Home Add Ons Architecture Languages Techniques Using VS Forums
Home arrow Add Ons arrow Page 2 - Google's Jingle: Slightly Out of Tune
Google's Jingle: Slightly Out of Tune
By Tim Stevens

Rate This Article: Add This Article To:

Google's Jingle: Slightly Out of Tune - ' Jingle'
( Page 2 of 4 )

? What's That?"> When it comes to Google, the term "beta" has become rather overused. Cool new tools and gadgets come flying out of Google's servers every day, each labeled "beta," a label from which, seemingly, few ever free themselves. You can usually treat Google's "beta" software as something that's pretty-well ready for prime-time, but yet isn't quite ready to be labeled as such just in case it causes some sort of catastrophic failure.

Unfortunately, that's not the case with libjingle. This new library, which has the potential to enable voice chat and other P2P-style communication between a variety of instant message (IM) clients, lives up to (or, rather, down to) its 0.2.1 version number. It's buggy, insecure, and won't even compile under Windows without some code changes (which we'll cover). That said: its potential alone makes it worth taking a close look at libjingle, and keeping an eye on it as the code matures.

A Little History

ADVERTISEMENT

Let's take a step back, to see where Jingle fits into the world of instant messaging. In August 2005, Google released the beta of Google Talk. Talk is a mostly standard looking-and-feeling IM client that allows Google users to chat with anyone else using an IM client that supports Jabber. Jabber, which is well over five years old, is a set of messaging standards that enable a variety of clients to interchange messages seamlessly. The hope was to remove the need for IM aggregators like GAIM or Trillian, and rather to enable every IM client to talk to every other IM client directly.

Google Talk is just one of a variety of clients (including GAIM and Trillian Pro) to support XMPP, the Extensible Messaging and Presence Protocol that grew out of Jabber. XMPP defines the core XML standards for exchanging individual messages and maintaining information, such as whether someone is online or off, available, or not at his desk.

However, as it is entirely focused on individual XML messaging and is inherently server-based, XMPP has no support for handling any type of direct P2P streaming of information — such as voice. This is where Jingle and Google come in. Jingle, and more specifically Jingle Audio, are proposed additions to XMPP to enable things like real-time VOIP communications over XMPP. These proposed standards have been formed based around the way that Google already implemented voice chat in Google Talk.

As XMPP had no support for this sort of communication when Talk was released, Google engineers came up with their own means of handling P2P communications. This is, basically, an extension that used many XMPP concepts and effectively superseded XMPP. However, this meant while Google Talk let exchange text messages with other Jabber clients, you could only engage in voice communication with other users of Google Talk.

The release and ultimate acceptance of Jingle will mean that any user of a Jabber client will be able to do voice chat with any other. It also opens the door for other forms of communication between IMs like video chat and file exchanges. Jingle provides the means to form a P2P connection with someone over XMPP and, once that's open, exactly what type of data is sent is up to the implementer.

So, to bring this back to the point, libjingle is a public release of an early implementation of Jingle, written in C++. This implementation is intended to pave the way for other implementations and, ultimately, voice chat between different IM clients.



 
 
>>> More Add Ons Articles          >>> More By Tim Stevens
 



HD VOIP Has Arrived (with Tony Konstner)

Play Video >

All Videos >

Google and blonde jokes?

Read now >

Favorite books!

Read now >

View Now
DevSource RSS FEEDS
XML Want an easy way to keep up with breaking tech news? And the Get DevSource headlines delivered to your desktop with RSS.