Jingle (protocol)
{{short description|Peer-to-peer communications protocol}}
{{update|date=May 2017}}
Jingle is an extension to XMPP (Extensible Messaging and Presence Protocol) which adds peer-to-peer (P2P) session control (signaling) for multimedia interactions such as in Voice over IP (VoIP) or videoconferencing communications. It was designed by Google and the XMPP Standards Foundation. The multimedia streams are delivered using the Real-time Transport Protocol (RTP). If needed, NAT traversal is assisted using Interactive Connectivity Establishment (ICE).
{{As of |2018|09}}, 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."{{Citation | title = XEP | date = 19 September 2018 | number = 166 | publisher = XMPP | url = http://xmpp.org/extensions/xep-0166.html}}.
The libjingle library,{{Citation | contribution = Libjingle | title = Code | contribution-url = http://code.google.com/p/libjingle}}. 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{{Citation | contribution-url = http://xmpp.org/xmpp-software/clients/ | publisher = XMPP | title = Software | contribution = Clients}}.{{Citation | url = http://coccinella.im/ | title = Coccinella}}: Instant Messaging Program with Whiteboard.{{Citation | contribution-url = http://coccinella.im/faq/voip | contribution = Voice over IP (VoIP) | title = Questions | publisher = Coccinella | access-date = 2009-12-18 | archive-date = 2013-12-05 | archive-url = https://web.archive.org/web/20131205132813/http://coccinella.im/faq/voip | url-status = dead }}.
- Conversations (software)
- Dino (software)
- Empathy{{Citation | contribution = Does Empathy support audio & video chat? | contribution-url = https://wiki.gnome.org/Apps/Empathy/FAQ#Does_Empathy_support_audio_and_video_chat.3F | title = Empathy FAQ | publisher = Gnome}}. (using Telepathy framework)
- FreeSWITCH
- Gajim
- Google Talk for Gmail, Android, Windows
- iChat for Apple OS X
- Jitsi{{Citation | url = http://jitsi.org/index.php/Main/Features | publisher = Jitsi | title = Features | type = list}}. (multiplatform support using Java)
- KDE Telepathy{{Citation | contribution = FAQ | contribution-url = http://community.kde.org/KTp/FAQ | title = Community | publisher = KDE}}. (using Telepathy framework)
- Kopete{{Citation | contribution = Use | title = Kopete | publisher = Zugaina | contribution-url = http://gpo.zugaina.org/kde-base/kopete/USE | quote = Jingle functionality (voice only) can be enabled/disabled in Kopete. The old KDE Wiki statement about it not working is outdated. | access-date = 2013-11-20 | archive-date = 2013-12-02 | archive-url = https://web.archive.org/web/20131202235727/http://gpo.zugaina.org/kde-base/kopete/USE | url-status = dead }}
- Miranda NG (via JGTalk plugin){{Citation | title = Forums | publisher = Miranda IM | url = http://forums.miranda-im.org/showthread.php?t=13768 | url-status = dead | archiveurl = https://web.archive.org/web/20071010121402/http://forums.miranda-im.org/showthread.php?t=13768 | archivedate = 2007-10-10 }}.
- Movim
- Pidgin
- Psi
- QIP Infium
- Yate/YateClient supports Jingle in both client and server mode, audio and file transfer, 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{{Citation |last=Gal |first=Viktor |title=vigsterkr/libjingle |date=2025-05-07 |url=https://github.com/vigsterkr/libjingle |access-date=2025-05-29}} on GitHub.
- Interactive Connectivity Establishment (ICE) protocol explanation.
- Real-time Transport Protocol (RTP) overview.
Notes
References
{{reflist}}
External links
- [https://xmpp.org/ XMPP Standards Foundation]
{{Instant messaging}}