【发布时间】:2015-01-15 13:22:57
【问题描述】:
我正在尝试使用 Apache ActiveMQ 作为我的 MQTT 代理。一切都很简单,我可以将消息从 JMS 代理发送到 MQTT 客户端,反之亦然。
我有一个在任何地方都找不到的问题。是否有可用的方法或机制让 MQTT 客户端像 JMS 客户端和消费者一样定义“消息选择器”。
问候, 山姆
【问题讨论】:
我正在尝试使用 Apache ActiveMQ 作为我的 MQTT 代理。一切都很简单,我可以将消息从 JMS 代理发送到 MQTT 客户端,反之亦然。
我有一个在任何地方都找不到的问题。是否有可用的方法或机制让 MQTT 客户端像 JMS 客户端和消费者一样定义“消息选择器”。
问候, 山姆
【问题讨论】:
是的,您可以创建 ACL 文件,您可以在其中定义客户端可以订阅的某些主题... 而且您还可以做一件事..您还可以在用户身份验证基础上定义主题..这意味着相应地允许不同的用户使用不同的主题。
【讨论】:
MQTT 客户端决定获取什么消息的唯一方法是订阅。
这些可以是具体主题(“Aaaa/Bbbb/Cccc”)或通配符主题字符串(“aa/#/cc”或“aa/bb/+/cc”)
【讨论】:
# 通配符只能是主题中的最后一个元素。例如aa/bb/# 有效,aa/#/bb 无效