Jabber : Java Glossary

Jabber

A generic Instant messaging protocol similar to AOL (America On-Line) 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 off-line. 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 on-line 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 Protoctols).

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.

CMP homejump to top You can get the freshest copy of this page from: or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror)
http://mindprod.com/jgloss/jabber.html J:\mindprod\jgloss\jabber.html
logo
Please email your , letters to the editor, errors, omissions, typos, formatting errors, ambiguities, unclear wording, broken/redirected link reports, suggestions to improve this page or comments to Roedy Green : feedback email. If you want your message, your name or email kept confidential, not considered for public posting, please explicitly specify that. Unless you state otherwise, I will treat your message as a letter to the editor that I may or may not publish in the feedback section. After that, it will be too late to retract it. If you disagree with something I said, please quote it and cite the web page where you found it, tell me why you think it is wrong, and, if possible, provide some supporting evidence. Threatening to kill me or spouting obscenities has yet to persuade me to change my mind.
mindprod.com IP:[65.110.21.43]
view BlogYour face IP:[38.107.179.212]
You are visitor number 16,032.