Version 42 of Jabber

Updated 2007-12-02 09:14:42 by dkf

See http://www.jabber.org/ for detailed information about what Jabber is about. The basic idea however is that Jabber is bridging software - a definition of a client that can talk ICQ, AOL Instant Messenger, IRC, MSN Messenger and other instant messaging protocols.

kostix disagrees with this definition: XMPP [L1 ] is the only standardized IM protocol (by IETF) created with the idea of implementing an extensive and complete system for exchanging messages and presense information. It is multilevel (IM-facilities themselves actually aren't even in the core of the XMPP spec [L2 ]) and has a vast number of "extensions" [L3 ] which add support for such things like multi-user chat (think of "IRC 2.0") which powers the Tcl chatroom, file transfers and even VoIP calls and video conferencing. Gateways to various legacy proprietary IM systems have been created just as a measure to help converting people to XMPP and alleviate the problem of contacting the proprietary IM networks for XMPP users. These gateways are not part of the XMPP specs; the only thing which is defined regarding this is the protocol for services that extend XMPP servers (that's how these gateways are implemented). Such gateways still suffer on a regular basis from changes made by the owners of the legacy IM networks to their IM protocols.

Note that the set of protocols known as "Jabber" was renamed to XMPP after it was standardized by IETF. Since some core XMPP facilities differ from that of Jabber in some respects it's better to refer to this set of protocols as "XMPP"; the term "Jabber" is now often used to refer explicitly to this precursor of XMPP.

There are at least four attempts at a Tcl Jabber client:

 What: Tkabber
 Where: http://tkabber.jabber.ru/
 Description: A very complete implementation of Jabber. According to
        http://www.jabber.org/user/clientlist.php?Platform=Linux
        it is the most complete version of Jabber for X Window-based systems and Win32. 
 Updated: 12/2007
 Contact: http://lists.jabber.ru/mailman/listinfo/tkabber
          http://lists.jabber.ru/mailman/listinfo/tkabber-dev

 What: Coccinella
 Where: http://coccinella.im
 Description: Tcl/Tk whiteboard, shared desktop, text chat with images, MP3, etc.
        supporting plugins and compatible with Jabber.
        Uses GPL licensing.  Should run on most
        Linux, MacOS, Windows, and other platforms with appropriate
        Tcl/Tk extensions ported.
        Currently at version 0.96.2.
 Updated: sometime after 12/2007
 Contact: http://coccinella.im/development

 What: Tcl Jabber (defunct project)
 Where: http://jabbertcl.sf.net/ - dead link
 Description: At least two Tcl related Jabber software projects
        were once hosted here - JabberLib is a Jabber Client Library
        written in Tcl and zABBER is a Tcl/Tk Jabber client.
 Updated: 06/2006
 Contact: http://mailman.jabber.org/listinfo/tcl-dev - this link is dead too, and has no counterpart
 on the current mailing-list server at http://mail.jabber.org/mailman/listinfo

The fourth client is TkChat, which is based on Jabber but intended specifically for The Next Generation Tcl Chatroom.


There is also a jabber library, JabberLib, that comes with Coccinella. I don't know if this is the same as with Tcl Jabber.

PT The jabberlib that comes with tkabber is a fork of an earlier version of jabberlib. There are some similarities between the two but the code has diverged quite a lot.

kostix This article [L4 ] explains the backgrounds of the fork.

 What: JabberLib
 Where: http://hem.fyristorg.com/matben/development/jabberlib/index.html
 Description:  One of the core parts in the Coccinella is the
         JabberLib, written in Tcl. In order to serve other Tcl
         developers, it is downloadable here as a separate
         archive. It's already included in the Coccinella
         distribution. It hides all of the XML stuff that the
         Jabber protocol uses. Some test files are included to
         get you started. No docs available, except a brief
         summary of commands in the prefix header of each
         source file.

         Included is also a patched TclXML package that is
         needed for XML parsing in Tcl. 
 Updated: 06/2006
 Contact: http://hem.fyristorg.com/matben/contact/index.html

See also Coccinella and Tkabber
Jabberlib documentation
Steps to connect to Tcler's Wiki chat with Jabber