Skip to main content
Every stored reading is published to a message bus after the 201. A WebSocket client subscribed to that device and metric receives the row at once. The publish is best-effort: a failure there never fails the post.

Subscribe

Open a WebSocket to the message bus with one topic.
The first message confirms the subscription:
Each message after that is the topic, a colon, and the stored row as JSON:

Topics

A topic names one device and one metric. Topics match exactly. There are no wildcards, so a client that wants three metrics from one device opens three subscriptions.

Reconnecting

A dropped socket delivers nothing for the gap. Readings stored while the client was away are not replayed; read them back through the app. Reconnect with the same topic and delivery resumes from the next reading.