zerodds-coap-bridge
Layer 5 — Bridges. CoAP (RFC 7252) — complete stack set.
- Source: crates/coap-bridge
- API docs: docs.rs/zerodds-coap-bridge
zerodds-coap-bridge delivers not just the bare wire codec
but the full CoAP stack: reliability with a retransmit tracker,
block-wise transfer (RFC 7959), resource discovery via CoRE Link
(RFC 6690), the observer pattern (RFC 7641), multicast (§8),
caching/proxying (§5.6 + §5.7), a DTLS mode marker (§9), and a
bidirectional CoAP↔︎DDS topic bridge. no_std + alloc,
forbid(unsafe_code).
Spec anchors
- RFC 7252 §3 + §3.1 + §4 + §5 + §5.10 + §6 + §8 + §9 + §12.1.
- RFC 7641 Observing Resources.
- RFC 7959 Block-Wise Transfer.
- RFC 6690 CoRE Link Format.
Layer position
Layer 5 — Bridges. Substrate for DDS↔︎IoT endpoint mapping (constrained devices, multicast discovery, the observer pattern for DDS live updates).
Quickstart
use zerodds_coap_bridge::{decode, encode, CoapCode, CoapMessage, MessageType};
let msg = CoapMessage {
version: 1,
message_type: MessageType::Confirmable,
token: Vec::new(),
code: CoapCode::GET,
message_id: 0xBEEF,
options: Vec::new(),
payload: Vec::new(),
};
let wire = encode(&msg).expect("encode");
let decoded = decode(&wire).expect("decode");
assert_eq!(decoded.code, CoapCode::GET);
Feature flags
| Feature | Default | Purpose |
|---|---|---|
std |
✅ | std::error::Error impls. |
alloc |
✅ (via std) | Vec / String / BTreeMap. |
no_std-capable: default-features = false, features = ["alloc"].
Stability
1.0.0-rc.3. Public API + wire format (RFC 7252 / 7641 / 7959 /
6690) + error discriminants are RC1-stable.
zerodds-coap-bridge
Layer 5 — Bridges. CoAP (RFC 7252) komplettes Stack-Set.
- Quelle: crates/coap-bridge
- API-Docs: docs.rs/zerodds-coap-bridge
zerodds-coap-bridge liefert nicht nur den reinen Wire-Codec,
sondern den vollen CoAP-Stack: Reliability mit Retransmit-Tracker,
Block-Wise-Transfer (RFC 7959), Resource-Discovery via CoRE-Link
(RFC 6690), Observer-Pattern (RFC 7641), Multicast (§8),
Caching/Proxying (§5.6 + §5.7), DTLS-Mode-Marker (§9), und einen
bidirectional CoAP↔︎DDS-Topic-Bridge. no_std + alloc,
forbid(unsafe_code).
Spec-Anker
- RFC 7252 §3 + §3.1 + §4 + §5 + §5.10 + §6 + §8 + §9 + §12.1.
- RFC 7641 Observing Resources.
- RFC 7959 Block-Wise Transfer.
- RFC 6690 CoRE-Link-Format.
Schichten-Position
Layer 5 — Bridges. Substrat fuer DDS↔︎IoT-Endpoint-Mapping (constrained Devices, Multicast-Diskovery, Observer-Pattern fuer DDS-Live-Updates).
Quickstart
use zerodds_coap_bridge::{decode, encode, CoapCode, CoapMessage, MessageType};
let msg = CoapMessage {
version: 1,
message_type: MessageType::Confirmable,
token: Vec::new(),
code: CoapCode::GET,
message_id: 0xBEEF,
options: Vec::new(),
payload: Vec::new(),
};
let wire = encode(&msg).expect("encode");
let decoded = decode(&wire).expect("decode");
assert_eq!(decoded.code, CoapCode::GET);
Feature-Flags
| Feature | Default | Zweck |
|---|---|---|
std |
✅ | std::error::Error-Impls. |
alloc |
✅ (via std) | Vec / String / BTreeMap. |
no_std-fahig: default-features = false, features = ["alloc"].
Stabilitaet
1.0.0-rc.3. Public-API + Wire-Format (RFC 7252 / 7641 / 7959 /
6690) + Fehler-Diskriminanten sind RC1-stabil.