zerodds-mqtt-bridge
Layer 5 — Bridges. OASIS MQTT v5.0 + v3.1.1 wire codec + broker + DDS bridge.
- Source: crates/mqtt-bridge
- API docs: docs.rs/zerodds-mqtt-bridge
zerodds-mqtt-bridge delivers the full MQTT 5.0 spec plus a
version-aware MQTT 3.1.1 codec: a wire codec
for all 14 control packets, all 27 properties (5.0), variable-byte
integer, topic filters with wildcards, a keep-alive tracker, an in-memory
broker with session state + retained messages + will messages, and
an MQTT↔︎DDS topic bridge. The codec is protocol-version-aware
(ProtocolVersion::V5 / V311) — 3.1.1 PUBLISH carries
no property block. no_std + alloc,
forbid(unsafe_code).
Spec anchors
- OASIS MQTT 5.0 §1.5 + §2.1 + §2.2.2 + §2.4 + §3 + §4.1 + §4.7.
- OASIS MQTT 3.1.1 §2 + §3 (version-aware codec for legacy brokers).
Layer position
Layer 5 — Bridges. Substrate for DDS↔︎MQTT endpoint mapping.
Quickstart
use zerodds_mqtt_bridge::topic_matches;
assert!(topic_matches("sensors/+/temp", "sensors/room1/temp"));
assert!(topic_matches("sensors/#", "sensors/room1/temp/f"));
Stability
1.0.0-rc.3. Stable since RC1; wire format fixed by OASIS MQTT 5.0 / 3.1.1.
zerodds-mqtt-bridge
Layer 5 — Bridges. OASIS MQTT v5.0 + v3.1.1 Wire-Codec + Broker + DDS-Bridge.
- Quelle: crates/mqtt-bridge
- API-Docs: docs.rs/zerodds-mqtt-bridge
zerodds-mqtt-bridge liefert die volle MQTT-5.0-Spec plus einen
version-aware MQTT-3.1.1-Codec: Wire-Codec
für alle 14 Control-Packets, alle 27 Properties (5.0), Variable-Byte-
Integer, Topic-Filter mit Wildcards, Keep-Alive-Tracker, In-Memory-
Broker mit Session-State + Retained-Messages + Will-Messages, und
einen MQTT↔︎DDS-Topic-Bridge. Der Codec ist protokoll-versions-bewusst
(ProtocolVersion::V5 / V311) — 3.1.1-PUBLISH trägt
keinen Property-Block. no_std + alloc,
forbid(unsafe_code).
Spec-Anker
- OASIS MQTT 5.0 §1.5 + §2.1 + §2.2.2 + §2.4 + §3 + §4.1 + §4.7.
- OASIS MQTT 3.1.1 §2 + §3 (version-aware Codec für Legacy-Broker).
Schichten-Position
Layer 5 — Bridges. Substrat fuer DDS↔︎MQTT-Endpoint-Mapping.
Quickstart
use zerodds_mqtt_bridge::topic_matches;
assert!(topic_matches("sensors/+/temp", "sensors/room1/temp"));
assert!(topic_matches("sensors/#", "sensors/room1/temp/f"));
Stabilitaet
1.0.0-rc.3. Stabil seit RC1; Wire-Format durch OASIS MQTT 5.0 / 3.1.1 fixiert.