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
1.2k
OPTiM Cloud IoT OS でIoTはじめました / Hello IoT With CIOS
OPTiM
October 24, 2019
Tweet
Share
More Decks by OPTiM
See All by OPTiM
デザインとエンジニアリングの架け橋を目指す OPTiMのデザインシステム「nucleus」の軌跡と広げ方
optim
0
75
落ちてほしかった単体テスト
optim
0
110
Goのカバレッジ計測の仕組みをコードリーディングで理解する
optim
1
270
0→1製品の毎週リリースを支えるGoパッケージ戦略——AI時代のPackage by Feature実践
optim
5
1.3k
Ruby初学者から見たRubyKaigi
optim
0
280
メモ整理が苦手な者による頑張らないObsidian活用術
optim
1
360
新卒でも即戦力になりたい! ~新卒エンジニアがAIを使ってElectronアプリの改善をやってみた~/20250723-ai-endo
optim
0
53
製品価値向上のための "上流工程" AI支援/20250723-ai-uehara
optim
0
49
IoT機器の一括デバイスプロビジョニングと遠隔操作の技術 / 20250424-iot-aoki
optim
0
62
Other Decks in Programming
See All in Programming
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
630
CSC305 Lecture 06
javiergs
PRO
0
270
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
100
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
860
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
140
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.4k
CSC305 Lecture 10
javiergs
PRO
0
220
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
250
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
880
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
360
品質ワークショップをやってみた
nealle
0
610
Devvox Belgium - Agentic AI Patterns
kdubois
1
140
Featured
See All Featured
Designing for Performance
lara
610
69k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Making Projects Easy
brettharned
120
6.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Faster Mobile Websites
deanohume
310
31k
Balancing Empowerment & Direction
lara
5
700
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
570
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
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.