Archive for the ‘google wave’ Category

Archivey the Robot

Monday, March 8th, 2010

Following hot on the heels of Pushy, I’ve implemented the companion application Archivey. This will delete all but the last five messages on a wave, excepting the top message. It’s meant to be used in conjunction with Pushy and any other chatty robots to keep the number of messages in a wave down to a manageable level.

Potential other uses would be in a chatting context: you don’t always want to see the complete history of a chat session and this could be a way to hide the noise. Remember that you can always see the complete history by clicking Playback on the wave, so the messages aren’t lost: they’re just archived.

To use, add archiveyrobot@appspot.com to a wave. Be warned, as soon as a new message is added it will merrily start deleting messages, so be careful!

Source code on github. Hope you like it: let me know if you find it useful.

Introducing Pushy – github notifications to google wave

Sunday, March 7th, 2010

I’ve been having a bit of a love affair with Google Wave recently. Like most people I watched the long introductory video, then tried out the sandbox last July and didn’t really get it. I then read this interesting post which spurred me on to try using it for actual work.

Guess what? It works. Our conversations have become more structured and organised. We’re finding that it does help with keeping everything together in one place, and is more ‘alive’ somehow than a traditional wiki.

So I thought: “Wouldn’t it be cool if you could have your github messages popping up in wave?”

So here’s the results of my handiwork: Pushy.

In simple terms, it’s a robot which accepts any form of HTTP post and adds the content as a new message on the wave. It has special handling for github post-receive hooks: it formats them nicely using a gadget.

How to use it

Log on to wave.google.com and add pushyrobot@appspot.com to a new wave. The robot will add a message giving you the URL to post to:

Pushys receive message

Then, when you post to this url (here I’m using curl):

$ curl -d "testing pushy" http://pushyrobot.appspot.com/push/googlewave.com/fjWFoDWkf

It will add the message to the wave:

The message appears

If you’re using the github notifications, simply add the URL verbatim to your project’s service hooks as a Post-Receive hook:

Github service hook configuration page

Click “Test Hook” and the wave will update. Any new commits to this project should now appear.

Here’s what the commit messages for github commits look like:

Github commit message view

Source code

The source code is at github.com/chrismdp/pushy. It’s my first Python project and first App Engine deployment, so be gentle :) I’d welcome forks and patches: especially if you extend the special formatting for other services.

Enjoy! Do let me know if you use it for anything useful.

UPDATE: The wave forum post discussing the robot is here.

UPDATE: Pushy now supports google code’s PostCommitWebHooks and formats them in a similar way to github commits.