
Jingle is an extension to
XMPP
Extensible Messaging and Presence Protocol (abbreviation XMPP, originally named Jabber) is an Open standard, open communication protocol designed for instant messaging (IM), presence information, and contact list maintenance. Based on XML (Ext ...
(Extensible Messaging and Presence Protocol) which adds
peer-to-peer
Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network, forming a peer-to-peer network of Node ...
(P2P) session control (signaling) for
multimedia
Multimedia is a form of communication that uses a combination of different content forms, such as Text (literary theory), writing, Sound, audio, images, animations, or video, into a single presentation. T ...
interactions such as in
Voice over IP
Voice over Internet Protocol (VoIP), also known as IP telephony, is a set of technologies used primarily for voice communication sessions over Internet Protocol (IP) networks, such as the Internet. VoIP enables voice calls to be transmitted as ...
(VoIP) or
videoconferencing
Videotelephony (also known as videoconferencing or video calling) is the use of audio signal, audio and video for simultaneous two-way communication. Today, videotelephony is widespread. There are many terms to refer to videotelephony. ''Vide ...
communications. It was designed by
Google
Google LLC (, ) is an American multinational corporation and technology company focusing on online advertising, search engine technology, cloud computing, computer software, quantum computing, e-commerce, consumer electronics, and artificial ...
and the
XMPP Standards Foundation. The multimedia streams are delivered using the
Real-time Transport Protocol (RTP). If needed,
NAT traversal
Network address translation traversal is a computer networking technique of establishing and maintaining Internet Protocol connections across Gateway (telecommunications), gateways that implement network address translation (NAT).
NAT traversal te ...
is assisted using
Interactive Connectivity Establishment (ICE).
, the Jingle specification is a Stable 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 to implement Jingle, has been released to the public under a
BSD license. It implements both the current standard protocol and the older, pre-standard version.
Clients supporting Jingle
*
Asterisk PBX
*
Coccinella[.]
*
Conversations (software)
*
Dino (software)
*
Empathy
Empathy is generally described as the ability to take on another person's perspective, to understand, feel, and possibly share and respond to their experience. There are more (sometimes conflicting) definitions of empathy that include but are ...
(using
Telepathy
Telepathy () is the purported vicarious transmission of information from one person's mind to another's without using any known human sensory channels or physical interaction. The term was first coined in 1882 by the classical scholar Frederic ...
framework)
*
FreeSWITCH
*
Gajim
*
Google Talk for Gmail, Android,
Windows
*
iChat for Apple OS X
*
Jitsi (multiplatform support using
Java
Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
)
*
KDE Telepathy (using
Telepathy
Telepathy () is the purported vicarious transmission of information from one person's mind to another's without using any known human sensory channels or physical interaction. The term was first coined in 1882 by the classical scholar Frederic ...
framework)
*
Kopete
*
Miranda NG (via JGTalk plugin)
*
Movim
*
Pidgin
A pidgin , or pidgin language, is a grammatically simplified form of contact language that develops between two or more groups of people that do not have a language in common: typically, its vocabulary and grammar are limited and often drawn f ...
*
Psi
*
QIP Infium
*
Yate
Yate is a town and civil parish in South Gloucestershire, England. It lies just to the southwest of the Cotswolds, Cotswold Hills and is northeast of Bristol and from Bath, Somerset, Bath.
Developing from a small village into a town from t ...
/YateClient supports Jingle in both client and server mode, audio and
file transfer
File transfer is the transmission of a computer file through a communication channel from one computer system to another. Typically, file transfer is mediated by a communications protocol. In the history of computing, numerous file transfer protoc ...
, also call transfer and DTMF.
Though not an instant messaging client,
RemoteVNC uses Jingle as one of the screen sharing means.
Technical Details and Further Resources
* XMPP Standards Foundation detailed specification.
* libjingle project documentation
on GitHub.
* Interactive Connectivity Establishment (ICE) protocol explanation.
* Real-time Transport Protocol (RTP) overview.
Notes
References
External links
XMPP Standards Foundation
{{Instant messaging
Instant messaging protocols
VoIP protocols
XMPP