はじめに
Google Waveは、GoogleがGoogle I/O 2009で発表した新しいコミュニケーション&コラボレーションツールです。Google Waveを用いると、メールのようなメッセージのやりとりから、チャットのようなリアルタイムのコミュニケーションまで幅広いレスポンスタイムのコミュニケーションが実現できます。
Google Waveの一番の特徴は、1つのドキュメントに対し複数人でリアルタイムの編集ができるところでしょう。また、その編集がコンフリクトしないことがプロトコルレベルで保証されています。Google Waveは操作変換という仕組みを用い、低レイテンシかつ編集の衝突がないドキュメントの編集機能を実現しています。
Google Waveは2つの方法でGoogle Waveを拡張する方法を提供しており、今回は2つのうちの1つであるWaveガジェットを作ります。WaveガジェットはGoogle Wave上のドキュメントであるWave(ウェーブ)に貼り付け、Waveの参加者とそのガジェットを共有することができます。
本稿では割愛しますがもう一つの方法として、「Waveロボット」があります。WaveロボットはWaveに対するユーザの操作に反応し、任意の処理を行うプログラムを書くことができます。
対象読者
- Google Waveに興味がある方
- Googleの新しい技術に興味がある方
必要な環境
- Google Waveアカウント
- Waveガジェットのソースコードを公開する場所
Google Gadgets Editorを使用する場合は、Google Gadgets Editor上から公開できるため不要です。
主なキーワード
用語 | 概要 |
Google Wave | Googleの新しいプロダクトであるコミュニケーション&コラボレーションツール。 |
Wave | Google Wave上で扱うドキュメントの単位の1つ。Gmailで言うところのメールのスレッドのようなもの。 |
Waveガジェット | Waveに貼り付け、Waveの参加者と共有することができるガジェット。 |
Waveガジェットとは
最初にWaveガジェットについて説明します。「Waveガジェット」とはWaveに貼り付けられる小さなアプリケーションのことです。基本的にはGoogleガジェットと同じなのですが、Googleガジェットとの最大の違いはWaveの参加者と共有して使うことができる点です。
GoogleガジェットはiGoogleやGoogleデスクトップに貼り付けて、自分だけで利用します。Waveガジェットではそのユーザー数が複数人になるわけです。Waveガジェットではそれをとてもシンプルな仕組みで実現しているので、簡単にWaveガジェットを作成することができます。
今回作成するWaveガジェット
今回作成するガジェットは投票ガジェットです。
Waveに貼り付けて参加者にそれが○(グッド)か×(バッド)かを投票してもらいます。そしてその合計と集計を表示します。
機能一覧
- ○(グッド)を集計し表示する機能
- ×(バッド)を集計し表示する機能
- ○(グッド)と×(バッド)の合計値を表示する機能
投票ガジェットを作成する場合、本来であれば同じ人からの投票は1回に制限する必要があります。しかし、今回は自分で何度も投票して動作を確認する必要があるため制限は設けません。
画面
作成するWaveガジェットは、次のような画面になります。
WaveガジェットはXMLで記述するため、画面のHTMLはXMLに埋め込む形で記述します。また、プログラムのJavaScriptコードもHTMLに埋め込みます。よってXMLの構成は次の図のようになります。もちろんJavaScriptのコードは外部のjsファイルをリンクしてもかまいません。