Some of our users have done a great job developing gadgets and widgets and whatnot. We've recently developed a new feature for all the websites in the 24seven.fm network that should make their development a lot easier.
They will no longer need to parse the websites to get the queue, history and what's playing. We've put a webservice on all the sites that give them all the information they need in one go.
Those of you who are not software developers or have no idea what this is all about need not worry. This is technical stuff ;)
The webservice definitions can be found here:
This method returns an object with all the information about the currently playing track. It's the same information that can be found in playing.php. If you call the method with the GetCover parameter set to "true" the webservice will return the binary data for the currently playing song. "false" puts NULL in the binary data, but you still have the URL to the cover in the message.
GetQueue(int NoOfEntries, boolean GetCover)
GetHistory(int NoOfEntries, boolean GetCover)
Here you will get an array of an object that contains information about the songs in the queue or history. The information in the object is the same as can be found on the Queue/Played page.
The NoOfEntries parameter lets you control how many entries is returned. The maximum number of entries returned is 20.
The GetCover parameter behaves in the same way as for GetCurrentlyPlaying().
We would appreciate if you would limit your requests to the webservice. Use it only when a song has changed. The GetCurrentlyPlaying() includes the length of the currently playing track (in milliseconds), when the track started playing (dateTime) and what the time was on the server when you invoked the webservice. That should make it easy enough to calculate a countdown timer so that you know when the track has finished playing.