0
Google Wave for Developers:
         Making Robots

        Patrick Chanezon, Google @chanezon

        Salvador Diaz, SFE...
Why build on Google Wave?

   • Real-time == Real-awesome
     o Self-explanatory

   • Workflow
      o Focused on bridgi...
Extensions in Wave
           The most common ways to extend Wave are to use:


      • Gadgets
        o Embed them in a ...
Wave Entities: Data Model
 “Show me your flowchart and conceal your tables, and I shall continue to be mystified.
 Show me...
Robot Architecture Overview




Wednesday, December 9, 2009
Wave Robot Concepts

   • Wave Robots...

         o   Live in the cloud.
         o   Are external (robotic) participants...
Wave Robots Essentials

   • APIs in Python and Java
   • Runs in Google App Engine
   • Events:
     o "Robot added to Wa...
Robot Examples
  Smiley

    """Smiley: Yet another smiley robot."""

    from waveapi import events
    from waveapi impo...
Other Robot Examples

   •   Swedish Chef
   •   Monty + Syntaxy (a match made in robot heaven)
   •   Wikify (wikifier@ap...
Robot Lists

   •   http://wave-samples-gallery.appspot.com/
   •   http://completewaveguide.com/guide/Wave_Bots
   •   ht...
Wave videos in a theater near you

   • What is Google Wave
     email reinvented
     http://www.youtube.com/watch?v=rDu2...
Robot Roadmap

     • New Robots wire protocol (v0.2)
        o Publish for community feedback
        o Implement Java an...
Beyond Robots: Wave federation
     • Open Source protocol http://www.waveprotocol.org
     • Open Source Google Wave Fede...
Beyond Robots: Wave federation




Wednesday, December 9, 2009
Summary – How to get started

   • Familiarize yourself with the developer sandbox.
     http://wave.google.com/a/wavesand...
Demo: Vacation Workflow Wave Extension




Wednesday, December 9, 2009
Upcoming SlideShare
Loading in...5
×

Leweb09 Building Wave Robots

2,626

Published on

Published in: Technology, News & Politics
1 Comment
7 Likes
Statistics
Notes
  • 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 http://www.slideshare.net/jesusd411/microsoft-office-nuestro-estilo-de-vida-3202387 Add me to your Favorites click on the heart that says Favorite. Thanks
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
2,626
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
63
Comments
1
Likes
7
Embeds 0
No embeds

No notes for slide

Transcript of "Leweb09 Building Wave Robots"

  1. 1. Google Wave for Developers: Making Robots Patrick Chanezon, Google @chanezon Salvador Diaz, SFEIR, @salvadordiaz December 9, 2009 Wednesday, December 9, 2009
  2. 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. 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. 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. 5. Robot Architecture Overview Wednesday, December 9, 2009
  6. 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. 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. 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. 9. Other Robot Examples • Swedish Chef • Monty + Syntaxy (a match made in robot heaven) • Wikify (wikifier@appspot.com) • CleanTXT (cleantxt@appspot.com) • Polly the Pollster (polly-wave@appspot.com) • Yelpful (yelpful@appspot.com) • TwitUsernames (twitusernames@appspot.com) • XMPP Lite (wave-xmpp@appspot.com) • Madoqua Wave Bot (blog-bot@appspot.com) • Emoticony (emoticonbot@appspot.com) • Inbeddable (inbeddable@appspot.com) • Easy Public (easypublic@appspot.com) Wednesday, December 9, 2009
  10. 10. Robot Lists • http://wave-samples-gallery.appspot.com/ • http://completewaveguide.com/guide/Wave_Bots • http://www.waverobots.com/ • http://www.cloudave.com/link/the-top-11-google-wave- robots-for-the-enterprise Wednesday, December 9, 2009
  11. 11. Wave videos in a theater near you • What is Google Wave email reinvented http://www.youtube.com/watch?v=rDu2A3WzQpo • Google Wave Pulp Fiction creative use of robots (strong language:-) http://www.youtube.com/watch?v=xcxF9oz9Cu0 • Introducing SAP Gravity, a Business Process Modeling Tool for Google Wave Wave for business http://www.youtube.com/watch?v=FaNhXPSCQWo Wednesday, December 9, 2009
  12. 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 +robot@appspot.com Wednesday, December 9, 2009
  13. 13. Beyond Robots: Wave federation • Open Source protocol http://www.waveprotocol.org • Open Source Google Wave Federation Prototype Server http://code.google.com/p/wave-protocol/ Wednesday, December 9, 2009
  14. 14. Beyond Robots: Wave federation Wednesday, December 9, 2009
  15. 15. Summary – How to get started • Familiarize yourself with the developer sandbox. http://wave.google.com/a/wavesandbox.com/ • Explore the docs. http://code.google.com/apis/wave • Stay up-to-date on our blog updates. http://googlewavedev.blogspot.com/ Wednesday, December 9, 2009
  16. 16. Demo: Vacation Workflow Wave Extension Wednesday, December 9, 2009
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×