Shadow, Telemetry, and Events
Keep these three concepts separate.
Child Shadow
Shadow represents current Child reachability/binding state and is retained:
.../up/device/{deviceSerial}/AES
Example:
{"deviceSerial":"AIRN0987654322","online":false,"enabled":true,"reason":"poll_timeout","lastSeenAt":1812999000}
online=false is not unbind. enabled=false is also distinct from offline.
Telemetry
Telemetry is actual operational data, not command intent:
.../up/telemetry/{deviceSerial}/AES
{
"deviceSerial":"AIRN0987654321",
"values":[{"groupKey":"rgb","operationKey":"on_off","value":true,"ts":1813000001}]
}
Event
Events represent significant discrete occurrences:
.../up/event/{type}/AES
Examples include alarms or meaningful transitions. Do not use Event for high-frequency telemetry streams.
Attribution
When an Event is about a Child, the business identity is the Child DeviceSerial while the transport/security principal remains the Physical Gateway. The Backend validates current association authority.