Mosquitto: MQTTトピックの理解

このドキュメントははじめにガイドの一部です。完全なガイドはこちらからご覧いただけます:Mosquittoの始め方

👋 Stackhero ドキュメントへようこそ!

Stackhero では、信頼性と柔軟性を重視したフルマネージドの Mosquitto MQTT クラウド 環境をご提供しています:

  • 無制限のメッセージスループットとデータ転送により、ワークフローが人工的な制限に達することはありません。
  • 独自の外部 API を利用した 無制限のデバイス認証で、オンボーディングやアクセス管理もシームレスに行えます。
  • トピック、ユーザー、アクションごとに細かく制御できる 高度な ACL
  • HTTPS 対応の カスタムドメイン名で、セキュアかつブランド化されたエンドポイントを提供します(例:https://mqtt.your-company.com)。
  • ワンクリックで適用できるアップデートにより、改善やセキュリティパッチも手間なく実施可能です。
  • すべてのインスタンスが プライベートかつ専用インフラ上で稼働し、安定した パフォーマンスと強固な セキュリティを実現します。

IoT プロジェクトを加速し、運用負荷を大幅に削減しましょう。セキュアで本番運用に対応した Mosquitto MQTT クラウドホスティング インスタンスを、わずか数分で立ち上げることができます。

MQTTは通信を「トピック」に整理し、データの発行と購読のためのチャネルとして機能します。デバイスは特定のトピックにメッセージを発行したり、購読して関連する更新を受け取ります。

MQTTのトピックは大文字と小文字を区別し、UTF-8文字を含む必要があり、少なくとも1文字が必要です。トピック内の階層はスラッシュ(/)文字で定義されます。

以下は、MACアドレスで識別される温度と湿度データを収集するIoTデバイスの設定例です:

  • MACアドレスが00:00:00:00:00:00のデバイスの場合:

    • 温度:devices/00:00:00:00:00:00/temperature
    • 湿度:devices/00:00:00:00:00:00/humidity
  • MACアドレスが11:11:11:11:11:11のデバイスの場合:

    • 温度:devices/11:11:11:11:11:11/temperature
    • 湿度:devices/11:11:11:11:11:11/humidity

アプリケーションは、devices/00:00:00:00:00:00/temperatureのような特定のトピックを購読して、対応するIoTデバイスからデータを受け取ることができます。

MQTTは効率的なトピック管理のためにワイルドカードをサポートしています:

  • +ワイルドカードはトピック階層の単一レベルに一致します。例えば、devices/+/temperatureを購読すると、devices/1/temperatureのようなトピックをキャプチャしますが、devices/1/2/temperatureはキャプチャしません。

  • #ワイルドカードは複数のレベルに一致します。例えば、devices/#devices/1/temperaturedevices/2/humiditydevices/1/2/somethingElseのようなトピックに一致します。