问题描述
我在 'broker.emqx.io' 使用 MQTT 代理,并已将客户端订阅到主题 '/python/mqtt',这是 Github 存储库中的默认主题,其中包含 Python 中的示例客户端实现。我的订阅客户端正在接收我的发布客户端在示例代码中发布的消息。在我运行代码并修改它的这段时间里,显然全世界没有其他客户端向该主题发布消息。我的本地网络中的订阅者仅接收从我的本地网络发布的消息,是否有什么神奇的事情发生?还是该主题没有流量?
解决方法
最简单的答案是最有可能的,只是没有其他人同时针对同一个代理运行该示例代码。
,免责声明:我不能添加评论:(,这应该是评论而不是答案。
然而,MQTT 标准定义了一组非常灵活的主题命名规则,由于实际原因存在一些限制。
主题过滤器接受前导反斜杠,但它没有提供任何好处,相反,它引入了一个不必要的主题级别,而且是空的。也许他们在主题中引入它是为了展示某些东西或出于当时的其他原因,例如让人们注意到它;)
还有其他字符也有特殊含义,例如 $
,它通常用于命名系统定义的发布统计信息或其他相关信息的主题。
大多数代理文档都提供了命名主题的简短指南,例如 HiveMQ does。