Over the past couple of years I've been playing around with a "toy" Mumble server I developed.
Mumble, if you don't know, is a popular gamer VOIP and messaging system. It is open sourced and has clients running on Windows, Linux, iOS (iPhone) and Android (I prefer Plumble). It has a published spec for communication so it is relatively easy to build a minimal server. I've built one in the past in Erlang and have recently started one in Lua(JIT).
Why would I want to implement my own Mumble server (I'm calling it Mutter) when a perfectly good one exists as part of the Mumble project? Well, I am curious how many interesting things I can do with a compliant server without touching the client software.
Some of my experiments involve creating additional levels of authentication (e.g. a query response from a server bot, additional detection of client OS/hardware stuff, etc) as well as the potential to bridge to other VOIP or messaging systems.
Other things I am curious about playing with is "adhoc" conference calls that could spawn quickly and privately in the cloud.
Right now it is mostly for fun. I've got basic messaging and TCP voice channels working. I am not interested in building a full blown Mumble server (that already exists!) but curious as to what can be done minimally....