アンケートご協力のお願いgihyo.jpでは,2010年度に向けて豪華プレゼントが当たる読者属性アンケートを実施しております。ご協力ください。

gihyo.jp » DEVELOPER STAGE » 連載 » 最速!Google Wave API解説 » 第1回 ガジェットAPI

最速!Google Wave API解説

第1回 ガジェットAPI

2009年5月28日,Googleのデベロッパーカンファレンス「Google I/O 2009」のキーノートにおいて大々的に発表されたGoogle Waveは,聴衆に熱狂を持って迎えられました。そのキーノートにおいてスピーカーは「Google WaveはProductであり,Platformであり,Protocolだ」と述べました(編注)。

本連載ではその3つのPの内の2つ目,PlatformとしてのGoogle Waveについて説明します。

編注
著者執筆のGoogle I/O 2009のイベントレポート記事も参照ください。

なお,Google Waveは現在も急ピッチで開発が進められているプロダクトであり,本連載に掲載する画面遷移・ソースコードなどは最新ではない可能性があります。記事に沿って作業していて違和感を覚えた場合にはGoogleの公開しているドキュメントを適宜参照してください。

API概観

私たち開発者から見えるPlatformとしてのGoogle Waveは3種類のAPIからなります。

Robots API Extensions Waveを拡張するためのAPI
Gadgets API
Wave Embed API Waveの機能を外部から利用するためのAPI

APIごとの違いを大まかに説明すると以下のようになります。

Robots API
Waveでの入力をサーバ側で処理をするためのAPI。例:チャットボット(人工無能)
Gadgets API
クライアント側でWave内のイベントを処理をするためのAPI。JavaScriptで記述することが多い。例:Google Mapガジェット
Wave Embed API
Google Wave以外のサービスにGoogle Waveの機能を組み込むためのAPI

3つのうちRobots APIとGadgets APIはGoogle Wave自体に機能を追加するAPIとしてExtensionsと呼ばれ,Wave Embed APIとは区別されています。

連載第1回目の今回は,上記3つのうちExtensionsに所属するGadgets APIについて説明します。公式ドキュメントではRobots APIが先に説明されていますが,Gadgets APIはGoogle Waveの大きな特徴の一つであるリアルタイム通信を扱うAPIであることと,Robots APIがGadgets APIを操作することもできるAPIであることから,Gadgets APIを先に説明した方がわかりやすいでしょう。

Gadgets API

シンプルなガジェット

ガジェットとはHTML,CSS,JavaScriptなどをXMLで包みiGoogleやOpenSocial等のコンテナに機能を追加するための仕組みで,Google Waveのガジェットも基本的にはiGoogleやOpenSocial等と全く同じです。これは実際にソースコードを見た方が早いでしょう。公式ドキュメントから引用してみます。

リスト1 シンプルなガジェット(公式ドキュメントより引用

<?xml version="1.0" encoding="UTF-8" ?>
<Module>
  <ModulePrefs title="Hello Wave">
    <Require feature="rpc" />
  </ModulePrefs>
  <Content type="html">
    <![CDATA[
    <script type="text/javascript"
       src="http://wave-api.appspot.com/public/wave.js"></script>
       Hello, Wave!
    ]]>
  </Content>
</Module>

<Require feature="rpc" /> タグでRPCコールの使用を宣言している部分と,<Content>タグ内部でwave.jsスクリプトを読み込んでいる部分が特徴的ですが,このシンプルな例ではiGoogleなどのガジェットと何ら変わるところがないことが理解できるでしょう。

ガジェットの実行

それではガジェットを実際にWave上で実行してみましょう。ガジェットのXMLにはグローバルなURIが必要ですが,本XMLはすでにhttp://gadget-doc-examples.googlecode.com/svn/trunk/wave/hello.xmlに用意されていますので,このURIをそのまま使います。

まずは真ん中のWaveにある「New Wave」ボタンを押下して新規にWaveを開きます。

図1 New Waveボタン

図1 New Waveボタン

画面右上の,ユーザー名の隣にある「Debug」ボタンを押下します。

図2 Debugボタン

図2 Debugボタン

メニューから「Add Gadget」を選択すると「Gadget gallery」が開きます。

図3 Debugメニュー

図3 Debugメニュー

図4 Gadget galleryダイアログ

図4 Gadget galleryダイアログ

Gadget galleryの一番下にある「URL of gadget module XML」テキストフィールドにガジェットXMLのURIを入力し,「Add by XML」ボタンを押下すると,先ほど作成したWaveに指定したガジェットが挿入されます。

図5 挿入されたガジェット

図5 挿入されたガジェット

挿入されたガジェットに先ほどXMLで指定した Hello, Wave! が表示されていることを確認してください。

著者プロフィール

あんどうやすし

シーサー株式会社 プログラマ。Google App Engine API Expert。

Google I/O翌日にGoogleオフィスで開かれたWave Hackathonに潜り込んできました。そこで得られた知識を,記憶が温かいうちにみなさんと共有できればと思います。

URLhttp://d.hatena.ne.jp/technohippy/

Wave ID:technohippy@wavesandbox.com

コメント

コメントの記入

パスサポ

多数の情報処理技術者試験対策書籍の発行実績を誇る技術評論社がお届けする,資格試験合格サイト「めざせ! 情報処理試験 パスサポ」が開設されました。

ピックアップ

サクセスストーリーに続く,快適サーバー運用管理のヒント!

データの増大,煩雑な管理,システムダウン,セキュリティなど,迫りくる課題からシステム管理者の負担を軽くするポイントを解説します。

gihyo.jp インフラエンジニア情報局

ネットワークやITにかかわるあらゆる業種で必要とされるインフラエンジニアに向けた技術情報や心構え,その魅力について多角的に紹介。

テストエンジニア ステーション

いま,ITに関わるあらゆる開発業務で注目されつつあるテスト系エンジニアをターゲットにしたコンテンツサイトを展開します。

一行クイックアンケート

gihyo.jpで取り上げてほしいネタは?

※検索はページ右上の検索ボックスをご利用ください。

その他の連載

読むウェブ ~本とインタラクション

ディスプレイで読む活字とそのインタラクション(interaction:相互作用)について,最新Webを紹介しながら読み解いていく。

いま,見ておきたいウェブサイト

この連載では,国内外の最新のウェブサイトを隔週更新で取り上げ,これら最新サイトの特徴や素晴らしい部分を,さまざまな角度から解説していきます。

Windows phoneアプリケーション開発入門

Windows Marcketplace for Mobileがサービス開始され,作成したアプリケーションを個人でも世界をターゲットに公開できる環境が整ってきました。これを機にWindows phoneアプリケーションの開発をしてみませんか?

ここは知っておくべき!Windows Server 2008技術TIPS

5年ぶりのサーバOSとなったWindows Server 2008が出荷されて早2年。2009年にはR2が出荷され,再び注目を集めています。発売前から実施したトレーニングによって感じた,インフラエンジニアの方々に知っておいていただきたい機能を中心にご紹介します。

キーパーソンが見るWeb業界

本連載はWeb Site Expert/gihyo.jpとの連動企画です。阿部淳也, 長谷川敦士, 森田雄のお三方による,Web業界をテーマにした座談会です。

きたみりゅうじの聞かせて珍プレー

ソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。みなさんからの投稿もお待ちしてます!

ActionScript 3.0で始めるオブジェクト指向スクリプティング

野中文雄氏が,簡単なスクリプトは書いたことがあるという初級者を対象に,ActionScript 3.0の基本からクラス定義までを解説します。

まだ間に合う「ITパスポート」受験対策 原山先生の短期合格塾

この連載では,4月18日のITパスポート試験の受験に向けて,短い期間で効率良く受験対策を行う方法や,確実に得点するための裏ワザなどを伝授していきます。

連載一覧

gihyo.jp

  • DEVELOPER STAGE
  • ADMINISTRATOR STAGE
  • WEB+DESIGN STAGE
  • LIFESTYLE STAGE
  • SCIENCE STAGE
  • NEWS & REPORT

書籍案内

  • 新刊書籍
  • 書籍ジャンル一覧
  • 書籍シリーズ一覧
  • 新刊ピックアップ
  • ロングセラー
  • 電脳会議

定期刊行物一覧

  • Software Design
  • WEB+DB PRESS
  • Web Site Expert
  • 組込みプレス