WebIntentsとSocket APIでブラウザから家電が操作できる。HTML5 Conference 2012
HTML5のコミュニティ「html5.org」主催のイベント「HTML5 Conference 2012」が9月8日、慶應大学日吉キャンパスで開催されました。ボランティア主催のイベントでありながら、約1000人の来場者と4トラック20セッション以上という規模は、現在のHTML5への大きな注目度を示しているようです。
Publickeyでは、セッションの中からWebの最新動向に関連した「WebIntents」と「WebRTC」に関する記事を2本公開します。
- WebIntentsとSocket APIでブラウザから家電が操作できる。HTML5 Conference 2012
- WebRTCはブラウザ上でリアルタイムコミュニケーションをするためのフレームワーク。HTML5 Conference 2012
本記事は、NTTコミュニケーションズ 小松健作氏による「WebIntentsにより拓かれる次のWeb」の内容をかいつまんで紹介します。
WebIntentsにより拓かれる次のWeb
NTTコミュニケーションズ 小松健作氏。
まずはWebからテレビが操作できる、というデモを紹介します。(左のスクリーン上でWebページでメニューを選ぶと、右のテレビのスイッチが入る)
このテレビは別にWebから操作できるような仕組みを仕込んであるわけではなくて、至って普通のテレビです。つまり、テレビもWebの中に入ってきている。テレビ以外にも、カメラやプリンタなどいろんなものすべてが、なんでもWebなんだ、ということになってきています。
クラウドもローカルもテレビも全部シームレスにWeb。ひとつのプラットフォームですべてが動き出す、まさにOne Webです。
このセッションではこれに関連した技術、WebIntents、Device APIなどについて紹介します。
WebIntentsはWebアプリケーションをつなげる
WebIntentsとは、Webアプリケーション同士をつなげる仕組みです。今回、HTML5 Conference 2012のサイトにも仕込んでみました。このボタンを押すと、GmailやTwitter、Bloggerなどにシェアするためのダイアログボックスが表示されます。
WebIntentsには、WebIntentsにアプリケーションを登録する「Registration(レジストレーション)」と、WebIntentsを呼び出す「Invoke(インボーク)」の2つがあります。
WebIntentsはいまWorking Draftの状態なので、まだ変更があるかもしれません。
Device APIでデバイス内部へアクセス
Device APIsワーキンググループは以前の方針を変更して、デバイス内部に専用のWebサーバを立て、これを経由して例えば内部のカレンダープロセスにアクセスすることにしました。
これによって開発者からは共通のAPIでアクセスでき、デバイス内部のAPIは隠蔽できるため、既存のデバイスベンダーの賛同が得られやすくなりました。
WebIntentsを使えば、ユーザーは同じモデルでGoogle Calendarでも、デバイス内部のカレンダーでもどちらもアクセスできます。
DLNAをSocket APIで叩く
でも、ローカルネットワークにデバイスがあるとしたら、どうやってその内部のWebサーバのIPアドレスを知るのでしょう?
このテレビはDLNA(Digital Living Network Alliance)対応。DLNAの実装は、テレビなどをリモート操作するためにSOAPで通信を行います。実はそのためにWebサーバが積んであります。
そしてUPnP(Universal Plug and Play)では、IPマルチキャストを使って自動発見することができます。
あとはWebブラウザからこれらを使えるようにすること。
実はChromeブラウザのChrome Packeged Appsでは、普通のJavaSceriptではできないことがいっぱいできるようになっていて、Socket APIを使って普通にソケットのコーディングができます。
そうするとブラウザからいろいろできる。このテレビのDLNAに対して、ブラウザからSocket APIを使ってUPnPでデバイスのWebサーバを発見し、それを叩けばいい。これが最初にお見せしたデモです。
いまSys AppsワーキンググループというところでRaw Socket APIの標準化が進んでいます。これでWebブラウザからSSHクライアントなどもできる。すごく面白い世界が広がるだろうと思います。
あわせて読みたい
WebRTCはブラウザ上でリアルタイムコミュニケーションをするためのフレームワーク。HTML5 Conference 2012
≪前の記事
ザッカーバーグ氏の「HTML5に賭けたのは失敗」発言には続きがある。長期的にはHTML5への期待も語る