在Node-RED流程中,我已将IBM IoT输入节点连接到IBM IoT输出节点。我在命令行上使用mosquitto_pub
发布到WIoTP,以便启动Node-RED流。同样,我正在使用mqtt sub
(来自mqttjs)来订阅来自Node-RED流的消息。但是,我在订阅终端窗口上没有收到有效载荷。
发布
mosquitto_pub -h orgId.messaging.internetofthings.ibmcloud.com -p 8883 -i d:orgId:dType:default -u use-token-auth -P 'authToken' --cafile messaging.pem -t iot-2/evt/data/fmt/json -f payload.json
订阅
mqtt sub -h orgId.messaging.internetofthings.ibmcloud.com -p 443 -l wss -i a:orgId:default_mobile -u API-key -P 'API-token' --ca messaging.pem -t iot-2/type/mobile/id/default_mobile/evt/live/fmt/json
对于订阅,我已经创建了API密钥并且正在使用它们。我想念什么?
答案 0 :(得分:0)
订阅主题似乎不正确。如果您的设备在
中发布iot-2 / evt / data / fmt / json
那么您应该订阅
iot-2 / type / mobile / id / default_mobile / evt / data / fmt / json
注意:注意数据,而不是实时
答案 1 :(得分:0)
感谢@idan,现在已解决此问题!
d:
开头)只能订阅iot-2/cmd
主题字符串。msg.
属性覆盖。因此,我放入了一个设置msg.
属性的功能节点。另外,(如@idan所建议的那样),功能节点可以用msg=msg.payload
作为一行,这样就不会覆盖节点中的属性。