Jabber : Java Glossary

*0-9ABCDEFGHIJKLMNOPQRSTUVWXYZ (all)

Jabber

A generic Instant messaging protocol similar to AOL (America Online) Instant Messenger. It is a cross between email, chatrooms and instant messaging. Like Trillian, some Jabber servers may allow Java programs to send and receive instant messages from services like AOL Instant Messenger, Yahoo!, ICQ (Internet Chat Query), Napster, Gadu-Gadu and Zephyr etc. Jabber is not as clever as Trillian. To send a message to someone on AOL Instant Messenger, Yahoo, ICQ etc. you must have an account on those services and you must have an account on a Jabber server with a gateway to one of those services. Jabber also supports chatrooms. Jabber uses addresses that confusingly look exactly like email addresses name@website.com and maintains public directories of names and addresses. These work faster than email and allow for messages to be stored by a server when the receiver is offline. Messages are exchanged in fluffy XML (extensible Markup Language). There are many implementations of Jabber clients and servers. Jabber folk call the buddy list the roster. The ones of most interest to Java programmers are those coded in Java with a Java API (Application Programming Interface) such as: Java Jabber OpenIM(client and server, only install documentation and and source code. No Javadoc, No support for ICQ, AIM (America Online Instant Messenger), Yahoo Instant Messenger), Echomine Muse (client only, good documentation), JabberWookie (client only), Yaja (client only). For just playing around with the client application, try Exodus on Windows. They is not written in Java. Rhymbox has a nice feature to let you view the html traffic and to compose XML messages semi-manually for experimenting. Akeni is both client and server on Windows and Linux (no Java) and supports file transfer. You can kludge file transfers, doing them with HTTP (Hypertext Transfer Protocol) using Apache WebDAV (Web-based Distributed Authoring and Versioning Protocols).

At the time of writing there is no Java server. You will have to make do with something platform specific in the meantime. May not be able to use a downloadable Jabber client.

A typical XML message sent between client and server looks like this:

<message
to='romeo@example.net'
from='juliet@example.com/balcony'
type='chat'
xml:lang='en'>
<body>Wherefore art thou, Romeo?</body>
</message>
IIRC (If I Recall Correctly), one big problem with Jabber is it does not piggyback on HTTP. It uses its own port. This means users must configure their firewalls to allow it to tunnel through. This is well beyond the capability of the average user.

This page is posted
on the web at:

http://mindprod.com/jgloss/jabber.html

Optional Replicator mirror
of mindprod.com
on local hard disk J:

J:\mindprod\jgloss\jabber.html
Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

IP:[65.110.21.43]
Your face IP:[18.224.51.168]
You are visitor number