Federating Your Wave Server
*** Edit the information contained here is out of date. To find more up to date information please visit here: http://wavingtheshiny.collaborynth.com.au/books/fedone-book/fedone-book ***
Now that you've setup your Wave Reference Server, you're probably going to want to test out one of THE big features. Federation. This post will take you through setting it up.
What Is Federation?
Federation is the thing that moves Wave out from JAGB (Just Another Google Beta) to being something more. It is the server to server communication protocol. This is what allows you to run your own Wave server and communicate with any other Wave server.
Okay, Cool, So How Do I Set It Up?
We actually did most of the work for setting up Federation in the last tutorial. To finish the job we simply need to do the following:
Ports: If you're running the server behind a firewall or NAT, then you'll need to setup port forwarding for port 5269 on your device to your Server.
DNS: For the moment there isn't an "Official" port for the Wave Federation Protocol. This means that the WRS relies on SRV records to indicate which port it should be communicating with the remote server on. Below is an example of an SRV record for your Wave Server.
_xmpp-server._tcp.blah.com. 3600 IN SRV 10 0 5269 wave.blah.com.
Also if this is a new subdomain for your domain don't forget to add an A record.
wave.blah.com IN A [IPADDRESS]
Note: If you're using a subdomain to house your WRS (say wave.blah.com) you will need to setup a second A record. Openfire lists each component as a subdomain of the nominated domain. So in the case of wave.blah.com you would also need to setup a wave.wave.blah.com A record.
How Do I Test It?
Testing the Federation is pretty simple. In the run-server.sh scrip there is an entry xmpp_server_ping. If you put the url of a known working Wave Server here it will send out a packet on startup and if all is working well, you should recieve a reply from the server.