Your SlideShare is downloading. ×
  • Like
Devfest 09 Building Wave Robots
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Devfest 09 Building Wave Robots


This is a presentation on building Google Wave Robots at Devfest 2009 in Buenos Aires Argentina on Nov 17, 2009 by Google Developer Advocates, Chris Schalk & Patrick Chanezon

This is a presentation on building Google Wave Robots at Devfest 2009 in Buenos Aires Argentina on Nov 17, 2009 by Google Developer Advocates, Chris Schalk & Patrick Chanezon

Published in Technology , News & Politics
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Google Wave for Developers: Making Robots Chris Schalk @cschalk Patrick Chanezon @chanezon Con: Martin Sarsale November 17, 2009
  • 2. Why build on Google Wave? •  Real-time == Real-awesome o  Self-explanatory •  Workflow o  Focused on bridging communication and workflow. •  Leverage o  New and exciting technology and foundation. •  Opportunity! o  New business opportunities.
  • 3. Extensions in Wave The most common ways to extend Wave are to use: •  Gadgets o  Embed them in a conversation o  Built with HTML+Javascript o  Interactive with the Wave and it’s participants o  Ex: maps, slideshows, search results •  Robots o  Are actual participants of a Wave which can ‘do things’  Exactly the same as a Wave participant o  Ex: content update, integration with other systems
  • 4. Wave Entities: Data Model “Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious.” Fred Brooks, The Mythical Man-Month •  Wave •  Wavelets •  Blips •  Documents
  • 5. Robot Architecture Overview
  • 6. Wave Robot Concepts •  Wave Robots... o  Live in the cloud. o  Are external (robotic) participants. o  Have full access to the wave. o  Respond to events on a wave. o  Are currently available for Java and Python APIs on Google App Engine.
  • 7. Wave Robots Essentials •  APIs in Python and Java •  Runs in Google App Engine •  Events: o  "Robot added to Wave" - WAVELET_SELF_ADDED o  ”New blip" - BLIP_SUBMITTED o  "Blip edited" - BLIP_VERSION_CHANGED o  "New participant" - WAVELET_PARTICIPANTS_CHANGED •  Responds to: o  Augmented or edited Wave content o  Invites from other participants o  Interaction with other systems outside of Wave
  • 8. Robot Examples Smiley """Smiley: Yet another smiley robot.""" from waveapi import events from waveapi import robot def OnBlipSubmitted(properties, context): blip = context.GetBlipById(properties['blipId']) contents = blip.GetDocument().GetText() contents = contents.replace(':(', unichr(0x2639)) # happy contents = contents.replace(':)', unichr(0x263A)) # sad blip.GetDocument().SetText(contents) if __name__ == '__main__': smiley = robot.Robot('Smiley') smiley.RegisterHandler( events.BLIP_SUBMITTED, OnBlipSubmitted) smiley.Run() (A complete and useful robot in a single slide... with room to spare!)
  • 9. Other Robot Examples •  Swedish Chef •  Monty + Syntaxy (a match made in robot heaven) •  Wikify ( •  CleanTXT ( •  Polly the Pollster ( •  Yelpful ( •  TwitUsernames ( •  XMPP Lite ( •  Madoqua Wave Bot ( •  Emoticony ( •  Inbeddable ( •  Easy Public (
  • 10. Robot Lists • • • • robots-for-the-enterprise
  • 11. Wave videos in a theater near you •  What is Google Wave email reinvented •  Google Wave Pulp Fiction creative use of robots (strong language:-) •  Introducing SAP Gravity, a Business Process Modeling Tool for Google Wave Wave for business
  • 12. Demo: Building Wave Robots
  • 13. Robot Roadmap •  New Robots wire protocol (v0.2) o  Publish for community feedback o  Implement Java and Python API parity •  Internal speed improvements for AppEngine robots. •  Robot Gateway / OpenSocial REST Access •  Robot access to OAuth controlled resources •  Better multiple wave access •  Sunset robot cron in favor of direct access to Wave servers. •  Gateway support: Improve the current tweety type of access to support outside addresses of the form address
  • 14. Beyond Robots: Wave federation •  Open Source protocol •  Open Source Google Wave Federation Prototype Server
  • 15. Beyond Robots: Wave federation
  • 16. Wave Robot Development Experience in Argentina Local Expert building Wave Robots! Martin Sarsale
  • 17. Summary – How to get started •  Familiarize yourself with the developer sandbox. •  Explore the docs. •  Stay up-to-date on our blog updates.