3月13日にニフティクラウド mobile backend 勉強会 #7「IoT × ネットワーク」が開催されました。70名超の方々がご参加いただき、NTTコミュニケーションズの小松さん、ぷらっとホームの松下さんにお話を伺いました。
今回はその勉強会レポートになります。その1として、NTTコミュニケーションズ 小松さんの発表を紹介したいと思います。
Web of Thingsの現状と最新Webプロトコルにより拡がる可能性
Web of Things(WoT)とはモノのWebのことです。ポテンシャルとしては、WoTはIoTアプリケーションの作成を簡単にする存在と言えます。
IoTを振り返ってみると、コンセプト自体は1980年代初頭からありました。その後、90年代末にRFIDが普及したことで認知されるようになってきています。そしてここ数年でまた注目を集めているのは、具体的なビジネスが動き始めているからではないかと考えています。例えばスマートメータ(メータ内に通信機能を持たせた次世代電力計)があります。
例えばIoTの概要としては次のように考えられます。
そんな中でWoTの立ち位置がどこかと言うと、次の赤枠で囲まれた部分になります。
89年来HTTPが使われてきました。そして2009年くらいからWebSocketが出てきています。これはWebブラウザとサーバ間で相互通信を可能にするプロトコルです。これによってモノの操作が可能になってきます。
さらに2012、3年から出てきたのがWebRTCです。特徴としては映像ストリーミングが可能であったり、P2Pが可能になるというのが大きなポイントです。
WebRTCを使った事例としてはChromeCastがあります。Googleから発売しているデバイスですが、パソコンやスマートフォンの画面をテレビに映し出すことができます。ここで使われているのがWebRTCになります。
さらにユニークなデモとしてROMOを使ったWebRTCによる操作および写真撮影アプリがありました。
https://www.youtube.com/watch?v=fpM9FKL0lg8
そして幼稚園に通えない子供がiPadを通してロボットを操作し、友達を会話すると言ったような試みも実際に行われています。
WoTに関する最新標準化動向
W3CではWoTをもっと加速化させていくべく、標準化に関する検討が進んでいます。その中には前述したセカンドスクリーンに関する内容も含まれています。現在のWebではWebサーバを自動検知するような機能はなく、専用アプリケーションやプラグインを使わなければなりません。なおiOS SafariではAirPlayでの検知などに際して独自のAPIを使っています。
実際、NTTコミュニケーションズさんはW3Cにてその辺りのAPI(Presentation API)に関する拡張を提案しています。
質問では以下のような項目があがっていました。
Q. WebRTCでは遅延が気になります
- ネットワーク状況によってレスポンスは大きく変わってきます。LANであればもちろん高速ですが、3Gですと数百ms遅れる場合もあります。ただ、遅延についてはもう一つ要因があります。それは端末の処理速度です。例えば同じAndroidのChromeブラウザであっても、ハードウェア性能によっては動作遅延が発生することがあります。
Q. 子供の顔が表示されていたロボットは、iPadの画面は専用アプリではなく普通のWeb表示なのでしょうか?
- あの画面はiPadままです。WebRTCで飛ばした映像をそのまま表示しています。