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
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBot...
Search
KMiura
January 25, 2022
Technology
0
670
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBotを動かしてみた
SORACOM UG Online #9 ~新春LT祭り~
https://soracomug-tokyo.connpass.com/event/233053/
KMiura
January 25, 2022
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
80
Pythonでルンバをハックしてみた
miura55
0
160
あなたの知らないクラフトビールの世界
miura55
0
350
Storage Browser for Amazon S3を触ってみた + α
miura55
0
220
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
210
あのボタンでつながるSORACOM
miura55
0
140
Postman Flowsで作るAPI連携LINE Bot
miura55
0
380
Lambdaと共に歩んだAWS
miura55
3
840
Other Decks in Technology
See All in Technology
コンパウンド組織のCRE #cre_meetup
layerx
PRO
0
210
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
0
150
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
1.7k
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
310
AI時代の開発を加速する組織づくり - ブログでは書けなかったリアル
hiro8ma
1
240
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
2
1.1k
ハノーファーメッセ2025で見た生成AI活用ユースケース.pdf
hamadakoji
0
380
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
8.9k
Kubernetes self-healing of your workload
hwchiu
0
350
もう外には出ない。より快適なフルリモート環境を目指して
mottyzzz
11
8.5k
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
3
1.3k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Facilitating Awesome Meetings
lara
57
6.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Thoughts on Productivity
jonyablonski
70
4.9k
Statistics for Hackers
jakevdp
799
220k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
How to Ace a Technical Interview
jacobian
280
24k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Speed Design
sergeychernyshev
32
1.2k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Transcript
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBotを動かしてみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • 名古屋のゲーム会社のサーバー エンジニア • 好きなSORACOMのサービス: SORAOCM
Arc、SORACOM Funk @k_miura_io koki.miura05
Switch botを手に入れた • Amazonのブラックフライデーで手に入れ た • BLEのAPIもオープンになっていてハックし 放題 • OSS万歳!
https://qiita.com/ma2shita/items/d620bb09ba001b66593b
None
どうやってやろう?
調べてみた • SORACOMのプラットフォームでMQTTをするならSORACOM Beam • 他のMQTTブローカー(AWS、Shifter.ioなど)の接続情報を設定することでデバイス 側のMQTT接続が楽になる(らしい) • なんかよくわからんけど凄そう(小並感)
入力どうしよう・・・
こいつの出番だ!
SORACOMを知るきっかけ • 2年前に名古屋でやってたハンズオンで「あのボ タン」に出会う • ボタンを押すことでLambdaを使えたり、メール 送信ができるのは面白い • ビルの高層階からボタンの電波が届かなくて送信 失敗しまくったのはいい思い出w
システム構成
実装のポイント:Raspberry Pi • AWS IoTのSDKではなく汎用的なMQTTライブラリを使っている • 接続時に使うトピックの中にIMSIをプレースホルダーにしておくとSORACOM Beamが転送するときに置き換えてくれる →SIMが変わったり複数のデバイスが来ても安心
実装のポイント:Lambda • AWS IoT 1-Clickのプレイスメントでボタンを押したときのコマンドだけではな く、IMSIを受け取れるようにすることでLambdaで環境変数を設定しなくて良く なる • LambdaでテストするときもJSONを設定するだけなので楽(詳しくは記事にて!)
DEMO https://youtu.be/n0Gpwt8pOlY
まとめ • SORACOM側でAWS IoTの接続情報を登録することでデバイス側のコードが とてもシンプルになる • IMSIをプレースホルダーにするとデバイス単位でも同じコードを使い回せる • Switchbotを使ったハックは楽しい SORACOM
× AWSは相性抜群!
今日紹介した内容 https://zenn.dev/kmiura55/articles/soracom-beam-switch-bot
コラボイベント第2弾開催決定! https://linedevelopercommunity.connpass.com/event/235647/
END