您想订阅 MQTT 主题上的消息。
使用 MQTT 输入
节点订阅代理并接收发布到匹配主题的消息。
[{"id":"8024cb4.98c5238","type":"mqtt in","z":"eda2a949.74ea98","name":"","topic":"sensors/#","qos":"2","broker":"61de5090.0f5d9","x":240,"y":180,"wires":[["15d727dd.33e808"]]},{"id":"15d727dd.33e808","type":"debug","z":"eda2a949.74ea98","name":"","active":true,"console":"false","complete":"false","x":390,"y":180,"wires":[]},{"id":"61de5090.0f5d9","type":"mqtt-broker","z":"","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"willTopic":"","willQos":"0","willPayload":"","birthTopic":"","birthQos":"0","birthPayload":""}]
MQTT 输入
节点必须硬编码要使用的主题过滤器 - 它不能动态更改。
一种可能的解决方法是将主题设置为环境变量,例如 $(MY_TOPIC)
。当 Node-RED 运行时启动时,它会将环境变量的值替换到该节点的属性中。这确实允许更改主题,尽管这样做确实需要重新启动 Node-RED 才能获取环境变量的更改。
您还可以使用 MQTT 通配符,+
用于单个主题级别或 #
用于多个级别。这允许您使用单个节点接收多个主题。消息将从节点发送,其中 msg.topic
设置为实际接收到的主题。
版权所有 OpenJS Foundation 和 Node-RED 贡献者。保留所有权利。OpenJS Foundation 已注册商标并使用商标。有关 OpenJS Foundation 商标的列表,请参阅我们的商标政策和商标列表。未在OpenJS Foundation 商标列表中指明的商标和徽标是其各自持有人的商标™ 或注册® 商标。使用它们并不意味着与它们有任何关联或获得其认可。
OpenJS Foundation | 使用条款 | 隐私政策 | OpenJS Foundation 章程 | 商标政策 | 商标列表 | Cookie 政策