SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved
GotAPIの概要と技術解説
1
2015/6/2
デバイスWebAPIコンソーシアム勉強会資料
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved
現在のトレンドとしてスマートフォン等と各種デバイスの連携が注目されており、
様々な事業者が取組みを進めている。
ただし、OSや開発環境に依存する状況という従来からある課題は解決されていない。
レンズ型カメラ(Wifi) スマートウォッチ(Bluetooth) ヘッドマウントディスプレイ(Bluetooth/Wifi)
Android iOS Windows ・ ・ ・
・ ・ ・
各種デバイス
OS/開発環境
OSや開発環境に
依存してしまう!
Wifi/Bluetoothといった
通信プロトコルの違いや
独自仕様への依存も課題
2
背景
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 3
個々のデバイスの開発環境・
通信プロトコルの差異を吸収
スマートフォン上で動作する
擬似的なWebAPIにより、OSに
依存しない共通動作を実現
GotAPI (Generic Open Terminal API)とは
・多種多様なデバイスを統一したWebインタフェースに統合
・プラグイン方式により柔軟なデバイス追加を可能に
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 4
GotAPI の規格化の経緯
※ Opne Mobile Alliance:携帯電話関連の標準化団体
2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5
2014 2015
▲WorkItem化
▲ドコモから
OSS公開
コンセプト実証デモ、仕様寄書(拡張性担保、セキュリティ対策等)
▲mHealthSummit
デモ
▲仕様承認 ▲OMAから
仕様公開
ヘルスケアのAPI規定 WorkItem
▲MWC Vuzix社出展
スマートフォンを軸にした
汎用Webインターフェース
としてAT&T社がOMA※に提案
NTTドコモではGotAPIの議論に先行して
同様のコンセプトの実装を進めていたため、
仕様の寄書とオープンソース公開を実施。
リリース候補版仕様が
OMAにて承認
Got APIに基づく個別機器のAPI規定として、
ヘルスケア・ウェアラブルに関する
APIの規格化が富士通アメリカ社、ZTE社
等の提案によりWorkItemとして進行中。
ソフトバンクモバイル社、KDDI社との継続議論
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 5
デバイスの選択
ライトのAPIを指定 色を指定
ボール型ラジコン
スマートライト
ライトのAPIを指定 色を指定
Webブラウザからの動作例
共通のコードにより
“ライトを点灯する”
動作を実現
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved
従来のコンテンツの実現方法
6
Webアプリ
(HTML5+Javascript)
WebView
フレームワーク
ライブラリ
Kernel
デバイス
ネイティブ
アプリ
スマートフォンOS
ハイブリッドアプリ
ネイティブ
アプリ同様に
任意の機能
が利用可能
任意の機能
が利用可能
ネイティブ/ハイブリッドアプリ
からのデバイス利用
Webアプリ
(HTML5+Javascript)
Webブラウザ
フレームワーク
ライブラリ
Kernel
デバイス
スマートフォンOS
インターネット上のWebサイト
Webアプリ
(HTML5+Javascript)
Webアプリ
(HTML5+Javascript)
利用できる
機能がWeb
ブラウザの
仕様に依存
HTML5で
規定された
デバイスAPI
(JavaScript)
一般的なWebアプリ(Webブラウザ)
からのデバイス利用
・ネイティブアプリ ・・・OS、開発環境に依存
・ハイブリッドアプリ
・・・制限が少ないが、機能は組み込むWebviewフレームワークに依存し、開発言語も限られる
・ブラウザ(HTML5) ・・・機能がブラウザでできる事に限られる
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved
・スマートフォン上で動作する仮想サーバによりIP層を経由することで、
Webブラウザからでも高度な機能を実現
・アプリからも同様に利用可能
GotAPIでの仕組み(Android)
7
フレームワーク
ライブラリ
Kernel
デバイス
Android OS
GotAPI
(ネイティブアプリ)
仮想サーバ
IPネット
ワーク層
Webブラウザ
インターネット上のWebサイト
Webアプリ
(HTML5+Javascript)
Webアプリ
(HTML5+Javascript)
Webアプリ
(HTML5+Javascript)
IP-NW経由
で仮想サーバに
アクセス
ネイティブ
アプリとして
任意の機能
が利用可能
拡張プラグインC
拡張プラグインB
拡張プラグインA
デバイスアクセス要求
を各デバイスの制御
命令に変換
(プラグインで拡張)
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 8
・iOSでは擬似的な方式もしくはハイブリッドアプリとしての実現となるが、
Androidと共通のWebコンテンツが利用可能
Webアプリ
(HTML5+Javascript)
ブラウザUI
フレームワーク
ライブラリ
Kernel
デバイス
iOS
GotAPI ブラウザ
フレームワーク
中継・変換
IPネットワーク
層
カスタムWebView
拡張
HTTPポート
URLスキーム+
WebアプリのURL
Webブラウザ
Webサイト
Webアプリ
(HTML5+Javascript)
Webアプリ
(HTML5+Javascript)
Webアプリ
(HTML5+Javascript)
参考:iOSの場合
仕組みは違うが、
Webサイト上からは
共通の記述で利用
可能
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 9
Webアプリ(HTML5+Javascript)
Webブラウザ
Webエンジン
デバイス
低レイヤー
デバイスAPI規定
(JavaScript)
ドライバ/Profile相当
デバイスAPI規定
(JavaScript)
ドライバ/Profile
Webのレイヤーで見た場合
最近のWeb規格化の流れ
(Extensible Web)
低レイヤーの
ドライバ
Web
アプリ
Web
ブラウザ
スクリプト
エンジン
Python・
Ruby等
ネイティ
ブアプリ
GotAPI(仮想サーバ+REST API I/F)
デバイスWebAPI
(機能単位のREST API規定)
低レイヤーの
ドライバ
ドライバ/
Profile
デバイス
ある意味でエンタープライズ開発
における最近のアーキテクチャスタイル
(Micro Services)に近い?
一般的なWebアプリ(Webブラウザ)
からのデバイス利用
GotAPIでのデバイス利用
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 10
仮装サーバからのRESTベースのWebAPIによる機能アクセス
⇒実行環境、OS環境に依存せず、個々の機器の開発環境も意識する必要がない
WebAPIによるハードウェア機能アクセス
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 11
本体(仮想サーバ)
デバイス1用プラグイン
各種アプリ
デバイス1用ライブラリ
デバイス1
加速度 画面
加速度 画面 通知
デバイス2用プラグイン
デバイス2用ライブラリ
デバイス2
加速度 画面 通知 ソナー
加速度 画面 通知
ソナー
ソナー
通知(画面+振動の組合せ)
プラグイン探索
標準機能の規定は
SDK上でなされている
セキュリティ
デバイスに存在
しない標準機能
はデバイス機能
の組合せで実現
標準でない機能
はプラグイン内
で規定して利用
↓
任意の機能拡張
が可能
デバイス固有の
特殊な機能にも
対応(例:ソナー)
プラグインSDK プラグインSDK
振動
GotAPI
OMAでの規定
はこの部分のみ
プラグインによるWebAPI規定
・GotAPIの規定はWebインターフェースの実現についてのみ
・プラグインでの任意のAPI規定により、拡張性・汎用性を担保
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 12
参考:様々な観点からのセキュリティ対策も実施、標準化寄書
OMAからもWhite Paperを公開予定
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved
ライブラリ
Kernel
IPネットワーク処理・管理
13
フレームワーク
ネイティブ
アプリ
スマートフォンOS
Webブラウザ
Webブラウザ・NW処理
からアクセスできる範囲 ネイティブアプリ
としてアクセスできる
範囲(Sandbox)
ネイティブアプリ
とWebブラウザ・IPネットワーク
からアクセスできる範囲
セキュリティ対策の基本的なコンセプト
スマートフォン上にWebインターフェースを構築することで、
アプリ、Webのアクセス範囲の違いを使ったセキュリティ担保を実現
アプリストア
アプリのユニーク性を
Origin情報にドメイン名
(Origin情報)
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 14
スマートフォンでのWebブラウザからの利用
Webの標準的な仕組みのみで、Webサイト上にGotAPI利用のための導線
(アプリストアからのインストール・個々の機器設定)を提供可能
⇒ プリインストールでなくても利用でき、個々の機器設定もサポート
Gclue社Webサイトから試せます http://www.gclue.io/dwa/demo/#/
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 15
GotAPI ≠ デバイスWebAPI
参考:言葉の解説
デバイスコネクトWebAPI
NTTドコモが提供するGotAPIのオープンソース実装(MITライセンス)。
実用性向上のための拡張や検証のための設定項目あり。
デバイスWebAPIマネージャ
Gclue社が提供するデバイスコネクトWebAPIをビルドして各種アプリ
ストアで公開しているアプリケーション(デモ用のWebサイトとセット)
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 16
・GotAPIの規定はWebインターフェースの実現についてのみ
⇒ 基本的な機能セットはデバイスコネクトWebAPIで規定し、プラグイン開発
のためのライブラリも整備
デバイスアクセスのためのAPI
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 17
APIアクセスのデザインパターン
・One shot data : HTTP GET/POSTでの単純アクセス
例: アクセスした瞬間の加速度センサーの値を取得(繰り返し
値が欲しい場合はポーリング)
・Event driven data : PUT/DELETE、WebSocketでのイベント処理
例: 加速度センサーの値に変化があった瞬間の値を連続的に
自動取得
・Streaming data : URIの直接参照
例: カメラ映像を要求した場合に、OSやGotAPIの内部構造を
経由せずに映像リソースとしてアプリから直接利用。
シンプルで手軽なHTTPアクセスと、効率的なWebSocketによるイベント処理を両立
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 18
プラグインのラインナップ
・オープンな開発環境を提供するデバイスをプラグイン化
本日の懇親会でも数社がデモ予定
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 19
まとめ
・Webの標準的な技術のみで、デバイスアクセスのためのWebインターフェースを実現、
Webサイトから利用導線も用意できるのでプリインストールも不要
・仕様をOMAで標準化し、自由なライセンス(MIT)でオープンソース提供、コンテンツ開発や
デバイス対応のためのSDKも整備
・シンプルで手軽なHTTPでのアクセスから、セキュリティ対策を施したWebSocketによる
効率的なアクセスまで、目的に応じた機能アクセスが可能
まずはお気軽にお試しください
・様々なデバイスを利用したプロトタイピング
・手軽さが求められるハッカソン、開発者イベントでの活用
・デバイス向けのWebAPI設計に向けた検討ツールとして
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 20
Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 21
・スマートフォンをハブにして腕時計型の心拍数計の情報をHMDに表示
・同時にPCからHMDのカメラ映像を遠隔モニタリング
このようなデモがWeb開発の知識のみでつくれます!
参考:MWC2015でのVuzix社デモ

Más contenido relacionado

La actualidad más candente

Dynatrace が特別な7つの理由
Dynatrace が特別な7つの理由Dynatrace が特別な7つの理由
Dynatrace が特別な7つの理由Harry Hiyoshi
 
TypeScriptハンズオン第1回テキスト
TypeScriptハンズオン第1回テキストTypeScriptハンズオン第1回テキスト
TypeScriptハンズオン第1回テキストmizuky fujitani
 
Elmで始めるFunctional Reactive Programming
Elmで始めるFunctional Reactive Programming Elmで始めるFunctional Reactive Programming
Elmで始めるFunctional Reactive Programming Yasuyuki Maeda
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)NTT DATA Technology & Innovation
 
Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門tsukasamannen
 
AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2
AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2
AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2AbemaTV, Inc.
 
SHA-256を学ぼうとする
SHA-256を学ぼうとするSHA-256を学ぼうとする
SHA-256を学ぼうとするTakeru Ujinawa
 
Guide to GraalVM (JJUG CCC 2019 Fall)
Guide to GraalVM (JJUG CCC 2019 Fall)Guide to GraalVM (JJUG CCC 2019 Fall)
Guide to GraalVM (JJUG CCC 2019 Fall)Koichi Sakata
 
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPCマイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPCdisc99_
 
2018年8月 Just Skill研修資料
2018年8月 Just Skill研修資料2018年8月 Just Skill研修資料
2018年8月 Just Skill研修資料Serverworks Co.,Ltd.
 
Node-REDと出会って4年でようやくわかったSwitchノードの重要性
Node-REDと出会って4年でようやくわかったSwitchノードの重要性Node-REDと出会って4年でようやくわかったSwitchノードの重要性
Node-REDと出会って4年でようやくわかったSwitchノードの重要性SmartLight
 
Jakarta EE + MicroProfile との付き合い方
Jakarta EE + MicroProfile との付き合い方Jakarta EE + MicroProfile との付き合い方
Jakarta EE + MicroProfile との付き合い方Hirofumi Iwasaki
 
インフラエンジニアのためのRancherを使ったDocker運用入門
インフラエンジニアのためのRancherを使ったDocker運用入門インフラエンジニアのためのRancherを使ったDocker運用入門
インフラエンジニアのためのRancherを使ったDocker運用入門Masahito Zembutsu
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo!デベロッパーネットワーク
 
Edge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよEdge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよVirtualTech Japan Inc.
 
2011年度 新3年生向け
2011年度 新3年生向け2011年度 新3年生向け
2011年度 新3年生向けYuki Takahashi
 
Open stack概要とよくある議論
Open stack概要とよくある議論Open stack概要とよくある議論
Open stack概要とよくある議論shintaro mizuno
 

La actualidad más candente (20)

NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
 
Dynatrace が特別な7つの理由
Dynatrace が特別な7つの理由Dynatrace が特別な7つの理由
Dynatrace が特別な7つの理由
 
TypeScriptハンズオン第1回テキスト
TypeScriptハンズオン第1回テキストTypeScriptハンズオン第1回テキスト
TypeScriptハンズオン第1回テキスト
 
Elmで始めるFunctional Reactive Programming
Elmで始めるFunctional Reactive Programming Elmで始めるFunctional Reactive Programming
Elmで始めるFunctional Reactive Programming
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
 
Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門
 
AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2
AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2
AbemaTVのアーキテクチャの変遷 / AbemaTV DevCon 2018 TrackA Session A2
 
SHA-256を学ぼうとする
SHA-256を学ぼうとするSHA-256を学ぼうとする
SHA-256を学ぼうとする
 
JDK: 新しいリリースモデル解説(ver.2.1)
JDK: 新しいリリースモデル解説(ver.2.1)JDK: 新しいリリースモデル解説(ver.2.1)
JDK: 新しいリリースモデル解説(ver.2.1)
 
Guide to GraalVM (JJUG CCC 2019 Fall)
Guide to GraalVM (JJUG CCC 2019 Fall)Guide to GraalVM (JJUG CCC 2019 Fall)
Guide to GraalVM (JJUG CCC 2019 Fall)
 
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPCマイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPC
 
2018年8月 Just Skill研修資料
2018年8月 Just Skill研修資料2018年8月 Just Skill研修資料
2018年8月 Just Skill研修資料
 
Node-REDと出会って4年でようやくわかったSwitchノードの重要性
Node-REDと出会って4年でようやくわかったSwitchノードの重要性Node-REDと出会って4年でようやくわかったSwitchノードの重要性
Node-REDと出会って4年でようやくわかったSwitchノードの重要性
 
Jakarta EE + MicroProfile との付き合い方
Jakarta EE + MicroProfile との付き合い方Jakarta EE + MicroProfile との付き合い方
Jakarta EE + MicroProfile との付き合い方
 
インフラエンジニアのためのRancherを使ったDocker運用入門
インフラエンジニアのためのRancherを使ったDocker運用入門インフラエンジニアのためのRancherを使ったDocker運用入門
インフラエンジニアのためのRancherを使ったDocker運用入門
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
 
Edge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよEdge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよ
 
さくらのセキュアモバイルコネクトの仕組み
さくらのセキュアモバイルコネクトの仕組みさくらのセキュアモバイルコネクトの仕組み
さくらのセキュアモバイルコネクトの仕組み
 
2011年度 新3年生向け
2011年度 新3年生向け2011年度 新3年生向け
2011年度 新3年生向け
 
Open stack概要とよくある議論
Open stack概要とよくある議論Open stack概要とよくある議論
Open stack概要とよくある議論
 

Similar a GotAPIの概要と技術解説

ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
TIZEN at NTT DoCoMo
TIZEN at NTT DoCoMoTIZEN at NTT DoCoMo
TIZEN at NTT DoCoMoRyo Jin
 
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介Shin Takeuchi
 
ドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開についてドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開についてAPI Meetup
 
デバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開についてデバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開についてDevice WebAPI Consortium
 
タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217知礼 八子
 
たかがAPI,されどAPI、シナジーで広がるビジネスチャンス
たかがAPI,されどAPI、シナジーで広がるビジネスチャンスたかがAPI,されどAPI、シナジーで広がるビジネスチャンス
たかがAPI,されどAPI、シナジーで広がるビジネスチャンスOsaka University
 
企業におけるイノベーションの挑戦
企業におけるイノベーションの挑戦企業におけるイノベーションの挑戦
企業におけるイノベーションの挑戦Osaka University
 
コンテンツプラットフォームとしてのAndroidの将来性
コンテンツプラットフォームとしてのAndroidの将来性コンテンツプラットフォームとしてのAndroidの将来性
コンテンツプラットフォームとしてのAndroidの将来性Teiichi Ota
 
Software is eating the world
Software is eating the worldSoftware is eating the world
Software is eating the worldOsaka University
 
2010年Q1 携帯電話事業者 大手三社の決算サマリー
2010年Q1 携帯電話事業者 大手三社の決算サマリー2010年Q1 携帯電話事業者 大手三社の決算サマリー
2010年Q1 携帯電話事業者 大手三社の決算サマリーTakashi Ohmoto
 
クラウドEXPO 2011春資料 20110418
クラウドEXPO 2011春資料 20110418クラウドEXPO 2011春資料 20110418
クラウドEXPO 2011春資料 20110418知礼 八子
 
ドコモの取り組みを事例としたクラウドとAi
ドコモの取り組みを事例としたクラウドとAi ドコモの取り組みを事例としたクラウドとAi
ドコモの取り組みを事例としたクラウドとAi Osaka University
 
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016Device WebAPI Consortium
 
HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論
HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論
HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論Teiichi Ota
 
AI Monetization Landascape in US
AI Monetization Landascape in USAI Monetization Landascape in US
AI Monetization Landascape in USOsaka University
 
エフサミ2014 web rtcの傾向と対策
エフサミ2014 web rtcの傾向と対策エフサミ2014 web rtcの傾向と対策
エフサミ2014 web rtcの傾向と対策Kensaku Komatsu
 
第2回ビジネスモバイル研究会
第2回ビジネスモバイル研究会第2回ビジネスモバイル研究会
第2回ビジネスモバイル研究会Shuichi Yukimoto
 
スマートデバイス またはモバイルOS / Web OS / スマート何とか
スマートデバイス またはモバイルOS / Web OS / スマート何とかスマートデバイス またはモバイルOS / Web OS / スマート何とか
スマートデバイス またはモバイルOS / Web OS / スマート何とかYasuhiro Mawarimichi
 

Similar a GotAPIの概要と技術解説 (20)

ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
TIZEN at NTT DoCoMo
TIZEN at NTT DoCoMoTIZEN at NTT DoCoMo
TIZEN at NTT DoCoMo
 
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
 
ドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開についてドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開について
 
デバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開についてデバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開について
 
タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217
 
たかがAPI,されどAPI、シナジーで広がるビジネスチャンス
たかがAPI,されどAPI、シナジーで広がるビジネスチャンスたかがAPI,されどAPI、シナジーで広がるビジネスチャンス
たかがAPI,されどAPI、シナジーで広がるビジネスチャンス
 
企業におけるイノベーションの挑戦
企業におけるイノベーションの挑戦企業におけるイノベーションの挑戦
企業におけるイノベーションの挑戦
 
コンテンツプラットフォームとしてのAndroidの将来性
コンテンツプラットフォームとしてのAndroidの将来性コンテンツプラットフォームとしてのAndroidの将来性
コンテンツプラットフォームとしてのAndroidの将来性
 
Software is eating the world
Software is eating the worldSoftware is eating the world
Software is eating the world
 
2010年Q1 携帯電話事業者 大手三社の決算サマリー
2010年Q1 携帯電話事業者 大手三社の決算サマリー2010年Q1 携帯電話事業者 大手三社の決算サマリー
2010年Q1 携帯電話事業者 大手三社の決算サマリー
 
クラウドEXPO 2011春資料 20110418
クラウドEXPO 2011春資料 20110418クラウドEXPO 2011春資料 20110418
クラウドEXPO 2011春資料 20110418
 
5 16mobile
5 16mobile5 16mobile
5 16mobile
 
ドコモの取り組みを事例としたクラウドとAi
ドコモの取り組みを事例としたクラウドとAi ドコモの取り組みを事例としたクラウドとAi
ドコモの取り組みを事例としたクラウドとAi
 
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
 
HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論
HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論
HTML5は本当にFlashの代替になり得るのか?~Webテクノロジー進化論
 
AI Monetization Landascape in US
AI Monetization Landascape in USAI Monetization Landascape in US
AI Monetization Landascape in US
 
エフサミ2014 web rtcの傾向と対策
エフサミ2014 web rtcの傾向と対策エフサミ2014 web rtcの傾向と対策
エフサミ2014 web rtcの傾向と対策
 
第2回ビジネスモバイル研究会
第2回ビジネスモバイル研究会第2回ビジネスモバイル研究会
第2回ビジネスモバイル研究会
 
スマートデバイス またはモバイルOS / Web OS / スマート何とか
スマートデバイス またはモバイルOS / Web OS / スマート何とかスマートデバイス またはモバイルOS / Web OS / スマート何とか
スマートデバイス またはモバイルOS / Web OS / スマート何とか
 

Más de Device WebAPI Consortium

IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
IoTプラットフォーム「RouteZ(ルートジー)」のご紹介IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
IoTプラットフォーム「RouteZ(ルートジー)」のご紹介Device WebAPI Consortium
 
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方Device WebAPI Consortium
 
RT ミドルウェアの IoT プラットフォームへの適用
RT ミドルウェアの IoT プラットフォームへの適用RT ミドルウェアの IoT プラットフォームへの適用
RT ミドルウェアの IoT プラットフォームへの適用Device WebAPI Consortium
 
LPWA Sigfoxネットワークとクラウド連携
LPWA Sigfoxネットワークとクラウド連携LPWA Sigfoxネットワークとクラウド連携
LPWA Sigfoxネットワークとクラウド連携Device WebAPI Consortium
 
DeviceWebAPI and other standardization status of OMA CD WG
DeviceWebAPI and other standardization status of OMA CD WGDeviceWebAPI and other standardization status of OMA CD WG
DeviceWebAPI and other standardization status of OMA CD WGDevice WebAPI Consortium
 
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~Device WebAPI Consortium
 
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~Device WebAPI Consortium
 
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについてDevice WebAPI Consortium
 
音声によるデバイスWebAPIの操作
音声によるデバイスWebAPIの操作音声によるデバイスWebAPIの操作
音声によるデバイスWebAPIの操作Device WebAPI Consortium
 
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜Device WebAPI Consortium
 
デジタルカメラEXILIM を使ったプラグイン開発と商用展開について
デジタルカメラEXILIM を使ったプラグイン開発と商用展開についてデジタルカメラEXILIM を使ったプラグイン開発と商用展開について
デジタルカメラEXILIM を使ったプラグイン開発と商用展開についてDevice WebAPI Consortium
 
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについてドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについてDevice WebAPI Consortium
 
デバイスWebAPI実装のアップデートと利用事例について
デバイスWebAPI実装のアップデートと利用事例についてデバイスWebAPI実装のアップデートと利用事例について
デバイスWebAPI実装のアップデートと利用事例についてDevice WebAPI Consortium
 
IoTに最適なセキュアなVPN通信のご紹介
IoTに最適なセキュアなVPN通信のご紹介IoTに最適なセキュアなVPN通信のご紹介
IoTに最適なセキュアなVPN通信のご紹介Device WebAPI Consortium
 
RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状Device WebAPI Consortium
 
デバイスコネクト活用事例紹介
デバイスコネクト活用事例紹介デバイスコネクト活用事例紹介
デバイスコネクト活用事例紹介Device WebAPI Consortium
 

Más de Device WebAPI Consortium (20)

IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
IoTプラットフォーム「RouteZ(ルートジー)」のご紹介IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
 
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
 
NIDD (Non-IP Data Delivery) のご紹介
NIDD (Non-IP Data Delivery) のご紹介NIDD (Non-IP Data Delivery) のご紹介
NIDD (Non-IP Data Delivery) のご紹介
 
RT ミドルウェアの IoT プラットフォームへの適用
RT ミドルウェアの IoT プラットフォームへの適用RT ミドルウェアの IoT プラットフォームへの適用
RT ミドルウェアの IoT プラットフォームへの適用
 
LPWA Sigfoxネットワークとクラウド連携
LPWA Sigfoxネットワークとクラウド連携LPWA Sigfoxネットワークとクラウド連携
LPWA Sigfoxネットワークとクラウド連携
 
DeviceWebAPI and other standardization status of OMA CD WG
DeviceWebAPI and other standardization status of OMA CD WGDeviceWebAPI and other standardization status of OMA CD WG
DeviceWebAPI and other standardization status of OMA CD WG
 
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
 
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
 
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
 
音声によるデバイスWebAPIの操作
音声によるデバイスWebAPIの操作音声によるデバイスWebAPIの操作
音声によるデバイスWebAPIの操作
 
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
 
デジタルカメラEXILIM を使ったプラグイン開発と商用展開について
デジタルカメラEXILIM を使ったプラグイン開発と商用展開についてデジタルカメラEXILIM を使ったプラグイン開発と商用展開について
デジタルカメラEXILIM を使ったプラグイン開発と商用展開について
 
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについてドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
 
デバイスWebAPI実装のアップデートと利用事例について
デバイスWebAPI実装のアップデートと利用事例についてデバイスWebAPI実装のアップデートと利用事例について
デバイスWebAPI実装のアップデートと利用事例について
 
デバイス WebAPI設計の進め方
デバイス WebAPI設計の進め方デバイス WebAPI設計の進め方
デバイス WebAPI設計の進め方
 
IoTに最適なセキュアなVPN通信のご紹介
IoTに最適なセキュアなVPN通信のご紹介IoTに最適なセキュアなVPN通信のご紹介
IoTに最適なセキュアなVPN通信のご紹介
 
クラウド連携版デバイスWebAPI
クラウド連携版デバイスWebAPIクラウド連携版デバイスWebAPI
クラウド連携版デバイスWebAPI
 
RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状RaspberryPi(OSH)の産業利用の現状
RaspberryPi(OSH)の産業利用の現状
 
デバイスコネクト活用事例紹介
デバイスコネクト活用事例紹介デバイスコネクト活用事例紹介
デバイスコネクト活用事例紹介
 
node.js 版 GotAPI 実装 - node-gotapi
node.js 版 GotAPI 実装 - node-gotapinode.js 版 GotAPI 実装 - node-gotapi
node.js 版 GotAPI 実装 - node-gotapi
 

Último

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 

Último (11)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 

GotAPIの概要と技術解説

  • 1. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved GotAPIの概要と技術解説 1 2015/6/2 デバイスWebAPIコンソーシアム勉強会資料
  • 2. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 現在のトレンドとしてスマートフォン等と各種デバイスの連携が注目されており、 様々な事業者が取組みを進めている。 ただし、OSや開発環境に依存する状況という従来からある課題は解決されていない。 レンズ型カメラ(Wifi) スマートウォッチ(Bluetooth) ヘッドマウントディスプレイ(Bluetooth/Wifi) Android iOS Windows ・ ・ ・ ・ ・ ・ 各種デバイス OS/開発環境 OSや開発環境に 依存してしまう! Wifi/Bluetoothといった 通信プロトコルの違いや 独自仕様への依存も課題 2 背景
  • 3. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 3 個々のデバイスの開発環境・ 通信プロトコルの差異を吸収 スマートフォン上で動作する 擬似的なWebAPIにより、OSに 依存しない共通動作を実現 GotAPI (Generic Open Terminal API)とは ・多種多様なデバイスを統一したWebインタフェースに統合 ・プラグイン方式により柔軟なデバイス追加を可能に
  • 4. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 4 GotAPI の規格化の経緯 ※ Opne Mobile Alliance:携帯電話関連の標準化団体 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 2014 2015 ▲WorkItem化 ▲ドコモから OSS公開 コンセプト実証デモ、仕様寄書(拡張性担保、セキュリティ対策等) ▲mHealthSummit デモ ▲仕様承認 ▲OMAから 仕様公開 ヘルスケアのAPI規定 WorkItem ▲MWC Vuzix社出展 スマートフォンを軸にした 汎用Webインターフェース としてAT&T社がOMA※に提案 NTTドコモではGotAPIの議論に先行して 同様のコンセプトの実装を進めていたため、 仕様の寄書とオープンソース公開を実施。 リリース候補版仕様が OMAにて承認 Got APIに基づく個別機器のAPI規定として、 ヘルスケア・ウェアラブルに関する APIの規格化が富士通アメリカ社、ZTE社 等の提案によりWorkItemとして進行中。 ソフトバンクモバイル社、KDDI社との継続議論
  • 5. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 5 デバイスの選択 ライトのAPIを指定 色を指定 ボール型ラジコン スマートライト ライトのAPIを指定 色を指定 Webブラウザからの動作例 共通のコードにより “ライトを点灯する” 動作を実現
  • 6. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 従来のコンテンツの実現方法 6 Webアプリ (HTML5+Javascript) WebView フレームワーク ライブラリ Kernel デバイス ネイティブ アプリ スマートフォンOS ハイブリッドアプリ ネイティブ アプリ同様に 任意の機能 が利用可能 任意の機能 が利用可能 ネイティブ/ハイブリッドアプリ からのデバイス利用 Webアプリ (HTML5+Javascript) Webブラウザ フレームワーク ライブラリ Kernel デバイス スマートフォンOS インターネット上のWebサイト Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) 利用できる 機能がWeb ブラウザの 仕様に依存 HTML5で 規定された デバイスAPI (JavaScript) 一般的なWebアプリ(Webブラウザ) からのデバイス利用 ・ネイティブアプリ ・・・OS、開発環境に依存 ・ハイブリッドアプリ ・・・制限が少ないが、機能は組み込むWebviewフレームワークに依存し、開発言語も限られる ・ブラウザ(HTML5) ・・・機能がブラウザでできる事に限られる
  • 7. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved ・スマートフォン上で動作する仮想サーバによりIP層を経由することで、 Webブラウザからでも高度な機能を実現 ・アプリからも同様に利用可能 GotAPIでの仕組み(Android) 7 フレームワーク ライブラリ Kernel デバイス Android OS GotAPI (ネイティブアプリ) 仮想サーバ IPネット ワーク層 Webブラウザ インターネット上のWebサイト Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) IP-NW経由 で仮想サーバに アクセス ネイティブ アプリとして 任意の機能 が利用可能 拡張プラグインC 拡張プラグインB 拡張プラグインA デバイスアクセス要求 を各デバイスの制御 命令に変換 (プラグインで拡張)
  • 8. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 8 ・iOSでは擬似的な方式もしくはハイブリッドアプリとしての実現となるが、 Androidと共通のWebコンテンツが利用可能 Webアプリ (HTML5+Javascript) ブラウザUI フレームワーク ライブラリ Kernel デバイス iOS GotAPI ブラウザ フレームワーク 中継・変換 IPネットワーク 層 カスタムWebView 拡張 HTTPポート URLスキーム+ WebアプリのURL Webブラウザ Webサイト Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) 参考:iOSの場合 仕組みは違うが、 Webサイト上からは 共通の記述で利用 可能
  • 9. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 9 Webアプリ(HTML5+Javascript) Webブラウザ Webエンジン デバイス 低レイヤー デバイスAPI規定 (JavaScript) ドライバ/Profile相当 デバイスAPI規定 (JavaScript) ドライバ/Profile Webのレイヤーで見た場合 最近のWeb規格化の流れ (Extensible Web) 低レイヤーの ドライバ Web アプリ Web ブラウザ スクリプト エンジン Python・ Ruby等 ネイティ ブアプリ GotAPI(仮想サーバ+REST API I/F) デバイスWebAPI (機能単位のREST API規定) 低レイヤーの ドライバ ドライバ/ Profile デバイス ある意味でエンタープライズ開発 における最近のアーキテクチャスタイル (Micro Services)に近い? 一般的なWebアプリ(Webブラウザ) からのデバイス利用 GotAPIでのデバイス利用
  • 10. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 10 仮装サーバからのRESTベースのWebAPIによる機能アクセス ⇒実行環境、OS環境に依存せず、個々の機器の開発環境も意識する必要がない WebAPIによるハードウェア機能アクセス
  • 11. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 11 本体(仮想サーバ) デバイス1用プラグイン 各種アプリ デバイス1用ライブラリ デバイス1 加速度 画面 加速度 画面 通知 デバイス2用プラグイン デバイス2用ライブラリ デバイス2 加速度 画面 通知 ソナー 加速度 画面 通知 ソナー ソナー 通知(画面+振動の組合せ) プラグイン探索 標準機能の規定は SDK上でなされている セキュリティ デバイスに存在 しない標準機能 はデバイス機能 の組合せで実現 標準でない機能 はプラグイン内 で規定して利用 ↓ 任意の機能拡張 が可能 デバイス固有の 特殊な機能にも 対応(例:ソナー) プラグインSDK プラグインSDK 振動 GotAPI OMAでの規定 はこの部分のみ プラグインによるWebAPI規定 ・GotAPIの規定はWebインターフェースの実現についてのみ ・プラグインでの任意のAPI規定により、拡張性・汎用性を担保
  • 12. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 12 参考:様々な観点からのセキュリティ対策も実施、標準化寄書 OMAからもWhite Paperを公開予定
  • 13. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved ライブラリ Kernel IPネットワーク処理・管理 13 フレームワーク ネイティブ アプリ スマートフォンOS Webブラウザ Webブラウザ・NW処理 からアクセスできる範囲 ネイティブアプリ としてアクセスできる 範囲(Sandbox) ネイティブアプリ とWebブラウザ・IPネットワーク からアクセスできる範囲 セキュリティ対策の基本的なコンセプト スマートフォン上にWebインターフェースを構築することで、 アプリ、Webのアクセス範囲の違いを使ったセキュリティ担保を実現 アプリストア アプリのユニーク性を Origin情報にドメイン名 (Origin情報)
  • 14. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 14 スマートフォンでのWebブラウザからの利用 Webの標準的な仕組みのみで、Webサイト上にGotAPI利用のための導線 (アプリストアからのインストール・個々の機器設定)を提供可能 ⇒ プリインストールでなくても利用でき、個々の機器設定もサポート Gclue社Webサイトから試せます http://www.gclue.io/dwa/demo/#/
  • 15. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 15 GotAPI ≠ デバイスWebAPI 参考:言葉の解説 デバイスコネクトWebAPI NTTドコモが提供するGotAPIのオープンソース実装(MITライセンス)。 実用性向上のための拡張や検証のための設定項目あり。 デバイスWebAPIマネージャ Gclue社が提供するデバイスコネクトWebAPIをビルドして各種アプリ ストアで公開しているアプリケーション(デモ用のWebサイトとセット)
  • 16. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 16 ・GotAPIの規定はWebインターフェースの実現についてのみ ⇒ 基本的な機能セットはデバイスコネクトWebAPIで規定し、プラグイン開発 のためのライブラリも整備 デバイスアクセスのためのAPI
  • 17. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 17 APIアクセスのデザインパターン ・One shot data : HTTP GET/POSTでの単純アクセス 例: アクセスした瞬間の加速度センサーの値を取得(繰り返し 値が欲しい場合はポーリング) ・Event driven data : PUT/DELETE、WebSocketでのイベント処理 例: 加速度センサーの値に変化があった瞬間の値を連続的に 自動取得 ・Streaming data : URIの直接参照 例: カメラ映像を要求した場合に、OSやGotAPIの内部構造を 経由せずに映像リソースとしてアプリから直接利用。 シンプルで手軽なHTTPアクセスと、効率的なWebSocketによるイベント処理を両立
  • 18. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 18 プラグインのラインナップ ・オープンな開発環境を提供するデバイスをプラグイン化 本日の懇親会でも数社がデモ予定
  • 19. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 19 まとめ ・Webの標準的な技術のみで、デバイスアクセスのためのWebインターフェースを実現、 Webサイトから利用導線も用意できるのでプリインストールも不要 ・仕様をOMAで標準化し、自由なライセンス(MIT)でオープンソース提供、コンテンツ開発や デバイス対応のためのSDKも整備 ・シンプルで手軽なHTTPでのアクセスから、セキュリティ対策を施したWebSocketによる 効率的なアクセスまで、目的に応じた機能アクセスが可能 まずはお気軽にお試しください ・様々なデバイスを利用したプロトタイピング ・手軽さが求められるハッカソン、開発者イベントでの活用 ・デバイス向けのWebAPI設計に向けた検討ツールとして
  • 20. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 20
  • 21. Copyright© 2015 NTT DOCOMO, Inc. All rights reserved 21 ・スマートフォンをハブにして腕時計型の心拍数計の情報をHMDに表示 ・同時にPCからHMDのカメラ映像を遠隔モニタリング このようなデモがWeb開発の知識のみでつくれます! 参考:MWC2015でのVuzix社デモ