如何通过Watson IoT连接mosquitto_sub和mosquitto_pub?

时间:2017-10-11 06:35:50

标签: mqtt mosquitto watson-iot

我想提出以下申请。

1.Send a command from mosquitto_pub to Arduino device via Watson IoT.  
2.Arduino subscribes to commands.
3.Arduino publishes sensor information to mosquitto_sub via Watson IoT.

为了进行简单的连接测试,我在Watson上注册了mosquitto_sub作为设备。

我订阅了mosquitto_sub。

mosquitto_sub - h osdjco.messaging.internetofthings.ibmcloud.com -p 1883 -u use-token-auth -P <TOKEN> -i "d:osdjco:mosquitto:18fe34cd17S1" -t "iot-2/cmd/shot/fmt/json" -d -v

接下来,我使用以下命令发布。

mosquitto_pub -i a:osdjco:mosquittopub -h osdjco.messaging.internetofthings.ibmcloud.com -u "a-osdjco-xztcbezrwh" - P '<TOKEN>' -t "iot-2/cmd/shot/fmt/json" -m '{"d":{"cmd":"shot"}}' -d

发布成功但命令未订阅。

有什么问题?

2 个答案:

答案 0 :(得分:1)

您的应用程序发布的主题不正确,应该是

&#34; IOT-2 /类型/ mosquitto / ID / 18fe34cd17S1 / CMD /镜头/ FMT / JSON&#34;

从下面链接检查发布命令:

https://console.bluemix.net/docs/services/IoT/applications/mqtt.html#mqtt

答案 1 :(得分:1)

对不起,我注意到了这个错误。

我将device_type和device_id添加到mosquitto_pub的主题,并收到了mosuquitto_sub的消息。

mosquitto_pub -i a:osdjco:mosquittopub -h osdjco.messaging.internetofthings.ibmcloud.com -u "a-osdjco-xztcbezrwh" -P '<TOKEN>' -t "iot-2/type/mosquitto/id/18fe34cd17S1/cmd/shot/fmt/json" -m '{"d":{"cmd":"shot"}}' -d