Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OPTiM Cloud IoT OS でIoTはじめました / Hello IoT Wit...
Search
OPTiM
October 24, 2019
Programming
0
980
OPTiM Cloud IoT OS でIoTはじめました / Hello IoT With CIOS
OPTiM
October 24, 2019
Tweet
Share
More Decks by OPTiM
See All by OPTiM
Nuxt3マイグレーションについて / nuxt_migration
optim
0
100
挑戦を楽しむ!保守運用の管理課題への取り組み
optim
0
68
開発生産性を始める前に開発チームができること / optim-improve-development-productivity.pdf
optim
1
490
Go×LLMで新たなコード生成の可能性を探る / GolangDeveloperNight_Go×LLM
optim
0
380
スプリントレビュー(バザー形式)とそれを支えるCI CD / sprint-review-bazaar-and-supporting-cicd
optim
0
540
Vue.jsを用いて数万の農地データ情報を数秒で表示させるまでのカイゼンの軌跡
optim
1
320
Metabaseを使ったコスト可視化とコスト最適化への道 / sre-cost-visualization
optim
0
670
新卒がアプリをEKSにデプロイした話 / sre-newcomer-deploy-app-to-eks
optim
1
330
Rustのイテレーター完全制覇 / domination-of-the-rust-iterators
optim
3
3.1k
Other Decks in Programming
See All in Programming
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
180
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
1.9k
Contemporary Test Cases
maaretp
0
140
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
330
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
480
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
1
290
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
2
1.1k
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
2
670
카카오페이는 어떻게 수천만 결제를 처리할까? 우아한 결제 분산락 노하우
kakao
PRO
0
110
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
120
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
Click-free releases & the making of a CLI app
oheyadam
2
120
Featured
See All Featured
Bash Introduction
62gerente
608
210k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Facilitating Awesome Meetings
lara
50
6.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Building Adaptive Systems
keathley
38
2.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Being A Developer After 40
akosma
86
590k
Speed Design
sergeychernyshev
25
620
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
A designer walks into a library…
pauljervisheath
204
24k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Transcript
© 2019 OPTiM Corp. ‹#› © 2019 OPTiM Corp. 株式会社
OPTiM 技術統括本部 プラットフォーム技術戦略室 青木 OPTiM Cloud IoT OS でIoTはじめました
© 2019 OPTiM Corp. ‹#› © 2019 OPTiM Corp. 株式会社
OPTiM 技術統括本部 プラットフォーム技術戦略室 青木 OPTiM Cloud IoT OS 実践 Web Application with IoT
© 2019 OPTiM Corp. 3 © 2019 OPTiM Corp. 自己紹介
青木 株式会社OPTiM 技術統括本部 プラットフォーム技術戦略室 PoC案件, CloudIoTOSと連携したアプリケーション Work Favorite ピアノ, カメラ, 電子工作, 旅行 ,etc…. Status 19年度新卒エンジニア
© 2019 OPTiM Corp. 4 © 2019 OPTiM Corp. 自己紹介
青木 株式会社OPTiM 技術統括本部 プラットフォーム技術戦略室 第2種電気工事士 アマチュア無線技士4級 日商簿記3級 基本情報技術者 [陸,海]特殊無線技士 Etc… 取得資格
© 2019 OPTiM Corp. 5 © 2019 OPTiM Corp. これまで触ったもの、最近触ってるもの
(他色々)
© 2019 OPTiM Corp. 6 © 2019 OPTiM Corp. TECH
BLOGも執筆してます。 TECH BLOGも執筆してます。
© 2019 OPTiM Corp. 7 目次 自己紹介 やりたいこと
• 詳細な流れ • CIOSの特徴とメインに使うこと やったこと さいごに
© 2019 OPTiM Corp. 8 今回やりたいこと
© 2019 OPTiM Corp. 9 © 2019 OPTiM Corp. Device
Web Sensor Data
© 2019 OPTiM Corp. 10 © 2019 OPTiM Corp. その後…
Web Sensor Data Device
© 2019 OPTiM Corp. 11 © 2019 OPTiM Corp. Device
Web Sensor Data よくあるIoTでやりたいこと No:1 (私調べ)
© 2019 OPTiM Corp. 12 © 2019 OPTiM Corp. これらを実現するためには
© 2019 OPTiM Corp. 13 © 2019 OPTiM Corp. Device
Web WebSocket Server DB Server Machine Auth
© 2019 OPTiM Corp. 14 © 2019 OPTiM Corp. Device
Web WebSocket Server DB Server Machine Auth 見るべき人にのみ公開
© 2019 OPTiM Corp. 15 © 2019 OPTiM Corp. Device
Web WebSocket Server DB Server Machine Auth 多数のユーザのデバイス からのアクセス
© 2019 OPTiM Corp. 16 © 2019 OPTiM Corp. Device
Web WebSocket Server DB Server Machine Auth スケーラブルな実装
© 2019 OPTiM Corp. 17 © 2019 OPTiM Corp. Device
Web WebSocket Server DB Server Machine Auth
© 2019 OPTiM Corp. 18 © 2019 OPTiM Corp. Device
Web Sensor Data できればココ以外は考えたくない
© 2019 OPTiM Corp. 19 © 2019 OPTiM Corp. Device
Web WebSocket Server DB Server Machine Auth ここの代わりになるのが
© 2019 OPTiM Corp. 20 © 2019 OPTiM Corp.
© 2019 OPTiM Corp. 21 © 2019 OPTiM Corp.
© 2019 OPTiM Corp. 22 © 2019 OPTiM Corp. 詳しく説明すると時間が足りなくなっちゃうので
© 2019 OPTiM Corp. 23 © 2019 OPTiM Corp. 今回利用する部分を重点的にお話します
© 2019 OPTiM Corp. 18 © 2019 OPTiM Corp. SensorData
Visualize SensorData Visualize Publish Subscribe
© 2019 OPTiM Corp. 25 © 2019 OPTiM Corp. SensorData
Visualize SensorData Visualize ACL Datastore Etc…
© 2019 OPTiM Corp. 26 © 2019 OPTiM Corp. SensorData
Visualize ACL Messaging PubSub Datastore Etc…
© 2019 OPTiM Corp. 27 いざ、実践
© 2019 OPTiM Corp. 28 © 2019 OPTiM Corp. まずは、ここの設定から
時間あるかな???
© 2019 OPTiM Corp. 29 © 2019 OPTiM Corp. 必要なAPIスコープ
のみ許可 Clientタイプ : Client リソースオーナー:自分 OAuthClientの作成 ※自分のアカウントでログインしてます
© 2019 OPTiM Corp. 30 © 2019 OPTiM Corp. Messaging
: 有効 リソースオーナー:自分 チャネルの作成 Datastore : 無効 ※今回はデータを蓄積しないため。 ※自分のアカウントでログインしてます
© 2019 OPTiM Corp. 31 © 2019 OPTiM Corp. Channel
Publish Subscribe チャネルの動作 複数人
© 2019 OPTiM Corp. 32 © 2019 OPTiM Corp. Channel
Publish Subscribe チャネルの動作 複数台
© 2019 OPTiM Corp. 33 © 2019 OPTiM Corp. Channel
Pub Sub Pub Sub チャネルとの関係性 * : 1 : *
© 2019 OPTiM Corp. 34 © 2019 OPTiM Corp. 次はデバイスの設定
© 2019 OPTiM Corp. 35 © 2019 OPTiM Corp. 1.Token
Request 2.Websocket Connect 3.Publish Data 流れ
© 2019 OPTiM Corp. 36 © 2019 OPTiM Corp. 1.Token
Request 2.Websocket Connect 3.Publish Data 流れ OAuth Clientを利用
© 2019 OPTiM Corp. 37 © 2019 OPTiM Corp. 1.Token
Request 2.Websocket Connect 3.Publish Data 流れ OAuth Clientを利用 Channel ID + Token
© 2019 OPTiM Corp. 38 © 2019 OPTiM Corp. 1.Token
Request 2.Websocket Connect 3.Publish Data 流れ OAuth Clientを利用 Channel ID + Token
© 2019 OPTiM Corp. 39 © 2019 OPTiM Corp. ※最小構成なので注意
© 2019 OPTiM Corp. 40 © 2019 OPTiM Corp. Token
Channel CIOS FQDN Message Publish => ※最小構成なので注意
© 2019 OPTiM Corp. 41 © 2019 OPTiM Corp. 最後にWebApplication
© 2019 OPTiM Corp. 42 © 2019 OPTiM Corp. デバイスと同じ要領で
JavascriptによるWebsocket通信を行います
© 2019 OPTiM Corp. 43 © 2019 OPTiM Corp. ※最小構成なので注意
© 2019 OPTiM Corp. 44 © 2019 OPTiM Corp. ※先程のコードだけでは動
きません
© 2019 OPTiM Corp. 45 © 2019 OPTiM Corp. Channel
Pub Sub Pub Sub チャネルとの関係性 ということは・・・
© 2019 OPTiM Corp. 46 © 2019 OPTiM Corp. Channel
Pub Sub Pub Sub チャネルとの関係性 ブラウザ同士でも利用できます
© 2019 OPTiM Corp. 47 © 2019 OPTiM Corp. ※先程のコードだけでは動
きません 相手側 自分
© 2019 OPTiM Corp. 48 © 2019 OPTiM Corp. Device
Web Sensor Data できた!!!
© 2019 OPTiM Corp. 49 さいごに
© 2019 OPTiM Corp. 50 © 2019 OPTiM Corp. •
IoTって結構たいへん • 基盤さえあれば簡単に実装は出来る • Messaging PubSubは使いようによって化ける • 繋がるのは楽しい!! 感想
© 2019 OPTiM Corp. 51 © 2019 OPTiM Corp. •
IoTって結構たいへん • 基盤さえあれば簡単に実装は出来る • Messaging PubSubは使いようによって化ける • 繋がるのは楽しい!! 感想 一緒にIoTデビューしましょう!
© 2019 OPTiM Corp. ‹#› © 2019 OPTiM Corp.