´óÏó´«Ã½

« Previous | Main | Next »

LiveText-via-IP upgrade and other synchronously delivered content

Post categories: ,Ìý

Alan Ogilvie Alan Ogilvie | 18:04 UK time, Tuesday, 3 November 2009

For such a seemingly simple service, pushing out strings of text synchronous to our broadcasts can be a complicated process. LiveText, as it's commonly referred to, is available on FM, DAB, Freeview, FreeSat... and on the web.

The text itself is crafted by production staff in our systems and then we distribute it to these platforms. I specifically wanted to talk here about 'the web' - and our IP delivery mechanism for LiveText - what I call 'LiveText-via-IP'.

You may have noticed that LiveText appears on many of our national radio networks' web sites and we had it on the original Radio Player through a Flash client. When we started this a few years ago, it was an initial offering that would give us some feedback about how we should implement the service fully... and whether we should implement it at all!

Having collated all the feedback, and reviewed the delivery solution - we started to plan a new infrastructure.

Meanwhile - new services that also provide content synchronous to our broadcasts were being trialled - we have previously spoken about our Visualising Radio trials - you can see the parentage from the LiveText service. So delivering other media-types synchronously with our live streams is just as important.

What we needed was a way of implementing an infrastructure that could replace our existing LiveText-via-IP service, making sure we can deliver that and provide a system that is scalable and stable for new services.

Through a tendering process we eventually agreed on picking an open-source protocol and a company known for its expertise for server side implementations. We chose as the technology, and as the company. (XMPP used to be called Jabber, just in case you knew it by that name.)

Some of the considerations we had around this tender process:

  • we wanted an open-source protocol, to allow anyone to be access it and where libraries for consuming the 'messages' were available in a
  • if we were going to use open-source, then any development should give back to the community - in the end with ProcessOne's nodes any extensions are and XMPP protocol
  • picking anything requires us to investigate the 'pedigree' of such a system - so we wanted something that had evidence of widespread deployment and scale of delivery (how many concurrent users can connect at once) - XMPP
  • we also wanted some flexibility - so a protocol and server that would allow us to deliver what we need right now (simple text strings), and then grow with our ambitions - the XMPP protocol might seem a little bloated for delivering simple text strings, but as we develop the LiveText service over the next few years it allows us to, for example, mark up different languages, alternative messages for different clients/services. It also lets us provide new services using the same protocol - so the learning curve is lowered and hopefully reusability of code is improved.

So - where can you see this in action right now?

On the websites we have upgraded our Flash-based LiveText clients so they are consuming messages from our ejabberd services. Check it out on Asian Network's homepage.

Our Flash clients are built using the - an open source ActionScript library - we made some tweaks that we're feeding back to the XIFF developers.

There are currently two connection methods for our XMPP service - direct connection through sockets or via over port 80. If you are behind a firewall that blocks the XMPP ports then your client will connect using BOSH.

If you are using Firefox and have the installed - you can see some comms in the console. If you are behind a firewall which blocks our sockets you will also see activity in the network activity section in Firebug - showing the BOSH connection - just look for 'http-bind'.

We are now referring to our infrastructure solution as 'PushFeeds'. (We couldn't keep referring to them as 'a set of nodes of ejabberd that provides XMPP PubSub and BOSH' - just too lengthy to repeat all the time!)

Coming up - we are looking at other places to put LiveText-via-IP, whether on our websites or syndication locations. Also looking at devices on IP that could support this. And, of course, other services that could take advantage of push messaging like this - I'll take this opportunity to ask any ´óÏó´«Ã½ Staff interested to check out our about the service.

Alan Ogilvie
Interactive Platform Producer, Audio & Music Interactive


Further information:

  • - the XMPP PubSub specification
  • - the company we worked with to setup our service
  • - the XMPP BOSH specification
  • are available in many common languages, if you don't want to write one from scratch.
  • - the open source server technology behind our service, supported by ProcessOne
  • - find out how feed into ejabberd development, or make use of the technologies
  • - an internal page for ´óÏó´«Ã½ staff to find out about the service. (Link only works from within the ´óÏó´«Ã½ network)

Comments

  • Comment number 1.

    Did you ever consider using RadioDNS? It'd be interesting to know the reasons why you may (or may not) have considered this, as it allows for the automatic discovery of services like this, and can be implemented using open source software. Not wanting to be critical though - it's great to see the ´óÏó´«Ã½ contribute back to open-source projects.

  • Comment number 2.

    Why do podcasts for certain regions not appear on:

    /radio/opml/bbc_podcast_opml.opml

    Scotland, for example, simply appears empty of podcasts, yet on the bbc podcast website there is plenty of content for Scotland.

  • Comment number 3.

    @Sam Starling - when we began the work we considered many possible push notification systems. These were assessed with the same metrics that I outlined above - open source protocol, community support, pedigree, flexibility and scope. During the delivery of our project, it became possible to evaluate initial drafts of RadioDNS's RadioVIS specification which suggests use of STOMP (and COMET).

    @Start spreading... (is that your real name?): I will get someone to take a look at that.

  • Comment number 4.

    This is very very interesting! I've been having a little fiddle about, looking at what connects where... can't work out how to connect myself though!
    Is there any way that an outsider (me) can access the PushFeeds to play with making fun stuff? Or strictly internal for now?

    Thanks!

  • Comment number 5.

    Well, I've got further. I've discovered this chap called Switchboard (, and I'm trying to connect with that.

    I've been trying to use server=push.bbc.co.uk and node=pubsub.livetext.radio3, but without much luck. What should they be? Nothing happens when I listen to those....

Ìý

´óÏó´«Ã½ iD

´óÏó´«Ã½ navigation

Copyright © 2015 ´óÏó´«Ã½. The ´óÏó´«Ã½ is not responsible for the content of external sites. Read more.

This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.