微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我订阅的公共 MQTT 代理只收到我自己的消息?

如何解决为什么我订阅的公共 MQTT 代理只收到我自己的消息?

我在 'broker.emqx.io' 使用 MQTT 代理,并已将客户端订阅主题 '/python/mqtt',这是 Github 存储库中的主题,其中包含 Python 中的示例客户端实现。我的订阅客户端正在接收我的发布客户端在示例代码中发布的消息。在我运行代码修改它的这段时间里,显然全世界没有其他客户端向该主题发布消息。我的本地网络中的订阅者仅接收从我的本地网络发布的消息,是否有什么神奇的事情发生?还是该主题没有流量?

解决方法

最简单的答案是最有可能的,只是没有其他人同时针对同一个代理运行该示例代码。

,

免责声明:我不能添加评论:(,这应该是评论而不是答案。

然而,MQTT 标准定义了一组非常灵活的主题命名规则,由于实际原因存在一些限制。

主题过滤器接受前导反斜杠,但它没有提供任何好处,相反,它引入了一个不必要的主题级别,而且是空的。也许他们在主题中引入它是为了展示某些东西或出于当时的其他原因,例如让人们注意到它;)

还有其他字符也有特殊含义,例如 $,它通常用于命名系统定义的发布统计信息或其他相关信息的主题。

大多数代理文档都提供了命名主题的简短指南,例如 HiveMQ does

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。