An Arduino compatible Spark device from https://www.spark.io/ listens for status commands from a custom iOS app. When a status is received the colour of a BlinkM MaxM is toggled appropriately. The MaxM is housed inside an oversize novelty light bulb picked up from a local dollar shop.
The app currently supports In Office, Out of Office and Do Not Disturb statuses. Coming soon is "Working Offsite" and "In a Meeting". The In a Meeting status will be automatic via Google Calendar.
@mike It's a simple NodeJS based web service that the mobile app also polls so it can show the currently selected state. I opted for NodeJS since it's trivial to wire up oAuth for the Google API calls.
Are you using a server-side app to get data from the Google API or does the Spark board pull it directly?