在蚊子桥中重新映射 MQTT 主题?
re-map MQTT topic in mosquitto bridge?
我正在尝试帮助客户将他们的 Mosquitto 网桥连接到 Azure IoT Edge。他们有一些使用 MQTT 的遗留设备,但由于它不能执行 TLS 并且主题无法更改,我们正在尝试 运行 通过 Mosquitto MQTT Broker 发送消息,并通过蚊子桥...
我在获得从网桥到 IoT Edge 的实际连接时没有遇到任何问题,并且我有消息流向网桥。该连接工作正常。问题出在主题上。我真的无法更改客户端发布的主题结构。但是,IoT Edge 要求在特定 MQTT 主题 (devices//messages/events) 上发布消息。其中 device_id 是我经纪人的名字,假设 'mymqttbroker' 只是为了好玩。
所以,我想做的是获取一些关于几乎任何主题的消息,并通过 devices/mymqttbroker/messages/events 主题上的桥将这些消息重新发送到 IoT Edge。
我知道网桥配置中的主题行有 remote_prefix 和 local_prefix 参数,但这并不能解决问题。根据 this 文章,它说你不能这样做..
"E.g A broker would receive messages to topic sensor1 and remap them to new_sensor1. Currently this form of remapping is not available,"
知道如何做这样的事情吗?可能吗?本质上,桥中有没有办法接受来自任何主题的消息,并在特定的固定主题上重新发布它们?
快速而肮脏的方法是编写一个订阅旧主题并重新发布新主题的小助手应用程序,然后桥接新主题。
它确实增加了另一个失败点,但它是 mosquitto 的唯一选择。
如果您不喜欢 mosquitto,您可以使用 link mosca 构建您自己的自定义代理并将重新映射添加到代理中。
我正在尝试帮助客户将他们的 Mosquitto 网桥连接到 Azure IoT Edge。他们有一些使用 MQTT 的遗留设备,但由于它不能执行 TLS 并且主题无法更改,我们正在尝试 运行 通过 Mosquitto MQTT Broker 发送消息,并通过蚊子桥...
我在获得从网桥到 IoT Edge 的实际连接时没有遇到任何问题,并且我有消息流向网桥。该连接工作正常。问题出在主题上。我真的无法更改客户端发布的主题结构。但是,IoT Edge 要求在特定 MQTT 主题 (devices//messages/events) 上发布消息。其中 device_id 是我经纪人的名字,假设 'mymqttbroker' 只是为了好玩。
所以,我想做的是获取一些关于几乎任何主题的消息,并通过 devices/mymqttbroker/messages/events 主题上的桥将这些消息重新发送到 IoT Edge。
我知道网桥配置中的主题行有 remote_prefix 和 local_prefix 参数,但这并不能解决问题。根据 this 文章,它说你不能这样做..
"E.g A broker would receive messages to topic sensor1 and remap them to new_sensor1. Currently this form of remapping is not available,"
知道如何做这样的事情吗?可能吗?本质上,桥中有没有办法接受来自任何主题的消息,并在特定的固定主题上重新发布它们?
快速而肮脏的方法是编写一个订阅旧主题并重新发布新主题的小助手应用程序,然后桥接新主题。
它确实增加了另一个失败点,但它是 mosquitto 的唯一选择。
如果您不喜欢 mosquitto,您可以使用 link mosca 构建您自己的自定义代理并将重新映射添加到代理中。