Google Wave Extensions – Wave Toolkit

Update: You might find my latest posts on Google Wave helpful.

So I managed to join the select elite bandwagon that is the Google Wave preview, which entitled me to early access to Google’s new masterpiece and 8 invites to bribe friends with (although I only have a few, so the whole eight might not stretch too far…). I have to admit, I’m not sure what the fuss is about. It’s clever, really clever; but there’s not much to it yet. It is, for all intents and purposes, a well-marketed collaboration tool, or put simply: a clever chatroom. Time will tell though. Perhaps its usefulness is yet to be seen.

Being a devout geek, and a sucker for anything Google, I was led to explore the programming possibilities behind Wave. Rather brilliantly Google have created an API that will allow you to do one of two things: create a ‘Robot’ – an automated participant programmed by you – or embed your own ‘gadget’ in a wave (think a Google map, but your content). The API is rich, if its documentation can be a bit light in some respects (where the hell are the CreateBlip() and such methods documented?! All you get in the API docs are ‘Get*’ methods…pointless!).

Introducing Wave Toolkit

Having programmed plenty of bots for IRC and Eternal Lands over the years I had the experience and ideas behind creating an automated character that can be used to aid users, or simply provide a bit of light entertainment. So after plenty of reading and hacking, I managed to come up with Wave Toolkit; a simple Python robot for wave that provides features that are either lacking or a little tool that might aid your chatroom…err I mean collaborative-blue-sky-thinking…yeah.

To get a bot running you do need a Google App Engine account, which allowed me to explore this little world offered by Google. It’s cleverly done and nicely polished. Still think it’s just cleverly managed free-hosting though ;)

The capabilities of robots within the Google Wave extension API are pretty much exactly what a human participant can do: edit, post, delete and edit ‘blips‘, create waves, see who’s participating and apparently manipulate playback. It’s very fun writing something that can do all this too; that wonderful satisfying feeling of achievement when you spam “hello world” to a wave…

Wave Toolkit‘s in constant development so it might be a little ropey, but please feel free to add wave-toolkit@appspot.com as a contact and invite it to a wave, and feel free to suggest new things, report bugs or even tell me you love it. ;)

So back to coding more lovely Python, and perhaps writing something useful for all the wavers out there. Right? ;)

6 Comments

  1. Posted October 17, 2009 at 22:58 | Permalink

    I’m getting a 500 error when I visit the help page:

    ”’
    Error: Server Error

    The server encountered an error and could not complete your request.
    If the problem persists, please report your problem and mention this error message and the query that caused it.
    ”’

    Also, what do you do after you invite the bot to a wave? He didn’t respond to me :)

  2. Posted October 17, 2009 at 23:08 | Permalink

    @Steve, fixed – was a bizarre import error in the version I uploaded. Should be working fine now. Thanks for letting me know.

  3. Posted October 17, 2009 at 23:09 | Permalink

    Its first message will give you information about @help, which will give you a link to http://wave-toolkit.appspot.com/help where you’ll find a list of all the commands.

  4. dharaniw9r
    Posted October 19, 2009 at 06:13 | Permalink

    could you please send me inivitation to google wave

    thanks in advance

  5. Posted October 19, 2009 at 07:33 | Permalink

    dharaniw9r, sorry – none spare :(

  6. Posted October 19, 2009 at 16:04 | Permalink

    Very cool!!

    I want to write my own wave robot now :)

One Trackback/Pingback

  1. [...] Google Wave product is an application built using Google Web Toolkit. It allows users to complete the simple functions of Wave including messaging and drag-and-drop [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*