MQTT Support for defining topics, or Observer support for MeshRank.net #138

Open
opened 2026-10-27 09:35:11 +01:00 by adam · 1 comment
Owner

I'm trying to export packet data to MeshRank.net. But they need particular topics set for packets and status, which include auth a token for my account on the site. The following is their example config for meshcoretomqtt:

[[broker]]
name = "meshrank"
enabled = true
server = "meshrank.net"
port = 8883
transport = "tcp"
keepalive = 60
qos = 0
retain = false

[broker.tls]
enabled = true
verify = true

[broker.auth]
method = "none"

[broker.topics]
packets = "meshcore/{IATA}/{PUBLIC_KEY}/packets"
status = "meshcore/{IATA}/{PUBLIC_KEY}/status"

A fix for this would either be extensible field(s) for MQTT topic(s), or even just broker.topics handling in (I'm guessing) repeater/data_acquisition/mqtt_handler.py so that topic definition could be manually added to the config.yaml file.

I've attempted the above, adding proper topics as mqtt_brokers.brokers.topics to my config.yaml. But while my (Docker) instance of openHop does report "Connected" for the broker, MeshRank is not indicating it's receiving packet data. And if I make any config edits in the webUI, that section of the config ends up getting stripped out.

I'm trying to export packet data to MeshRank.net. But they need particular topics set for `packets` and `status`, which include auth a token for my account on the site. The following is [their example config](https://meshrank.net/meshcoretomqtt/meshrank.toml) for `meshcoretomqtt`: ```toml [[broker]] name = "meshrank" enabled = true server = "meshrank.net" port = 8883 transport = "tcp" keepalive = 60 qos = 0 retain = false [broker.tls] enabled = true verify = true [broker.auth] method = "none" [broker.topics] packets = "meshcore/{IATA}/{PUBLIC_KEY}/packets" status = "meshcore/{IATA}/{PUBLIC_KEY}/status" ``` A fix for this would either be extensible field(s) for MQTT topic(s), or even just `broker.topics` handling in (I'm guessing) `repeater/data_acquisition/mqtt_handler.py` so that topic definition could be manually added to the `config.yaml` file. I've attempted the above, adding proper topics as `mqtt_brokers.brokers.topics` to my `config.yaml`. But while my (Docker) instance of openHop does report "Connected" for the broker, MeshRank is not indicating it's receiving packet data. And if I make any config edits in the webUI, that section of the config ends up getting stripped out. <!-- github-sync-id:5224377307 -->
Author
Owner

Update: It turns out packet data is arriving at MeshRank. It's just missing that IATA token attribution. And while my KISS modem does have a display, I have yet to climb up on the roof to check if it's showing a "5-digit pin" as they suggest it might. And I doubt it is as that radio's running openHop firmware which I'd guess is as unaware of receiving & displaying such information from MeshRank.

Update: It turns out packet data is arriving at MeshRank. It's just missing that IATA token attribution. And while my KISS modem does have a display, I have yet to climb up on the roof to check if it's showing a "5-digit pin" as they suggest it might. And I doubt it is as that radio's running openHop firmware which I'd guess is as unaware of receiving & displaying such information from MeshRank. <!-- github-comment-id:5487904798 -->
adam changed title from MQTT Support for defining topics, or Observer support for MeshRank.net to MQTT Support for defining topics, or Observer support for MeshRank.net 2026-10-27 18:23:58 +01:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/pyMC_Repeater#138