LoginSignup
2
3

More than 5 years have passed since last update.

MQTT プログラミング

MQTT 通信方式

Publisher → Broker(Topic) → Subscriber(IoT rule/Operater)

BrokerとSubscriberは常時接続なので、ほぼリアルタイムでの通信が可能(一方向)
双方向にするには、PublisherとSubscriberを入れ替えて両方実装

SDK実装でpub/subをどう表現するのか?

keepAlive Time は個々の事例による

AWS IoT Core で利用できるQoS

QoS 0 or 1

対応していないが、QoS2もある
確実に1度だけ送信する機能

サンプルアプリ

SDKの中にサンプルがあるので、それを活用する

必ずMQTTを使う必要はない

ニアリアルタイムの双方向通信 = MQTT
データ送信のみ = MQTT or HTTP

コストでの分類
固定回線 = MQTT or HTTP
SIM = メッセージ頻度が高い場合はMQTT

MQTT をポート443で利用できるようになったので、B2Bでも利用可能な可能性が高くなった

IoT Core 活用

アンチパターン

shadowに全センサー共通のtopicを参照するような設計

shadowを使うと有効なケース:結果整合性で同じ状態になってほしい場合
pub/subを使うと有効なケース:メッセージング

ルールエンジンの組み込み関数

thing名の取得方法
  • payloadのjsonの中にthins名を入れる
  • MQTT接続の際に使ったclientIDをルールエンジンで取得する
  • MQTT topicを利用する

ルールエンジン、topicを有効活用することで、皇族のLambdaの処理を軽減することができる

デザインパターン

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3