Zune Hacks: How to make Zune playlists consumable as usable RSS feeds with Yahoo Pipes
Ever wanted to RSSerize your Zune playlist? Well, now you can. Here is a guide from waded.org that tells you how:
Online playlists in the Zune ecosystem, such as “Favorites”, can be consumed as Atom feeds via URLs such as http://socialapi.zune.net/members/98772405-3286-4e64-b78b-f7512f3804fe/playlists/BuiltIn-FavoriteTracks. That’s a great way to merge multiple “socials” into one big fat “social,” or to keep tab on what your friends are listening to.
Unfortunately there a couple usability problems with the Atom feeds:
- According to feedvalidator.org, the Atom namespace qualifier used on the <feed> element will cause interoperability problems. It’s perfectly valid XML and Atom 1.0 but some consumption code, including some I saw written at work the other day, is looking for <feed>, not <a:feed>. I suspect this is what throws off FriendFeed’s blog importer, as well as the importers for Yahoo Pipes and Microsoft Popfly.
- <entry><link> has an empty href attribute. Hey Zune team, remember that social I mentioned earlier? If you don’t link to it, customers ain’t joinin’ it.
- <entry><updated> is the feed-generated date/time, not the date/time the track was added to the playlist. Time is an important dimension! (*waded favorites a curmudgeonly song at 3:54PM.)
So I thought, hey, let me try a little Yahoo Pipe grease:
- Fix the interoperability problems by sourcing the Atom feed in Pipes as raw XML, then spitting certain elements back out as RSS.
- Use the Zune Social XML namespace track information to make a useful <item><link> to get users to http://social.zune.net album info.
- Nothing much to be done about the date problem that I could see… that’s for the Zune folks to fix.
The result is at http://pipes.yahoo.com/waded/zunefavorites. The RSS rendering, with parameters in bold, is at http://pipes.yahoo.com/pipes/pipe.run?_id=4va_WrpV3RG7AfwEiXrL0A&_render=rss&mid=98772405-3286-4e64-b78b-f7512f3804fe&playlist=BuiltIn-FavoriteTracks
-Jameson
[Source: Waded]







