More fun with XMPP

I have recently taken it upon myself to evaluate using XMPP (Jabber) as a messaging transport and collaboration protocol for distributed computing. This has been in the back of my mind for a while, but it was the realisation that my account at Dreamhost includes a publicly-visible Jabber server which prompted me into action.

As related a week or so ago, I started by setting up a multi-protocol client to test connectivity with, and configuration of, my server. That phase is now effectively complete. I have actually chosen to install two clients:

  • Pidgin – a multi-protocol client which allows me to log on and receive messages for multiple identities.
  • Spark – a client which is much more closely tied to the XMPP protocol and allows advanced operations such as the creation of “rooms” and “conferences” and broadcast messages.

As well as using the Dreamhost server, I have also been trying to set up a local server for faster turn-around during testing. I started by choosing some servers (ejabberd and jabberd2) from the Ubuntu package system and trying to get them working. So far I have had no luck with either. I also tried the Windows port of jabberd2 but that gave some strange installation error.

Finally, I found an ejabberd Windows download which worked straight away. I hope tomorrow to try installing the Linux version of the same server.

I still haven’t worked out how to bridge the two servers so that a client attached to one can send and receive messages to clients on the other, but I am sure this is possible. More fun (including writing some “bots” in Java and Python) to follow!

Comments (2) left to “More fun with XMPP”

  1. Peter Saint-Andre wrote:

    If you’re on Windows you might want to also try out the Openfire server (coded in Java). Then just set up the proper server-to-server bits in the configuration and off you go!

  2. Frank wrote:

    Thanks. That was actually the next one on my list for evaluation. I have a natural affinity for Java software. I’ll give it a try!

Post a Comment

*Required
*Required (Never published)