Tuesday, April 20, 2010

Prosody - lightweight XMPP server

Thanks to volcano or not, this week I finally found the time to write about some projects present at FOSDEM 2010 (happened in Bruxelles, Belgium, February 6-7, 2010) which I like and use.

First is Prosody, a lightweight XMPP server, the second is SIP Communicator, a multi-protocol communication suite, mainly focusing on SIP.
Days before the conference I started to play a bit more with Lua (as a matter of fact Kamailio has now support for embedded Lua in config file). Moreover, I was looking for a simple to install and manage XMPP server for usage in small companies.

Guess what, I run into Prosody web site (iirc, via xmpp.org site) and discovered is written in Lua, which made my day, perfect match. From the project site:

"Prosody is a flexible communications server for Jabber/XMPP written in Lua. It aims to be easy to use, and light on resources. For developers it aims to be easy to extend and give a flexible system on which to rapidly develop added functionality, or prototype new protocols."

Back in 2003, SIP Express Router (SER) times, I coded first SIP-to-XMPP gateway for instant messaging and presence (even started an IETF draft about it). I used Jabberd server (v1.x), later I played with Jabberd2 and never got really into erlang to play with eJabberd, although looks an amazing application. Jabberd2 got a bit too complex for my taste, with all those specific processes running at the same time.

Back in January I was looking for something really light, not guided by performance, but more by simplicity and easiness in management - the motto of Prosody suited perfectly at first sight. Reading more about it and doing few tests, it became my favorite very shortly.

If it was a presentation about Prosody in XMPP dev room, then I missed it, however, I could spot Matthew Wild by t-shirt, greeting him just before running to my Kamailio talk. I changed some emails afterwards, looking to do a seamless integration between Kamailio and Prosody. Now I am looking forward to version 0.8 (0.7 rc is already out), hopefully to bring database support for user profiles and roster, which should make things much simpler.

Meanwhile, if you need your own XMPP server, enjoy Prosody, it has lot of extensions and support for secure communication via TLS.

There are many reasons I would strongly recommend using your own real-time communication server (XMPP or SIP), I will write more about that topic soon, this post is getting too long.

Check back this site in few days for SIP Communicator post, another amazing application out there.

No comments:

Post a Comment