Campfire Beep

I’ve been living in Campfire quite a bit over the last few days. It’s a great app, well designed and very fast. But it suffers from a problem that iChat and other AIM clients do not have: it’s easy to forget about a chat room while working on something else because there’s no audio or visual notification that you missed a message.

I whipped up a tiny AppleScript that monitors the chat and beeps if there have been any changes. It’s simple but it works fine for me, and should make do until someone writes a full WebKit-based Campfire client app with more options, or until 37signals releases a supported public web services API.

Requirements and how it works:

  • Requires Safari. Does not work with Firefox or Camino.
  • Campfire must be in its own web browser window, or the front tab in any window.
  • Every 2 seconds, it grabs the HTML from the <div> that Campfire uses for the chat messages. If it has changed since the last time, it beeps.
  • Only beeps if Safari is not the frontmost application.
  • If you are in multiple chat rooms, only works if they are in their own window and visible on screen.

Download: Campfire_Beep.dmg (90K)

Just open the application in Script Editor to edit it. Or view the full source.

Comments? Email manton@manton.org. Enjoy!

Update: I updated the script so that it doesn’t display errors, more correctly identifies URLs, and supports multiple open Campfire chat windows.

This just in: 37signals added sound notification to Campfire today! So this little AppleScript is officially obsolete. I’d like to take credit for convincing them that such a feature was needed, but we all know how they love to build features that won’t roll-out until the 2nd week after launch. :-)

Manton Reece @manton