トピックの名前がわからない場合、ブローカーのすべてのトピックを監視してイベントに応答するクライアントを接続したい。
#
にサブスクライブすると、$
で始まるトピックを除くすべてのサブスクリプションが提供されます(これらは通常とにかく制御トピックです)。
もちろん、最初にサブスクライブしているものを知っておいた方がよいでしょう。また、一部のブローカー構成では、#
へのサブスクライブが明示的に禁止されている場合があります。
mosquitto_sub
(mosquitto-clients
パッケージの一部)を使用して、ワイルドカードトピック#
にサブスクライブできます。
mosquitto_sub -v -h broker_ip -p 1883 -t '#'
ワイルドカード「#」を使用しますが、ある時点でバスを通過するデータを何らかの方法で理解する必要があることに注意してください。
mosquitto.orgは非常に活発です(この投稿の時点)。これは、MQTTサブスクライバーLinuxデバイスのニーススモークテストです。
mosquitto_sub -h test.mosquitto.org -t "#" -v
「#」はトピックのワイルドカードであり、すべてのメッセージ(トピック)を返します。サーバーには大量のトラフィックがあったため、メッセージの「ファイアホース」を返しました。
MQTTデバイスがirisys/V4D-19230005/
のトピックをテストMQTTブローカーに公開する場合、メッセージをフィルターできます。
mosquitto_sub -h test.mosquitto.org -t "irisys/V4D-19230005/#" -v
オプション: