gpt4 book ai didi

eclipse - 使用 kura 或 MQTT 将消息发布到 kapua

转载 作者:行者123 更新时间:2023-12-01 18:11:39 26 4
gpt4 key购买 nike

我正在开发物联网设备。我已经在树莓派 3 中安装了 Eclipse Kura将其用作网关。我想使用 Kura 或直接使用树莓派向 Kapua 服务器(安装在同一网络中)发布消息。这两种方法我都试过了。

1- 使用 Kura

我已按照 GitHub Kura Kapua 连接 tutorial 上给出的说明进行操作第780章按照这些步骤操作后,我能够建立 Kura Kapua 连接,但无法发送数据,Example.publisher 包也安装在 Kura 中。我想创建一个主题并发布有关该主题的数据。

2- 使用 MQTT 客户端库

我已经在树莓派中安装了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"

这具有相同的行为,它也建立了连接,但无法创建主题并发布数据。当我对 localhost 执行相同操作时,它确实发送消息。我使用两个不同的终端来发布和订阅。

是否有任何方法或示例可以让我实际发送一些数据并使用 Kura 或 MQTT 在另一端进行观察。

最佳答案

一般知识

正确的连接参数(如果您遵循了您提到的教程)是:

-h localhost
-p 1883
-u kapua-broker
-P kapua-password
(not sure the doublequote is required)

Kapua 使用特定的主题格式来授予对主题的访问控制。格式的语义是:

{account-name}/{client-id/{semantic-topic}

根据您的权限,您可以访问不同级别的主题。

默认用户kapua-broker仅允许连接、发布和订阅:

{kapua-sys}/{connection-client-id}/#

您需要更多权限才能订阅其他 client-id 主题。
执行此操作所需的权限是:

data:view
<小时/>

你的例子

首先,您似乎正在使用发布来订阅。这是你的命令。

sudo mosquitto_pub -h "broker-URL" -p "Port" -t "topic" -u "user-name"-P "user-pass" -i "client-id"

其次,凭证、主机、用户名、密码和主题都是错误的(除非您在发布到 SO 之前“隐藏”它们)。

要使测试工作,您需要使用以下命令,

订阅

mosquitto_sub -h "localhost" -p "1883" -t "kapua-sys/mosquitto_pub/my/test/topic" -u "kapua-sys" -P "kapua-password" -i "mosquitto_sub"

发布

mosquitto_pub -h "localhost" -p "1883" -t "kapua-sys/mosquitto_pub/my/test/topic" -m "My test message" -u "kapua-broker" -P "kapua-password" -i "mosquitto_pub"

对于 Kura 示例发布商,由于缺乏信息,我不知道问题出在哪里。我假设您正在发布或订阅一个由于主题的写/读权限而无法访问的主题。

<小时/>

希望这对您有所帮助! :)

关于eclipse - 使用 kura 或 MQTT 将消息发布到 kapua,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49033591/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com