Your SlideShare is downloading. ×
Leweb09 Building Wave Robots
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Leweb09 Building Wave Robots


Published on

Published in: Technology, News & Politics
1 Comment
  • Hello! I congratulate you for your excellent presentation. It’s really interesting. I add your presentation as a favorite, I hope you visit my presentation, and also add me to your favorites. Thanks, greetings from Venezuela Add me to your Favorites click on the heart that says Favorite. Thanks
    Are you sure you want to  Yes  No
    Your message goes here
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 Patrick Chanezon, Google @chanezon Salvador Diaz, SFEIR, @salvadordiaz December 9, 2009 Wednesday, December 9, 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. Wednesday, December 9, 2009
  • 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 Wednesday, December 9, 2009
  • 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 Wednesday, December 9, 2009
  • 5. Robot Architecture Overview Wednesday, December 9, 2009
  • 6. Wave Robot Concepts • Wave Robots... o Live in the cloud. o Are external (robotic) participants. o Have full access to wave. o Respond to events on a wave. o Are currently available for Java and Python APIs on Google App Engine. Wednesday, December 9, 2009
  • 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 Wednesday, December 9, 2009
  • 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!) Wednesday, December 9, 2009
  • 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 ( Wednesday, December 9, 2009
  • 10. Robot Lists • • • • robots-for-the-enterprise Wednesday, December 9, 2009
  • 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 Wednesday, December 9, 2009
  • 12. 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 Wednesday, December 9, 2009
  • 13. Beyond Robots: Wave federation • Open Source protocol • Open Source Google Wave Federation Prototype Server Wednesday, December 9, 2009
  • 14. Beyond Robots: Wave federation Wednesday, December 9, 2009
  • 15. Summary – How to get started • Familiarize yourself with the developer sandbox. • Explore the docs. • Stay up-to-date on our blog updates. Wednesday, December 9, 2009
  • 16. Demo: Vacation Workflow Wave Extension Wednesday, December 9, 2009