Jingle (protocol)
Encyclopedia
Jingle is an extension to the Extensible Messaging and Presence Protocol
Extensible Messaging and Presence Protocol
Extensible Messaging and Presence Protocol is an open-standard communications protocol for message-oriented middleware based on XML . The protocol was originally named Jabber, and was developed by the Jabber open-source community in 1999 for near-real-time, extensible instant messaging , presence...

 (XMPP). It implements peer-to-peer
Peer-to-peer
Peer-to-peer computing or networking is a distributed application architecture that partitions tasks or workloads among peers. Peers are equally privileged, equipotent participants in the application...

 (P2P) session control (signaling) for multimedia
Multimedia
Multimedia is media and content that uses a combination of different content forms. The term can be used as a noun or as an adjective describing a medium as having multiple content forms. The term is used in contrast to media which use only rudimentary computer display such as text-only, or...

 interactions such as in Voice over IP
Voice over IP
Voice over Internet Protocol is a family of technologies, methodologies, communication protocols, and transmission techniques for the delivery of voice communications and multimedia sessions over Internet Protocol networks, such as the Internet...

 (VoIP) or videoconferencing
Videoconferencing
Videoconferencing is the conduct of a videoconference by a set of telecommunication technologies which allow two or more locations to interact via two-way video and audio transmissions simultaneously...

 communications. It was designed by Google
Google
Google Inc. is an American multinational public corporation invested in Internet search, cloud computing, and advertising technologies. Google hosts and develops a number of Internet-based services and products, and generates profit primarily from advertising through its AdWords program...

 and the XMPP Standards Foundation
XMPP Standards Foundation
XMPP Standards Foundation is the foundation in charge of the standardization of the protocol extensions of XMPP, the open standard of instant messaging and presence of the IETF.- History :...

. The multimedia streams are delivered using the Real-time Transport Protocol
Real-time Transport Protocol
The Real-time Transport Protocol defines a standardized packet format for delivering audio and video over IP networks. RTP is used extensively in communication and entertainment systems that involve streaming media, such as telephony, video teleconference applications, television services and...

 (RTP). If needed, NAT traversal
NAT traversal
NAT traversal is a general term for techniques that establish and maintain Internet protocol connections traversing network address translation gateways. Network address translation breaks end-to-end connectivity. Intercepting and modifying traffic can only be performed transparently in the...

 is assisted using Interactive Connectivity Establishment
Interactive Connectivity Establishment
Interactive Connectivity Establishment is a technique used in computer networking involving network address translators in Internet applications of Voice over Internet Protocol , peer-to-peer communications, video, instant messaging and other interactive media...

 (ICE).

, the proposed Jingle specification has not yet been approved by the XMPP Standards Foundation, but is now a Draft Standard, meaning: "Implementations are encouraged and the protocol is appropriate for deployment in production systems, but some changes to the protocol are possible before it becomes a Final Standard."

The libjingle library, used by Google Talk
Google Talk
Google Talk is a freeware voice over Internet protocol client application offered by Google Inc. The first beta version of the program was released on August 24, 2005...

 to implement Jingle, has been released to the public under a BSD license
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

. It implements both the current standard protocol and the older, pre-standard version.

Clients supporting Jingle

  • Asterisk PBX
    Asterisk (PBX)
    Asterisk is a software implementation of a telephone private branch exchange ; it was created in 1999 by Mark Spencer of Digium. Like any PBX, it allows attached telephones to make calls to one another, and to connect to other telephone services including the public switched telephone network and...

  • Coccinella
  • Empathy
    Empathy (software)
    Empathy is an instant messaging client which supports text, voice, video, file transfers, and inter-application communication over various IM protocols....

     (using Telepathy framework)
  • FreeSWITCH
    Freeswitch
    FreeSWITCH is a free and open source communications software for the creation of voice and messaging products. It is licensed under the Mozilla Public License , a free software license...

  • Gajim
    Gajim
    Gajim is an instant messaging client for the XMPP protocol which uses the GTK+ toolkit. The name Gajim is a recursive acronym for Gajim's a jabber instant messenger. Gajim runs on GNU/Linux, BSD and Microsoft Windows. Released under the GNU General Public License, Gajim is free software...

     from 0.14 (not on Windows yet)
  • Google Talk for Gmail
  • Google Talk for Android (currently only supports older, pre-standard version, but will support standard soon)
  • Google Talk for Windows (only supports the older, pre-standard version, audio only)
  • Jabbin (not fully compatible with specification, does not work with all clients)
  • Kopete
    Kopete
    Kopete is a multi-protocol, free software instant messaging client. Although it can run in numerous environments, it was designed for and integrates with the KDE desktop environment...

     (since KDE SC 4.4)
  • Jitsi (formerly SIP Communicator) - a cross-platform communications client
  • Miranda IM
    Miranda IM
    Miranda IM is an open source multiprotocol instant messaging application, designed for Microsoft Windows. Miranda is free software distributed under GNU General Public License.- Architecture :...

     (using the JGTalk plugin and mediastreamer2; implementation stalled)
  • Nimbuzz
  • OneTeam Desktop
  • Phono - an opensource jQuery-based web phone and instant messaging SDK
  • Pidgin
    Pidgin (software)
    Pidgin is an open-source multi-platform instant messaging client, based on a library named libpurple. Libpurple has support for many commonly used instant messaging protocols, allowing the user to log into various services from one application.The number of Pidgin users was estimated to be over 3...

     (since 2.6.0, not on Windows yet)
  • Psi
    Psi (instant messaging client)
    Psi is a GPL instant messaging client for the XMPP protocol which uses the Qt toolkit. It runs on Linux, Windows, Mac OS X and eComStation.Ready-to-install deb and RPM packages are available for many Linux distributions...

    /Psi+ (supported since version 0.13, voice only)
  • QIP Infium (starting from version 9032)
  • RemoteVNC - a remote desktop application, based on libjingle, which uses Jingle for screen sharing.
  • Spark
    Spark (software)
    Spark is a free open source instant messaging client for the XMPP XML-based protocol for queuing and exchanging audio and text messages and subscribed users lists over the Internet. It is written in Java. It can be used standalone or as an add-on or plugin to certain Web browsers. It appears...

    (Windows version only)
  • Yate starting with 3.0 supports Jingle in both client and server mode, audio only

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK