Expand description
Device-control abstraction surfaced over /ws/edge.
weave-server may send ServerToEdge::DisplayGlyph /
ServerToEdge::DeviceConnect / ServerToEdge::DeviceDisconnect frames
to drive a specific device on the edge — used by the weave-web UI
buttons (Connect / Disconnect / Test LED). The native edge-agent owns
per-device handles (BLE for Nuimo, etc.) that are foreign to this crate,
so the WS handler dispatches via this trait. The agent registers an
impl backed by its device map; targets the trait doesn’t recognise
return Ok(()) after logging.
Errors propagate as anyhow::Error for symmetry with the rest of the
WS client surface and to keep the trait dyn-friendly.
Structs§
- Noop
Device Control - No-op implementation used when the host hasn’t registered a device- control backend. Keeps the WS frames from crashing a stripped-down build that doesn’t supervise BLE devices.
Traits§
- Device
Control Hook - Trait the WS client uses to dispatch device-control frames. The
concrete impl lives in the binary that owns the device handles
(
edge-agentfor Nuimo today; future targets register their own).