168 const std::string &first_index,
const std::string &last_index);
185 const uint8_t *node_id_;
188 const bool *initialized_;
Owns the per-hub device table, update callbacks, and linked-remote associations.
DiagnosticProbes(const uint8_t *node_id, ExchangeEngine &engine, DeviceRegistry ®istry, const bool *initialized, DiagnosticProbesHub hub)
Construct with the collaborators a probe exchange needs.
DiagnosticProbes(const DiagnosticProbes &)=delete
ManagementActionResult probe_sweep(const std::string &device_id, const std::string &probe, const std::string &first_index, const std::string &last_index)
Walk a bounded index range, one probe_device() call per index, in one user gesture.
ManagementActionResult probe_device(const std::string &device_id, const std::string &probe, const std::string &index)
Send a single diagnostic probe frame to an already-paired device and report the raw reply.
DiagnosticProbes & operator=(const DiagnosticProbes &)=delete
Abstract radio driver for IO-Homecontrol.
Per-hub device table, update-callback fan-out, and linked-remote map.
Self-contained authenticated exchange engine for IO-Homecontrol 2W.
Result type and argument/result helpers shared by ManagementActions and DiagnosticProbes.
constexpr const char * MANAGEMENT_ACTION_PROBE_DEVICE
Native API action names of the two probe actions, shared with ManagementActions' registration table.
constexpr const char * MANAGEMENT_ACTION_PROBE_SWEEP
IO-Homecontrol command IDs, result codes and protocol enumerations.
IO-Homecontrol 2W frame container: control bytes, IoFrame and (de)serialization.
The only three things a probe needs from the hub, injected by ManagementActions.
std::function< bool(const IoFrame &)> record_reply_event
Records a device event report on the "Last Device Event" sensor; true when the ...
std::function< bool()> probes_enabled
True when diagnostic_probes: true was configured.
std::function< RadioDriver *()> radio
The radio, for the structured capture log line.
Runtime state of a paired IO‑Homecontrol device.
Parsed IO‑Homecontrol frame (CTRL0/1 + addresses + command + data).
Result of a hub-level management action such as rename.
One object a CMD_TRANSFER_OPEN can name: its class byte and its 16-bit id.