「GhostCluster」は、車両データを表示するTizen Web Appで作られたサンプルプログラムである(図5)。
ambから伝播される車両データを取得し、その結果をHTMLで描画している。現状は、図3のようにambからWebsocket経由で車両データを直接受け取って処理しているが、将来的には、図4のようにWRTのプラグインから取得する仕組みになっていく。
Tizen mobileのNative Framework(ネイティブフレームワーク)は、「OSP(Open Service Platform)」という。Tizen mobile上では、OSPで作られたアプリケーションを「Tizen Native Application」、EFLで作られたアプリケーションを「Platform Applitcation」として明確に分けている。Tizen IVIはOSPを導入していないので、Platform Applicationのみが動作する。Tizen IVIのネイティブアプリケーションを作成する際には、「Tizen SDK」をほとんど利用できないので注意が必要だ。
「dLeyna」は、DLNA(Digital Living Network Alliance)に準拠した通信環境を提供するデーモンだ。例えば、dLenyaを導入して車内ネットワークでDLNA環境を構築すれば、車載情報機器からDLNA経由で乗員の携帯電話に配信した映像コンテンツを楽しめるようになる。
dLeynaはネイティブアプリケーションに使う「DBus API」以外に、WebアプリケーションからDLNAを利用する「Web API」も提供している。APIには、「W3C gallery draft Media Dictionary」のサブセットの「Media Content API」、サーバからコンテンツを発見する「Media Server API」、デジタルメディアレンダラーである「Media Renderer API」などが用意されている。これらのAPIは、dLeynaのプロジェクトで、W3Cのドラフトも作成されている。
dLeynaで興味深いのはWeb APIの提供方法だ。dLeynaは、ambとは別のアプローチでシステムのリソースとWebアプリケーションをシームレスにつなぐプロトコルを提供している。
ambは、amb側でWebsocketの出力プラグインを用意することで実現しているが、dLeynaでは、「Cloudeebus」というプロキシサーバを利用し実現している(図6)。
Cloudeebusは、ブラウザに手を加えずにDBusとWeb APIの変換を行うため開発された機能であり、DBus APIをJavaScriptのAPIへ変換するサーバである。Cloudeebusでは、WAMP(WeSocket Application Messaging Protocol:WebScoketの上位プロトコル)を利用している(図7)。
ambとdLeynaのWeb APIの実装方法が異なるのは、dLeynaやambがTizenとは関係ない独立したプロジェクトであり、それぞれのコンポーネントの設計思想で作られているからだ。システムリソースをWeb APIとして提供することが今後のHTML5プラットフォームの課題ではあるが、WebsocketとClouldeebusが今後の指標になってくるのは間違いないだろう。
Copyright © ITmedia, Inc. All Rights Reserved.