Homeseer XBMC Plugin Work

The last freelancer stuffed me around, so i have had to re-list this project. my MAX budget is $200 + GST.

In short plugin should be able to receive notifications from XBMC player(s) and pass them across to homeseer to trigger events, Homeseer should be able to also control XBMC player(s) through the XBMC JSON API, so that homeseer can be used to play a movie, video, song etc. The sort of control i am looking for is allowing Homeseer to react to XBMC doing something, and also allow Homeseer to be a remote for XBMC, so for example if the XBMC player reports as now playing homeseer should be able to get information about what is now playing, its rating etc and do stuff with that, through the Homeseer API other plugins should also be able to control the XBMC clients (e.g. play this movie, or get a list of what movies are currently on that player).

I need a freelancer to create a plugin for Homeseer for me. The idea of the plugin will be to intergrate XBMC (XBox Media Centre) with Homeseer ([url removed, login to view]). They have free 30 day trials of the software, as well as a sample plugin and documented SDK ([url removed, login to view]). I believe there are quite a few XBMC classes and the likes around the net which should make your life a lot easier, the important thing though is that it has to be Asynchronous as it needs to receive notifications.

All responses to and from XBMC will most likely need to be TCP, or use a class that incorporates that.

Within the plugin, you should be able to define a list (through a homeseer webpage) of the clients that you want the plugin to connect to, their Name, IP address, Port and Username / Password. The plugin should then create virtual devices for these players (e.g. Status, Last Played, State,) where the Status shows if the device is connected or not, Last Played shows what was last played and State shows the state of the device "e.g. ScreenSaverActive, Playing #MovieName, Paused #Moviename" and so on.

If you could expose functions that allow me to specify a movie to play on a specific media player that would be great, that may actually be an event action.

The plugin will need to be able to do a number of things, at its simplest it will need to be able to send actions to one, or multiple XBMC clients, that is your plugin would need to be able to connect to lots of these media player clients (by TCP Connection) and send a command to the client, such as Move Mouse Up, Move Mouse Left, Play Media etc.

[url removed, login to view]

Further to that the plugin would also have to be able to maintain an Asynchronous connection with each client, who can send a notification to the devices connected to the XBMC player to say something has happened. These notifications should be incorporated into the plugin so that when the XBMC device sends a notification (e.g. [url removed, login to view]) a homeseer event can be triggered. The notifications would need to be specific to a client, so in the homeseer plugin you would need to be able to say trigger this event when Player: Bedroom notification equals [url removed, login to view]