Skip to main content

Topics & wildcards

Messages publish to hierarchical topics with / separators (sensors/room1/temp). Subscribers match with two wildcards:

  • + — one level. sensors/+/temp matches sensors/room1/temp.
  • # — the rest of the tree, only as the last character. sensors/# matches sensors, sensors/room1, sensors/room1/temp.

Matching uses a topic trie for fast fan-out.

Shared subscriptions (MQTT 5)

$share/<group>/<filter> load-balances matching messages round-robin across a group's members (connected members preferred) instead of delivering to every subscriber.

Topic aliases (MQTT 5)

An inbound client may map a topic to a short integer alias (up to 100 per connection) to save bytes on a hot topic.

$ topics

$SYS/# carries broker metrics. Note:

  • A leading-wildcard subscription (# or +/...) does not match $ topics — subscribe to $SYS/# explicitly to receive them.
  • $ topics are not otherwise reserved: the broker does not block clients from publishing to them. Protect $SYS (and any $-space you care about) with ACL rules.