Ibm cloud Mosquito和ibm watson在raspberry pi连接上的物联网被拒绝

Ibm cloud Mosquito和ibm watson在raspberry pi连接上的物联网被拒绝,ibm-cloud,mqtt,iot,mosquitto,watson-iot,Ibm Cloud,Mqtt,Iot,Mosquitto,Watson Iot,我是物联网新手。我刚刚在我的rpi上安装了MOSQUITO,并使用本教程在Watson IoT平台上注册了我的设备和网关: Mosquitto在本地模式下运行良好。但是,我在使用以下命令订阅/发布时遇到问题: mosquitto_sub -d -h pxci52.messaging.internetofthings.ibmcloud.com -i 'g:pxci52:myfstream:gateway' -t iot-2/type/myfstream/id/gateway/evt/statu

我是物联网新手。我刚刚在我的rpi上安装了MOSQUITO,并使用本教程在Watson IoT平台上注册了我的设备和网关:

Mosquitto在本地模式下运行良好。但是,我在使用以下命令订阅/发布时遇到问题:

 mosquitto_sub -d -h pxci52.messaging.internetofthings.ibmcloud.com  -i 'g:pxci52:myfstream:gateway' -t iot-2/type/myfstream/id/gateway/evt/status/fmt/raw

这是我的conf文件:

pid_文件/var/run/mosquitto.pid
持久性真实
持久性位置/var/lib/mosquitto/
日志目的主题
日志类型错误
日志类型警告
日志类型通知
日志类型信息
连接\u消息为true
日志时间戳为真
包括目录/etc/mosquitto/conf.d
连接watsoniot的连接桥
地址:pxci52.messaging.internetofthings.ibmcloud.com:1883
真的吗
试一试你的私生活
网桥\u尝试\u取消订阅错误
虚假通知
通知主题iot-2/type/myfstream/id/gateway/evt/status/fmt/raw
远程用户名令牌
远程密码xxxxxx
远程客户端ID g:pxci52:myfstream:网关
通知正确
iot-2/type/+/id/+/cmd/+/fmt/+中的iot-2/type/+/id/+/cmd/+/fmt/+主题/+
主题iot-2/type/+/id/+/evt/+/fmt/+out iot-2/type/+/id/+/evt/+/fmt/+

connection_messages true
我在日志中看到设备auth:ClientID='g:pqci52:myfstream:gateway'的无效用户ID(令牌),而不仅仅是“令牌”,请尝试“使用令牌身份验证”,这是在下面的配方示例中指定的

所有3个程序(mosquitto、mosquitto_sub和mosquitto_pub)都使用相同的客户端id,这不起作用,每个连接都需要一个唯一的id,所以您也可以在配置文件中发布密码。最好删除此问题并在不使用密码的情况下重新发布,即使您编辑了此问题,密码仍将保留在历史记录中PS:删除设备并启动新设备会更容易,因为它已经用于测试目的,即使我仅在午餐时发布了未连接的消息!!在ibm终端端,我获取=>设备auth:ClientID='d:pqci52:myfstream:gateway'的无效用户ID(令牌),ClientIP=41.*.*.*.******11 mai 2017 15:38:29从41.*.***关闭连接。该操作未经授权。在过去的5分钟里,我尝试了两次,甚至我将其注入cmd中,以确保
sudo mosquitto_pub-d-h pqci52.messaging.internetofthings.ibmcloud.com-i'g:pqci52:myfstream:gateway'-u使用令牌身份验证-P Nr0CHkXNbn3o+WFeMW-t-iot-2/type/myfstream/id/gateway/evt/status/fmt/raw-m“你好”
感谢您的帮助,我正在切换到azure iothub,我已经为此浪费了很多时间。我今天早上检查了日志,发现令牌身份验证失败(在数据库中找不到设备/网关):ClientID='g:pqci52:myfstream:gateway',因此可能此设备尚未注册为网关。我对此表示感谢,
Token auth成功:ClientID='d:pqci52:myfstream:gateway',ClientIP=***********
使用
mosquitto_pub-d-h pqci52.messaging.internetofthings.ibmcloud.com-i'd:pqci52:myfstream:gateway'-u使用Token auth-P nr0chknbn3o+WFeMW-t iot-2/type/myfstream/id/gateway/status/fmt/raw-m“你好”
所以你现在尝试将d作为设备连接是成功的吗?是的,每件事似乎都是正确的例外我已经创建了两个设备一个是raspberry pi订阅,另一个是发布,它们连接正确,但我错了,我仍然在想:来自**********的闭合连接。主题无效:iot-2/type/myfstream/id/s2/evt/status该主题与允许的规则不匹配
sudo mosquitto_pub -d -h pxci52.messaging.internetofthings.ibmcloud.com  -i 'g:pxci52:myfstream:gateway' -t iot-2/type/myfstream/id/gateway/evt/status/fmt/raw -m "hello"