Google Wave with Prosody

UPDATE: The Google Wave wiki now has Prosody installation docs here.

I had some trouble getting Google Wave federation working with the XMPP servers Openfire and ejabberd on Ubuntu. Finally I tried Prosody, and it works fine! Here how I installed and configured Prosody.

The following instructions are just for setting up Prosody for Google Wave. The instructions for building and configuring the Google Wave server itself are the same as Google's instructions, just ignore the parts dealing with Openfire.

Install Prosody


$ sudo apt-get install lua5.1 liblua5.1-socket2 liblua5.1-expat0 liblua5.1-0
$ wget http://prosody.im/downloads/debian/prosody_0.5.2-1_i386.deb
$ sudo dpkg -i prosody_0.5.2-1_i386.deb
$ wget http://prosody.im/downloads/debian/liblua5.1-sec0_0.3.2-2prosody1_i386.deb
$ sudo dpkg -i liblua5.1-sec0_0.3.2-2prosody1_i386.deb

Configure Prosody

In /etc/prosody/prosody.cfg.lua, in the Hosts "*" section add


-- External components
component_ports = { 5275 }
component_interface = "0.0.0.0"

-- Google Wave
Component "wave.yourhost.com"
component_secret = "foobar"

Also, change the Host "example.com" section as directed. Namely, change example.com to yourhost.com and remove the enabled = false line.

Then restart with:


$ sudo /etc/init.d/prosody restart

Test Federation

Now the Google instructions for testing federation: http://code.google.com/p/wave-protocol/wiki/Federation should work!

Thanks to http://zhekov.freehostia.com/blog/2009/07/30/google-wave-prosody-xmpp-server/ for showing how to configure Prosody.