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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
KMiura
January 25, 2022
Technology
720
0
Share
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBotを動かしてみた
SORACOM UG Online #9 ~新春LT祭り~
https://soracomug-tokyo.connpass.com/event/233053/
KMiura
January 25, 2022
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.2k
Amazon Rekognitionを使ったインターホンハック
miura55
0
120
Pythonでルンバをハックしてみた
miura55
0
220
あなたの知らないクラフトビールの世界
miura55
0
410
Storage Browser for Amazon S3を触ってみた + α
miura55
0
270
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
280
あのボタンでつながるSORACOM
miura55
0
170
Postman Flowsで作るAPI連携LINE Bot
miura55
0
430
Lambdaと共に歩んだAWS
miura55
3
970
Other Decks in Technology
See All in Technology
AI バイブコーティングでキーボード不要?!
samakada
0
590
AIはハッカーを減らすのか、増やすのか?──現役ホワイトハッカーから見るAI時代のリアル【MEGU-Meet】
cscengineer
0
180
Shipping AI Agents — Lessons from Production
vvatanabe
0
270
[OAWTT26][THR1028] Oracle AI Database 26ai へのアップグレード:ベストプラクティスと最新情報
oracle4engineer
PRO
1
110
インターネットの技術 / Internet technology
ks91
PRO
0
210
最初の一歩を踏み出せなかった私が、誰かの背中を押したいと思うようになるまで / give someone a push
mii3king
0
160
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
78k
運用システムにおけるデータ活用とPlatform
sansantech
PRO
0
120
Keeping Ruby Running on Cygwin
fd0
0
170
AndroidアプリとCopilot Studioの統合
nakasho
0
120
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.4k
[OpsJAWS 40]リリースしたら終わり、じゃなかった。セキュリティ空白期間をAWS Security Agentで埋める
sh_fk2
3
240
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
180
Raft: Consensus for Rubyists
vanstee
141
7.4k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
Automating Front-end Workflow
addyosmani
1370
200k
Heart Work Chapter 1 - Part 1
lfama
PRO
6
35k
What's in a price? How to price your products and services
michaelherold
247
13k
Context Engineering - Making Every Token Count
addyosmani
9
840
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
280
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
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