我正在研究物联网设备 . 我在raspberry pi 3中安装了Eclipse Kura,将其用作网关 . 我想使用Kura或直接使用raspberry pi向Kapua服务器(安装在同一网络中)发布消息 . 我尝试了两种方法 .
1- Using Kura
我已按照GitHub Kura Kapua连接tutorial#780的指示进行操作 . 按照这些步骤后我可以 Build Kura Kapua连接但无法发送数据,还在Kura中安装了Example.publisher包 . 我想创建一个主题并发布有关该主题的数据 .
2- Using MQTT-Client library
我在raspberry pi中安装了MQTT-Client库,并使用以下命令发布和订阅数据 .
发布:
sudo mosquitto_pub -h "broker-URL" -p "Port" -t "topic" -m "message" -u "user-name"-P "user-pass" -i "client-id"
认购 :
sudo mosquitto_pub -h "broker-URL" -p "Port" -t "topic" -u "user-name"-P "user-pass" -i "client-id"
这具有相同的行为,它还 Build 连接但无法创建主题并发布数据 . 当我为localhost执行相同操作时,它会发送消息 . 我正在使用两个不同的终端来发布和订阅 .
是否有任何方法或示例我可以实际发送一些数据并在另一端使用Kura或MQTT进行观察 .
1 回答
一般知识
正确的连接参数(如果你按照你提到的教程)是:
Kapua使用具有特定主题格式来授予对主题的访问控制 . 格式的语义是:
根据您的权限,您可以访问不同级别的主题 .
默认用户
kapua-broker
仅允许连接,发布和订阅:您需要更多权限才能订阅其他
client-id
主题 .这样做的许可是:
你的榜样
首先,您似乎正在使用已发布的订阅 . 这是你的命令 .
其次,凭证,主机,用户名,密码和主题都是错误的(除非您在发布到SO之前“隐藏”它们) .
要使测试工作,您需要使用以下命令,
Subscribe
Publish
对于Kura示例发布者,由于缺乏信息,我不知道问题出在哪里 . 我假设您正在发布或订阅由于主题的写入/读取权限而无法访问的主题 .
希望对你有所帮助! :)