MQTT broker

Pub/Sub topicmqtt-broker

Topic-based publish/subscribe broker for devices (Mosquitto, EMQX, HiveMQ, cloud IoT cores).

Provider
default
Category
Messaging
Properties · 3 set by this component
propertytypevaluesrequiredkind defaultthis component
deliveryenumat-most-once | at-least-once | exactly-onceyes—▸ at-most-once
managedboolean—nofalseinherited
orderingenumnone | per-keynonone▸ per-key
persistentSessions · component propertyboolean—nofalseinherited
qos · component propertyinteger—no0inherited
replayboolean—nofalse▸ false
topicPerEventType · advancedboolean—notrueinherited
Rules that apply · 1

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

pubsub-replay-required

The design declares that consumers must be able to replay history. A fan-out topic that does not retain messages cannot deliver that.

  • — all of these hold:
  • — the design requirement `messaging.replay` is true
  • — the node's `replay` is false
Use it in a design
nodes:
  - { id: "mqtt-broker", component: "mqtt-broker" }
Other Pub/Sub topic products · 12
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# MQTT broker (Mosquitto, EMQX, HiveMQ, IoT Core): topic fan-out for devices. QoS 0 is the wire default,
# so delivery is at-most-once until the client asks for QoS 1 or 2.
schemaVersion: "1"
type: "component"
id: "mqtt-broker"
kind: "pubsub-topic"
provider: "default"
docs: "https://mqtt.org/mqtt-specification/"
defaults:
  delivery: "at-most-once"
  ordering: "per-key"
  replay: false
properties:
  qos:
    type: "integer"
    default: 0
  persistentSessions:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/mqtt-broker.md