GoogleWave BoFに参加してきました

 六本木のカラオケの一室で開かれたGoogleWaveのBoFに参加して来ました。GoogleI/Oに参加したid:a2cさんによる報告会です。
 内容はWaveの概況、実演とAPIの二本立て。

Waveの概況。

 現在は非常に不安定。アカウントも限られており、実質GoogleI/O参加者限定とのこと
 未実装な機能が多く、ドラックドロップは不安定。ごみ箱から戻せない。プレイバックは可能なものの、diffはなく、ブランチしたらしっぱなし。会員の削除も、アカウントについて同期しているAppsのコンタクトリストからしか行えない、という状況のようです。

 実演はGooogleMapsの同時コントロールと同時編集の実演。検索も同時コントロール。
 
 クライアントは完成度が上がれば結構使いやすそうです。GoogleAPPS等の連携はまだとのこと。
 基本的な感覚はGmailと同じ。ここに同時編集がついたようなものらしいです。。

API

 APIエクステンドとエンベデッドの二種類。前者にはさらにガジェットとボットの二種類があるとのこと。
 waveの構造は、アカウントごとのWaveのなかにwaveret。その中にブリップ。さらにその中にwaveletやブリップがある入れ子の構造で、この中にさまざまなものを入れるのが、ガジェットやエンデベットのようなエクステンド

bot

 ボットはイベントドリブン。ボットのオブジェクトを取得して、イベントに登録という、GoogleAPIのコーディングに慣れた人ならばおなじみのいつものアレです。

 リアルタイム翻訳ボットの実演ですが、これは動かなかったです(汗)日本語入力もダメダメ。(汗)
twitterクライアントとなるbotも紹介されていました。これはそのままだとタイムライン。入力するとtwitter検索、という優れものなのですが…バケバケ(^^;)。

ガジェット

 ガジェットはwaveの中に貼り付けられるもので、デモはピアノを共同演奏仕様としていたのですが…こちらも遅延がすごくて同時演奏にはなりませんでした。
 作り方は基本的にはiGoogleと同じ。ただし、Waveやブリップから状態を取得して、変更点をシェアした相手にパブリッシュできるのが違うところ。なのでメソッド名には数学的には差分を意味するdeltaがついています。

エンデベット

 外部に反映するもので、本来はリアルタイムに反映されますが、現状では遅延はあり。一部では「bloggerに投稿」と報道されていましたが、実際にはGoogleAPPEngine上に構築した、Bloggerっぽいインターフェースでした。
 おそらく、サーバー上にある程度のシステム構築は必要でしょう。
  

BotAPIの実際

 a2cさんがハッカソンで作成した、Pythonワンライナーbotをサンプルに解説。
 前述したとおり、イベントにメソッドを登録するだけで使えメソッドに対して投げられるプロパティの中にブリップのidが埋め込まれているので、そこにレスポンスを書き込めばOk。
 なので、単純なものですと非常に簡単に出来そうです。
 ただし、Google関連のAPIプログラミングに慣れている人ならば想像がつくとおり、高機能なものになるとかえってごちゃつきそうですね。

 さいごに、イアン・ルイスさんのデバックロボットの実演。起きているイベントがだーっと流れてくるので、何が起きているのかを見るにはたしかに便利そうです。
 

質問

 
 既読管理は?

  基本的に編集単位

 ブラウザリソースは? 
  
  CPUは食わない。でも結構メモリ食い。
 
誰が使うの? 

  密な関係な場合は非常に便利に使える。ログが残るIRCとして使える。メールの置き換えではなく、メールの置き換えもできるGoogleDocsとして使うのがいいのではないか? 実際、今もサン名感じで使っている、とのことでした
  
 ここでiPhoneアプリの実演がありました。最初エラーが出るものの実行は可能。

どう使ってみたらいのか?
  
 使わないとわからないけど、使ってみても解らないも、とのこと(笑) そこかハッカトンの様子に話は向かい、電話をかけるボットを作った人がいた、というエピソードが披露されました。そしてgoogle製の投票bot、Polyの実演。

「電話を掛けるbot」をきっかけとして、音声のやり取りはでききるか?という質問が出ましたが、現状ではできないそうです。サーバーを立てればできるけど難しそうですね。
 最後の質問はメンバーを他のメンバーが削除できるか? というものでしたが、今のところはそもそも機能がないんだそうです(^^;)
 ゴミ箱も表示はされるもののダミーなのだそうで。

まとめ

 現状、また課題も多く、かろうじて動くようになったばかり、というところです。サーバー負荷やレイテンシーなど、解決しないといけない課題も多いです。
 ただ、GoogleMapsの操作にあるように、集合知的なアプリケーションに応用すればかなり面白いことになるんじゃないかなと思います。
 早くいじってみたいですね。