Boxee is a platform that is really going places. At one point it was a mainly for enthusiasts willing to spend the time on installing it and setting it up on their own hardware. Now it is moving towards mass appeal with the recent announcement of a Boxee Box, which users will just be able to plug in and go, and Boxee payments, which may make the platform more appealing to content providers. A great starting point before getting stuck into full scale Boxee application development is creating a simple RSS application that will just make a feed of a podcast available and give it presence in the world of Boxee.
In this example I'll be building a simple application to make the ccMixter podcast available in Boxee. If you have not heard of ccMixter be sure to check out their great site. You are not restricted to listening to the music from ccMixter, you can remix it, make your own and join in if you want. If you go to http://ccmixter.org/view/media/playlists/podcast you will see that they offer a podcast. You do not need to register to listen to it, you can simply download and enjoy. On the left hand side of the podcast page you will see an RSS icon under the heading “Syndication”. This is the link to the RSS feed that we will be using in our application.
To get started, first locate your UserData directory. This contains your personalised settings for Boxee, including data for add on applications. On Ubuntu systems this is located at: ~/.boxee/UserData (the initial dot indicated the “boxee” directory is hidden so you might have to select View → Show Hidden Files in a file browser window to see it). For other platforms see: http://support.boxee.tv/forums/49599/entries/42737. Go into the “apps” directory and create a new directory called “ccMixter”. Note that case is important – even if you are using an operating system that does not have case sensitive file names. Why? Because other people who use your application in future might be using a different operating system to you!
In your new directory create a file named “descriptor.xml”. This is used to tell Boxee about your application. In our example it is the only file you will need, but if your were creating a more complex application this would be supplemented by many other types of file. Now copy in the following XML text:
Let's have a look at each line in turn. Firstly we have a root element of “app” this just says we are going to pass information describing an application. After this we have:
|id||The application identifier, should be the same as the directory name|
|name||The display name, this will appear on screen|
|version||The version number of your application|
|description||Some text to help explain the content on offer. This will appear when you click on an app before you select Start. There is room in the box for about two sentences. In this example I have copied some of the text from the ccMixter podcast page.|
|thumb||An icon for the application. Here I have used the logo from the podcast. Should point to an online location.|
|media||The type of content provided. Should be music, video or pictures.|
|copyright||The name of the developer or organisation developing the application. Note that licensing of the application is always GPL.|
|Your email address|
|type||The type of application, in this case rss for a basic RSS application.|
|platform||If your application only works with certain operating systems for some reason you can state that here.|
|minversion||The minimum version of Boxee your application needs to run.|
|url||The address of the RSS feed. Remember to replace “http://” with “rss://” and as this is an XML document you should replace “&” characters in the feed address with “&”.|
|test-app||Set this to “true” to enable the application to appear in your Boxee apps menu without the need to go through a repository. Remember to remove this element before you submit your application!|
For more information in each element see: http://developer.boxee.tv/App_Anatomy#Descriptor.
The application should now be ready to use, and the great music of the ccMixter community only a few button presses away. In Boxee go to “My Apps” and you should see the ccMixter app listed. When you select the application you get some details about it.
When you start the application you will see that Boxee takes care of rendering the items in the RSS feed and making them easily selectable. In some feeds each item will have its own icon, but not in this one.
Once you are happy with your application then why not share it with others by submitting it to Boxee? More details on the submissions process and developing Boxee applications can be found at: http://developer.boxee.tv.