Quick Guide to Jabber Instant Messaging System

Jabber is a neat open-source instant messaging server like AOL IM, IRC, ICQ. The main difference is that messages are formated in XML so as to make it easy to connect a Jabber server to foreign servers that use a different architecture. The only drawback, is that it's still pretty young so lacks stability (this is true of both the server and the Windows clients I tried, ie. WinJab, HotJabber, and Jabber IM), and Jabber expects you to add a user to your "rogue list" before you can send him a message. This is a pain when setting up a new client.

Setup

To install the Jabber server on a Linux host, you will need to install the following packages in that particular order:
  1. PTH
  2. PTH-dev
  3. ADNS
  4. ADNS-dev
  5. libxod
  6. libjabber
  7. libether
  8. jabber-transport
RPMs are available from ????

Configuration

Jabber's configuration is /etc/jabber/jserver.xml. The only thing you might need to change is the <NAME> section, where you should add the fully-qualified host name of the server. But then, the RPM package might have done this for you already, in which case you are ready to launch the server through either /etc/rc.d/init.d/jabber start, or /usr/sbin/jserver &.

Structure of a Jabber account

<xdb>
	<!-- Here's your account-->
	<query xmlns='jabber:iq:register' xdbns='jabber:iq:register'>
		<resource>Work</resource>
	</query>

	<password xdbns='jabber:iq:auth'>password</password>

	<!-- Here's your rogue list, ie. members of your contact list-->
	<query xmlns='jabber:iq:roster' xdbns='jabber:iq:roster'>
		<item jid='jdoe@acme.com' subscription='both' name='jdoe'>
			<!-- group>Acme</group -->
		</item>
		<item jid='janed@acme.ocm' subscription='both' name='janed'>
			<!-- group>Acme</group -->
		</item>
	</query>
</xdb> 

Clients

Clients are available for Windows are WinJab, IM Jabber, KIM. Clients available for Linux are Gabber.

Add-ons

Group

Q&A

Resources