Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Device WebAPI Consortium
PDF, PPTX
2,527 views
デバイス WebAPI設計の進め方
デバイスWebAPIコンソーシアム 第7回技術WG会合 株式会社NTTドコモ 山添 隆文 氏
Technology
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 24
2
/ 24
3
/ 24
4
/ 24
5
/ 24
6
/ 24
7
/ 24
8
/ 24
9
/ 24
10
/ 24
11
/ 24
12
/ 24
13
/ 24
14
/ 24
15
/ 24
16
/ 24
17
/ 24
18
/ 24
19
/ 24
20
/ 24
21
/ 24
22
/ 24
23
/ 24
24
/ 24
More Related Content
PDF
デバイスコネクト対応機の弊社確認結果とご相談
by
Device WebAPI Consortium
PDF
IoTに最適なセキュアなVPN通信のご紹介
by
Device WebAPI Consortium
PDF
デバイスコネクト活用事例紹介
by
Device WebAPI Consortium
PDF
デバイスWebAPI実装のアップデートと利用事例について
by
Device WebAPI Consortium
PDF
node.js 版 GotAPI 実装 - node-gotapi
by
Device WebAPI Consortium
PDF
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
by
Device WebAPI Consortium
PDF
クラウド連携版デバイスWebAPI
by
Device WebAPI Consortium
PPTX
デバイスWeb apiコンソーシアム 第四回資料(RemoteRelay with Thermal camera)
by
Iida Keisuke
デバイスコネクト対応機の弊社確認結果とご相談
by
Device WebAPI Consortium
IoTに最適なセキュアなVPN通信のご紹介
by
Device WebAPI Consortium
デバイスコネクト活用事例紹介
by
Device WebAPI Consortium
デバイスWebAPI実装のアップデートと利用事例について
by
Device WebAPI Consortium
node.js 版 GotAPI 実装 - node-gotapi
by
Device WebAPI Consortium
ドコモAIエージェントにおけるデバイスWebAPIの活用とサポートプログラムについて
by
Device WebAPI Consortium
クラウド連携版デバイスWebAPI
by
Device WebAPI Consortium
デバイスWeb apiコンソーシアム 第四回資料(RemoteRelay with Thermal camera)
by
Iida Keisuke
What's hot
PDF
指紋認証と「FIDO」について
by
Device WebAPI Consortium
PDF
日本初スマートホステルでのIoT活用事例
by
Device WebAPI Consortium
PDF
GotAPIの概要と技術解説
by
Device WebAPI Consortium
PDF
デバイス WebAPIによるスマートフォン周辺デバイスの活用
by
Device WebAPI Consortium
PDF
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
by
Device WebAPI Consortium
PDF
IoTの規格標準化動向とデバイスWebAPI
by
Akira Sasaki
PDF
デバイスWebAPIを用いた各種ソリューション適用事例の紹介
by
Device WebAPI Consortium
PDF
201606 DeviceWebAPI 第4回技術WG会合
by
Nagano Kosuke
PDF
ニフクラ mobile backend チームのCIツール活用事例紹介
by
富士通クラウドテクノロジーズ株式会社
PDF
【C-2・醍醐様】AIとAPIがITインフラにもたらす変化 ~プログラマブルなクラウド型Wi-Fi~
by
Developers Summit
PPTX
20181218 awsreinvent report
by
富士通クラウドテクノロジーズ株式会社
PDF
デバイスWebAPIによるIoTの普及拡大と応用事例
by
Device WebAPI Consortium
PDF
デバイスコネクトWebAPIの開発状況について
by
Device WebAPI Consortium
PDF
Azure IoT Edge for Linux on Windows (EFLOW)を学ぶ!
by
Jingun Jung
PDF
WeDX Flow Hands-on
by
Jingun Jung
PDF
WebRTCプラグインで広がるWi-Fiカメラのアプリケーション
by
Device WebAPI Consortium
PDF
L2延伸を利用したクラウド移行とクラウド活用術
by
富士通クラウドテクノロジーズ株式会社
PDF
2015/7/2、デバイスWebAPI(GotAPI)コンソーシアム 第一回技術WG 発表資料
by
sonycsl
PDF
Azureクラウドのネイティブアプリ、IoTとエッジAIの管理ソリューション
by
Jingun Jung
PDF
マスタリングTCP/IP ニフクラ編
by
富士通クラウドテクノロジーズ株式会社
指紋認証と「FIDO」について
by
Device WebAPI Consortium
日本初スマートホステルでのIoT活用事例
by
Device WebAPI Consortium
GotAPIの概要と技術解説
by
Device WebAPI Consortium
デバイス WebAPIによるスマートフォン周辺デバイスの活用
by
Device WebAPI Consortium
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
by
Device WebAPI Consortium
IoTの規格標準化動向とデバイスWebAPI
by
Akira Sasaki
デバイスWebAPIを用いた各種ソリューション適用事例の紹介
by
Device WebAPI Consortium
201606 DeviceWebAPI 第4回技術WG会合
by
Nagano Kosuke
ニフクラ mobile backend チームのCIツール活用事例紹介
by
富士通クラウドテクノロジーズ株式会社
【C-2・醍醐様】AIとAPIがITインフラにもたらす変化 ~プログラマブルなクラウド型Wi-Fi~
by
Developers Summit
20181218 awsreinvent report
by
富士通クラウドテクノロジーズ株式会社
デバイスWebAPIによるIoTの普及拡大と応用事例
by
Device WebAPI Consortium
デバイスコネクトWebAPIの開発状況について
by
Device WebAPI Consortium
Azure IoT Edge for Linux on Windows (EFLOW)を学ぶ!
by
Jingun Jung
WeDX Flow Hands-on
by
Jingun Jung
WebRTCプラグインで広がるWi-Fiカメラのアプリケーション
by
Device WebAPI Consortium
L2延伸を利用したクラウド移行とクラウド活用術
by
富士通クラウドテクノロジーズ株式会社
2015/7/2、デバイスWebAPI(GotAPI)コンソーシアム 第一回技術WG 発表資料
by
sonycsl
Azureクラウドのネイティブアプリ、IoTとエッジAIの管理ソリューション
by
Jingun Jung
マスタリングTCP/IP ニフクラ編
by
富士通クラウドテクノロジーズ株式会社
Similar to デバイス WebAPI設計の進め方
PDF
Mobile Web
by
Makoto Kato
PDF
VDC 5th - NTTドコモ ハンズオン資料
by
Keiichiro Fujii
PDF
Firefox OS - Blaze Your Own Path
by
dynamis
KEY
組込み技術とモバイル技術
by
Tomo Watanabe
PDF
Kilimanjaro Event
by
dynamis
PPTX
HTML5&API総まくり
by
Shumpei Shiraishi
PDF
iPhoneとAndroidのアプリ開発最新潮流
by
Rakuten Group, Inc.
KEY
AndroidとHTML5で変わる組込みの世界
by
Tomo Watanabe
PPTX
9th nov2012 kof2012
by
Kensaku Komatsu
PDF
MozOpenHardプロジェクトと そのコア技術について
by
Takagi Koichi
PPTX
WebIntentsにより拓かれる次のWeb
by
Kensaku Komatsu
PDF
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
by
Futomi Hatano
PDF
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
by
Osamu Monoe
PDF
モバイルOSとWeb標準とそれらへのアプローチ
by
Kisato
PDF
スマートデバイス またはモバイルOS / Web OS / スマート何とか
by
Yasuhiro Mawarimichi
PDF
オープンソースエコシステム #demodaytokyo
by
Shuichi Tsutsumi
PPTX
Swagger jjug ccc 2018 spring
by
kounan13
PPTX
HTML5とWeb開発に関する最新動向
by
Shumpei Shiraishi
PPTX
Phone gap+javascriptスマホアプリ開発(入門編)
by
Monaca
PDF
NPAPIを使ったandroid標準ブラウザの拡張方法
by
Naruto TAKAHASHI
Mobile Web
by
Makoto Kato
VDC 5th - NTTドコモ ハンズオン資料
by
Keiichiro Fujii
Firefox OS - Blaze Your Own Path
by
dynamis
組込み技術とモバイル技術
by
Tomo Watanabe
Kilimanjaro Event
by
dynamis
HTML5&API総まくり
by
Shumpei Shiraishi
iPhoneとAndroidのアプリ開発最新潮流
by
Rakuten Group, Inc.
AndroidとHTML5で変わる組込みの世界
by
Tomo Watanabe
9th nov2012 kof2012
by
Kensaku Komatsu
MozOpenHardプロジェクトと そのコア技術について
by
Takagi Koichi
WebIntentsにより拓かれる次のWeb
by
Kensaku Komatsu
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
by
Futomi Hatano
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
by
Osamu Monoe
モバイルOSとWeb標準とそれらへのアプローチ
by
Kisato
スマートデバイス またはモバイルOS / Web OS / スマート何とか
by
Yasuhiro Mawarimichi
オープンソースエコシステム #demodaytokyo
by
Shuichi Tsutsumi
Swagger jjug ccc 2018 spring
by
kounan13
HTML5とWeb開発に関する最新動向
by
Shumpei Shiraishi
Phone gap+javascriptスマホアプリ開発(入門編)
by
Monaca
NPAPIを使ったandroid標準ブラウザの拡張方法
by
Naruto TAKAHASHI
More from Device WebAPI Consortium
PDF
IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
by
Device WebAPI Consortium
PDF
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
by
Device WebAPI Consortium
PDF
NIDD (Non-IP Data Delivery) のご紹介
by
Device WebAPI Consortium
PDF
RT ミドルウェアの IoT プラットフォームへの適用
by
Device WebAPI Consortium
PDF
LPWA Sigfoxネットワークとクラウド連携
by
Device WebAPI Consortium
PDF
DeviceWebAPI and other standardization status of OMA CD WG
by
Device WebAPI Consortium
PDF
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
by
Device WebAPI Consortium
PDF
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
by
Device WebAPI Consortium
PDF
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
by
Device WebAPI Consortium
PDF
音声によるデバイスWebAPIの操作
by
Device WebAPI Consortium
PDF
デバイスWebAPI/Symphonyを軸としたIoTの展開について
by
Device WebAPI Consortium
PDF
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
by
Device WebAPI Consortium
PDF
デジタルカメラEXILIM を使ったプラグイン開発と商用展開について
by
Device WebAPI Consortium
PDF
RaspberryPi(OSH)の産業利用の現状
by
Device WebAPI Consortium
PDF
デバイスに対する第三者検証の知見
by
Device WebAPI Consortium
PDF
デバイスコネクトWebAPIを利用したVR展示システムの導入事例について
by
Device WebAPI Consortium
PDF
ヒューマンビジョンコンポ(HVC-P2)について
by
Device WebAPI Consortium
PDF
メディア統合プラットフォーム機能のデバイスWebAPIによる実装について
by
Device WebAPI Consortium
PDF
デバイスWebAPIによるEXILIMカメラシリーズの制御
by
Device WebAPI Consortium
PDF
Web-based IoT standardization activity including OMA GotAPI and DWAPI
by
Device WebAPI Consortium
IoTプラットフォーム「RouteZ(ルートジー)」のご紹介
by
Device WebAPI Consortium
IoTを中心としたデジタルトランスフォーメーションが変える未来の働き方
by
Device WebAPI Consortium
NIDD (Non-IP Data Delivery) のご紹介
by
Device WebAPI Consortium
RT ミドルウェアの IoT プラットフォームへの適用
by
Device WebAPI Consortium
LPWA Sigfoxネットワークとクラウド連携
by
Device WebAPI Consortium
DeviceWebAPI and other standardization status of OMA CD WG
by
Device WebAPI Consortium
APPS JAPAN 出展報告と小型心拍センサmyBeatシリーズの紹介~
by
Device WebAPI Consortium
社会ニーズの解決を実現するIoTセンサ ~オムロンのセンシング技術~
by
Device WebAPI Consortium
第0回仕様策定サブWG会合報告 - 仕様作成プロセスについて
by
Device WebAPI Consortium
音声によるデバイスWebAPIの操作
by
Device WebAPI Consortium
デバイスWebAPI/Symphonyを軸としたIoTの展開について
by
Device WebAPI Consortium
スマートスピーカー Clova に至る LINE のメッセージングテクノロジー発展の系譜
by
Device WebAPI Consortium
デジタルカメラEXILIM を使ったプラグイン開発と商用展開について
by
Device WebAPI Consortium
RaspberryPi(OSH)の産業利用の現状
by
Device WebAPI Consortium
デバイスに対する第三者検証の知見
by
Device WebAPI Consortium
デバイスコネクトWebAPIを利用したVR展示システムの導入事例について
by
Device WebAPI Consortium
ヒューマンビジョンコンポ(HVC-P2)について
by
Device WebAPI Consortium
メディア統合プラットフォーム機能のデバイスWebAPIによる実装について
by
Device WebAPI Consortium
デバイスWebAPIによるEXILIMカメラシリーズの制御
by
Device WebAPI Consortium
Web-based IoT standardization activity including OMA GotAPI and DWAPI
by
Device WebAPI Consortium
デバイス WebAPI設計の進め方
1.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 1 デバイスWebAPI設計の進め方 2017/7/14 株式会社NTTドコモ
2.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved デバイスWebAPI技術のおさらい 2
3.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved メガネ型 デバイス ひとつひとつのデバイスや規格にあわせ、それぞれの環境での開発が必要 温度 センサー Android 時計型 デバイス アクション カメラ スマートトイ (おもちゃ) iPhone Windows 様々な実行環境、開発環 境 様々な 通信プロトコル 様々なデバイス ネイティブ アプリ Webアプリ/ Webブラウザ ハイブリッド アプリ 無線LAN Bluetooth USB … … … デバイス毎のSDK,API、仕様等 スマート 家電A規格 心拍数計 体重計 スマート 家電B規格 Android用 A規格SDK iOS用 B規格API Android用 Cデバイス向け 管理アプリ D規格用 接続仕様 iOS用 A規格SDK BLE Android アプリ開発者 Webアプリ 開発者 iOSアプリ 開発者 … E用クラウド データ取得API スクリプト言語 開発者 … デバイスを 使いたい開発者 開発 スマートフォンにつながる様々なデバイスの現状 3
4.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved Android アプリ開発者 Webアプリ 開発者 iOSアプリ 開発者 スクリプト言語 開発者 デバイスを 使いたい開発者 メガネ型 デバイス 温度 センサー Android 時計型 デバイス アクション カメラ スマートトイ (おもちゃ) iPhone Windows 様々な実行環境、開発環 境 様々な 通信プロトコル 様々なデバイス ネイティブ アプリ Webアプリ/ Webブラウザ ハイブリッド アプリ 無線LAN Bluetooth USB … … … デバイス毎のSDK,API、仕様等 スマート 家電A規格 心拍数計 体重計 スマート 家電B規格 Android用 A規格SDK iOS用 B規格API Android用 Cデバイス向け 管理アプリ D規格用 接続仕様 iOS用 A規格SDK BLE … E用クラウド データ取得API 色々な仕様を 覚えるのが大変 環境にあわせた 作りこみが必要 通信の仕組みの 違いにあわせた 開発が必要 開発環境の 構築が大変 デバイスアクセス が制限された環境 … そもそも 作れない ひとつひとつのデバイスや規格にあわせ、それぞれの環境での開発が必要 スマートフォンにつながる様々なデバイスの現状 4
5.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved メガネ型 デバイス デバイスの持つ機能に、共通の記述(WebAPI)でアクセスする仕組みで 現状の課題を解決 温度 センサー Android 時計型 デバイス アクション カメラ スマートト イ (おも ちゃ) iPhone Windows 様々な実行環境、開発環 境 様々なデバイス ネイティブ アプリ 無線LAN Bluetooth USB … … …スマート 家電A規 格 心拍数計 体重計 スマート 家電B規 格 Android用 A規格SDK iOS用 B規格API Android用 Cデバイス向け 管理アプリ D規格用 接続仕様 iOS用 A規格SDK BLE … E用クラウド データ取得API … … Web インター フェース Webアプリ/ Webブラウザ ハイブリッド アプリ 共通の記述 (WebAPI) Android アプリ開発者 Webアプリ 開発者 iOSアプリ 開発者 スクリプト言語 開発者 デバイスを 使いたい開発者 違いを意識する 必要がなくなる 仕組みの違いを 意識する必要なし 様々な 通信プロトコル デバイス毎のSDK,API、仕様等 機能 デバイス1 デバイス2 デバイス3 ライト 画面 加速度 心拍数 カメラ 通知 画面 加速度 通知 スマートフォン 経由での、他の 環境からの利用 デバイスを機能 の集合として表現 どの開発者も 共通の記述を 覚えるだけ デバイスWebAPIとは? 5
6.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 参考:そもそもWebAPIとは? 6 Web API 【 Web Application Programming Interface 】 ウェブAPI Web APIとは、コンピュータプログラムの提供する機能を外部の別のプログラムから 呼び出して利用するための手順・規約(API:Application Programming Interface)の 類型の一つで、HTTPなどWebの技術を用いて構築されたもののこと。 IT用語辞典e-words(http://e-words.jp/w/Web_API.html)より リクエスト レスポンス HTTP GET POST PUT DELETE JSON、XML、HTML、 リソース(画像データ等)、 WebSocket等 … WebAPI(HTTPリクエスト)記述のお作法 ・RESTfulという設計思想に従うのが一般的だが、 細かいところでは諸説あり ・UpperCamelCase、lowerCamelCase、snake_case ・サブドメインとして表すか、パスとして表すか ・バージョン表記(整数、小数、つけるかどうか) ・APIの粒度(パスとして表すか、リクエストで 送る中身(JSON等)に書くか)
7.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved フレームワーク ライブラリ Kernel デバイス Android OS 仮想サーバ IPネットワーク層 Webブラウザ Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) Webアプリ (HTML5+Javascript) 拡張プラグインC 拡張プラグインB 拡張プラグインA デバイスアクセス要求を 各デバイスの制御命令に 変換(プラグインで拡張) ネイティブアプリ として任意の機能 が利用可能 IPネットワーク経由で 仮想サーバにアクセス デバイスWebAPI インターネット上のWebサイト スマートフォン上で動作する仮想サーバに、スマートフォン内部のIPネットワーク 層を経由することで、Webブラウザからでも高度な機能アクセスを実現 ネイティブアプリからも同様に利用可能 どうやって実現しているか 7
8.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 8 デバイスWebAPI (機能単位のREST API規定) デバイスWebAPI (機能単位のREST API規定) Webアプリ(HTML5+Javascript) Webブラウザ Webエンジン デバイス 低レイヤー デバイスAPI規定 (JavaScript) ドライバ/Profile相当 デバイスAPI規定 (JavaScript) ドライバ/Profile 最近のWeb規格化の流れ (Extensible Web) 低レイヤーの ドライバ Web アプリ Web ブラウザ スクリプト エンジン Python・ Ruby等 ネイティブ アプリ 仮想サーバ+REST API I/F (GotAPIでの規定部分) デバイスWebAPI (機能単位のREST API規定) 低レイヤーの ドライバ ドライバ/ Profile デバイス ある意味でエンタープライズ開発 における最近のアーキテクチャスタイル (Micro Services)に近い? 一般的なWebアプリ(Webブラウザ) からのデバイス利用、トレンド デバイスWebAPIでのデバイス利用 ドライバ/Profile相当ドライバ/Profile相当 ドライバ/Profileドライバ/Profile Webのトレンドで見た場合※2年前の資料
9.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 9 Webアプリ(HTML5+Javascript) Webブラウザ Webエンジン デバイス 低レイヤー デバイスAPI規定 (JavaScript) ドライバ/Profile相当 デバイスAPI規定 (JavaScript) ドライバ/Profile 低レイヤーの ドライバ 一般的なWebアプリ(Webブラウザ)からのデバイス利用 ドライバ/Profile相当ドライバ/Profile相当 ドライバ/Profileドライバ/Profile ブラウザでのデバイスAPIの現状 カメラ、マイク等 の一部機能への 対応が若干進む Chromeブラウザが WebBluetoothを 正式サポート開始 Webブラウザも限定的にデバイス機能アクセスの範囲が拡大中だが 前述の課題は残ったまま
10.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 10 Webのトレンドから見てデバイスWebAPIはどうなったか? デバイスWebAPI (機能単位のREST API規定) デバイスWebAPI (機能単位のREST API規定) Webアプリ(HTML5+Javascript) Webブラウザ Webエンジン デバイス 低レイヤー デバイスAPI規定 (JavaScript) ドライバ/Profile相当 デバイスAPI規定 (JavaScript) ドライバ/Profile 最近のWeb規格化の流れ (Extensible Web) 低レイヤーの ドライバ Web アプリ Web ブラウザ スクリプト エンジン Python・ Ruby等 ネイティブ アプリ 仮想サーバ+REST API I/F (GotAPIでの規定部分) デバイスWebAPI (機能単位のREST API規定) 低レイヤーの ドライバ ドライバ/ Profile デバイス 一般的なWebアプリ(Webブラウザ) からのデバイス利用、トレンド デバイスWebAPIでのデバイス利用 ドライバ/Profile相当ドライバ/Profile相当 ドライバ/Profileドライバ/Profile ある意味でエンタープライズ開発 における最近のアーキテクチャスタイル (Micro Services)に近い?
11.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved WebAPIのトレンド 11 ・サーバレスアーキテクチャ 自前サーバではなく、AWS(Amazon Web Serivce)等のクラウド基盤 を活用したサービス設計 ・マイクロサービス 一枚板なサービス基盤を作るのではなく、OSといった実行環境や 開発環境の違う小さなサービスを組み合わせて一つのサービスを 提供する設計。サービス間の環境の違いを吸収してつなげるため に、WebAPIが用いられる。 ・WebAPI設計の国際標準化 AWSのAPI Gateway等で使われているAPI記述仕様のSwaggerをベー スとした標準化が、マイクロソフト,Google等が立ち上げたOpen API Initiativeで進行中。 WebAPIのトレンド(API記述の標準化)を デバイスWebAPIでも活用
12.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved デバイスWebAPIの現状 12 ・デバイスWebAPIでのSwagger仕様の活用 ・ローカル環境からクラウド環境への拡張 ・ドキュメント整備
13.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 13 ・RESTful APIのドキュメントや、サーバ、クライアントコード、エディタ、 またそれらを扱うための仕様(YAML/JSON)などを提供するフレー ムワーク ・Google、IBM、Microsoft等がOpen API InitiativeというSwagger 仕様に基づくWebAPI標準化団体を設立 (仕様の名前もSwaggerからOAS:Open API Specificationに) ・Amazonは上記団体に入っていないが、AWS API Gatewayでも利 用されている Swaggerとは
14.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 14 デバイスWebAPIでもSwaggerベースでのモデルファーストの フレームワーク提供 ⇒同一のAPI設計で、様々な環境での機能提供を実現 Android開発環境 デバイスコネクト プラグイン環境 プラグイン実装 デバイス依存 のSDK等 API 仕様 iOS開発環境 デバイスコネクト プラグイン環境 プラグイン実装 デバイス依存 のSDK等 現在 API仕様から各環境のコードを生成 以前 一般的なアプリ開発のやり方 機能の対応付け 実装への落とし込み作業 API仕様 Swaggerツール API ドキュメント Android用 ソースコード iOS用 ソースコード Node.js用 ソースコード デバイス依存のSDK等 機能の対応付け 自動生成 自動 生成 自動生成自動生成 Swaggerベースでのモデルファースト開発
15.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 以前のデバイスWebAPIの構造 15 本体(仮想サーバ) デバイス1用プラグイン 各種アプリ デバイス1用ライブラリ デバイス1 加速度 画面 加速度 画面 通知 デバイス2用プラグイン デバイス2用ライブラリ デバイス2 加速度 画面 通知 ソナー 加速度 画面 通知 ソナー ソナー 通知(画面+振動の組合せ) プラグイン探索 セキュリティ プラグインSDK プラグインSDK 振動 デバイスWebAPI デバイスWebAPI マネージャ デバイスWebAPI プラグイン
16.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 現在のデバイスWebAPIの構造 16 本体(仮想サーバ) デバイス1用プラグイン 各種アプリ デバイス1用ライブラリ デバイス1 加速度 画面 加速度 画面 通知 デバイス2用プラグイン デバイス2用ライブラリ デバイス2 加速度 画面 通知 ソナー 加速度 画面 通知 API設計情報 ソナー 通知(画面+振動の組合せ) プラグイン探索 セキュリティ プラグインSDK プラグインSDK 振動 デバイスWebAPI デバイスWebAPI マネージャ デバイスWebAPI プラグイン API設計情報 ソナー プラグインからAPI設計を 取得できるように拡張
17.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 17 Swaggerでのスケルトンコード生成 ・DeviceConnect-SpecレポジトリにAPI仕様を Swagger 2.0形式で取りまとめて公開 https://github.com/DeviceConnect/DeviceConnect-Spec こちらのAPI記述を元にして、 API設計の議論をしていきたい
18.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 18 Swaggerでのスケルトンコード生成 DeviceConnect CodegenAPI仕様を書いた JSONファイル Android用 スケルトンコード リファレンス プラグインAPK ビルド
19.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 19 デバイスWebAPI マネージャー デバイスWebAPI プラグイン API設計 Symphony エージェント Symphonyクラウド API API設計API設計API設計 Android端末 iOS端末 Linux端末 (node.js) Windows端末 (node.js) クラウド環境 (node.js) IoTゲートウェイ (node.js) IoTゲートウェイ (Android) 各プラットフォームのSymphony エージェント+デバイスWebAPI 利用者A向けAPI ・ライトの電源、色 ・テレビのチャンネル 利用者B向けAPI ・ライト電源、色 ・テレビ電源、チャンネル ・カギの開閉 ライト、テレビ、エアコンの仕様 ダッシュボード ・機能アクセス権 ・ユーザ管理 Symphonyの構造 API設計とダッシュボードからの 設定により、クラウド上のAPIが 動的に生成される API設計 カギの仕様 API API Webサービス画面
20.
DeviceConnectの目指すところ 20 Bigdata処理クラウド 5Gネットワーク 様々な解析・認識機能のオープン提供 クラウド ローカル スマートフォン エッジコンピューティング デバイスコネクトのクラウド化 機能の参照元・参照先をローカルからクラウド にするだけ 様々なデバイス様々なデバイス 様々なデバイス IoTデバイス 協創(+d)の実現 将来 デバイスコネクト ⇒ローカルデバイスのWeb化 現状 プ ロ ト コ ル マルチレイヤーでの プロトコルにより、 将来的にサービスと デバイスをおさえる ことを目指している サービス 一般的なIoT規格の 狙い ローカルとクラウドの間の Webインターフェースのみを スマートフォンを軸にしておさえた うえで、クラウドへの発展を 目指す さらなる次世代 への発展 様々なIoT規格 デバイスコネクトの狙い サービス基盤 様々なIoT規格様々なIoT規格 クラウドから ローカルに 近づく面も 取り込めるものは 何でも取り込む 今あるデバイスは世の中の 他のIoT規格化では対象外 2年前に作った資料
21.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 21 ドキュメント整備 ・デザインパターン:用途・目的に応じたAPIの設計指針 ・API作成ガイドライン:API記述の共通ルール
22.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved ・One shot data : HTTP GET/POSTでの単純アクセス 例: アクセスした瞬間の加速度センサーの値を取得(繰り返し 値が欲しい場合はポーリング) ・Event driven data : PUT/DELETE、WebSocketでのイベント処理 例: 加速度センサーの値に変化があった瞬間の値を連続的に 自動取得 ※ただし、あくまでイベントとしての処理であり、大容量データは対象としない ・Streaming data : URIの直接参照 例: 大容量の加速度センサーログの取得、 低遅延・高サンプリングレートでのリアルタイムの加速度 センサー値の取得等 シンプルで手軽なHTTPアクセスと、効率的なWebSocketによるイベント処理を両立 デバイスWebAPIのデザインパターン 22
23.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 23 API作成ガイドライン ・APIの階層構造 /gotapi/profile[/interface][/attribute] ・命名規則 例: PUT /gotapi/mediaPlayer/play ※lowerCamelCase 誤: PUT /gotapi/meida_payer/play ※snake_case PUT /gotapi/meida-payer/play PUT /gotapi/MeidaPayer/Play ※UpperCamelCase PUT /gotapi/meidapayer/play ※ただし、大文字・小文字の違いについては互換性のために内部的には許容している ・レスポンス定義、エラーコード 等、API記述の共通ルールを整備 https://github.com/DeviceConnect/DeviceConnect-Docs/wiki/Specification-Api-Guidelines
24.
Copyright© 2017 NTT
DOCOMO, Inc. All rights reserved 24 https://github.com/DeviceConnectUsers/Community/ 意見交換の場について GitHubのDeviceConnectはドコモで立ち上げたプロジェクト DeviceConnectUsersはドコモ管理外のGithub.ioでのコミュニティサイト (立ち上げ:MOONGIFTさん)
Download