Client Development

Hi all. I just installed ejabbered last week so am a total newb at it. I read some of the docs but I don't think I will do any configuring just yet. My question is about developing my own IM client. I know there are a few clients already available but I want to develop for my Master's thesis. I have never used XML but I so willing to learn it. I just would like someone to point me in the right direction (tutorials, etc...) Last year for Honours I made and IM using a plain J2ME client and a Java Servlet but I assume communication with a Jabber server is very different. Any help would be appreciated.

PS: this is my first time using a forum so if I broke any rules in my message, I is sorry.

Fresnaye

To get a quick look at XML in

To get a quick look at XML in XMPP, install an existing Jabber client (Psi, Gajim, Jabbim, Tkabber...) and open its Raw XML console. It shows the pieces of XML sent by the client and received from the server. The protocols are described in RFC 3920, 3921 and extensions (XEP), see XMPP. There are at least two books on Jabber, one is 10 years old, the other is one year old. Both serve the purpose, but of course it's better if you can get your university library to get the recent one.

Just in general, I guess you have three implementation options.

  • Full client. Do you plan to write yet another Jabber client, identical to the other ones, completely unoriginal?
  • If you have a brand new idea to improve IM, and you plan to design and implement it, consider writting it as a plugin/addition/feature in one of the existing clients.
  • If the idea focuses in how fundamentally Jabber clients work, probably you will need to write a minimal Jabber client to demonstrate how your idea works. In that case you could use a Jabber library for writting clients.
Syndicate content