XMPPFramework + PubSub = RadioAunty + LiveText
[UPDATE] This is now live, oh and I added the scrobbling support.
I’ve been doing a lot of XMPP lately, so I figured I should share some of this stuff with you all. This all ends up with me telling you that I have added LiveText support to my RadioAunty application (Hah! not even the proper iPlayer Radio console has that).
LiveText is the content that appears on your DAB radio, with information about who’s on, what’s currently playing, and what’s coming up in the show.
So, XMPP. To start with, two books which I can recommend are:
One is great for understanding what the hell XMPP is, and the other for how you can use it on the web. In traditional style, I read both these cover to cover many times, until I finally got it, and felt I could build something interesting. Here’s a brief overview:
XMPP is the Extensible Messaging and Presence Protocol, a set of open technologies for instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of XML data.
One of the side effects of using this technology so much, has meant that I’ve grasped enough to make a contributions to open source XMPP projects. One of which being the fantastic XMPPFramework. As you’ll guess by the name, this is an XMPP Framework in Objective-C for Mac and iPhone. My colleague Alan wrote last November that the BBC was starting to make it’s LiveText service available over XMPP PubSub. I really wanted to integrate this with RadioAunty, but the XMPPFramework did not support PubSub or SASL ANONYMOUS. Due to my new found knowledge, I was able to help, and submitted a couple of patches adding this support to this library.
So, I will push out the new version of RadioAunty in the next couple of days. There is a limitation at the moment that the LiveText won’t work if you need to go through a SOCKS proxy. I’m hoping I can fix this, but at the moment I’m not quite sure where to start. The radio will continue to work fine.
Oh, and yes, I realise that the elusive Last.fm scrobble support is possible now. One step at a time.