Widgety Hackery II: Roku

For about six months I’ve been the happy owner of a Roku Soundbridge, which is a neat gadget that lets you play music it pulls wirelessly off a computer. I run iTunes on my computer in the other room, and the Soundbridge’s wireless connection grabs the music files and plays them out to the stereo (to which it has a wired connection).

I also have a laptop. Often time I’m sitting on the couch in the living room working on the laptop, and listening to music. The Soundbridge also has an interesting feature in the form of a web-based control panel. I can open a browser and access a “web page” being served up by the Soundbridge which allows me to control the player. (It’s rudimentary control — I can play pause, skip, and so forth, but as yet there’s no support for pulling up song lists and the like via the web controls). Though neat, it can be a pain having to fumble with bringing the particular window to the front just to turn the volume down a bit — especially if I already have a bunch of windows open.

If you’ve been reading this blog for a while, you know that I have an affection for the flexibility of Mac OS X “widgets”, which (for those not in the know) are little programs that you can instantly summon or dismiss no matter what other program you’re in at the time. Very handy for doing small momentary tasks such as checking a calendar or a stock price, using a calculator… or, say, pausing or playing music.

Thus, my latest project:
a screenshot of my Roku Soundbridge Control widget

At this point, what you see doesn’t do anything but look unpretty. I knocked the interface together, and am in the process of trying to figure out how to get Javascript to interact with UPnP, a.k.a. “Universal Plug & Play”. I don’t know how long it will take me, but when I get a working prototype you’ll be the first to know.

I may, sooner than that, have an alpha version up that works on the virtually-guaranteed-to-break-on-a later-revision-of SoundBridge-software HTML interface, but in the meantime, if anybody out there knows of a good tutorial on getting Javascript to work with UPnP, or manipulating UPnP from within what is essentially a web browser, I would appreciate it. (Dashboard widgets in OS X are at their core little custom web pages being run directly by the OS).

Comments are invited and encouraged


Subscribe without commenting