summaryrefslogtreecommitdiff
path: root/web-timeplot/WEBSOCKET_FORMAT.md
diff options
context:
space:
mode:
Diffstat (limited to 'web-timeplot/WEBSOCKET_FORMAT.md')
-rw-r--r--web-timeplot/WEBSOCKET_FORMAT.md117
1 files changed, 0 insertions, 117 deletions
diff --git a/web-timeplot/WEBSOCKET_FORMAT.md b/web-timeplot/WEBSOCKET_FORMAT.md
deleted file mode 100644
index 93eead2..0000000
--- a/web-timeplot/WEBSOCKET_FORMAT.md
+++ /dev/null
@@ -1,117 +0,0 @@
-# WebSocket Data Format
-
-TimePlot's WebSocket source accepts UTF-8 text frames whose contents can be parsed into one of the supported payload shapes below.
-
-## Recommended payload
-
-Send one JSON object per message:
-
-```json
-{
- "timestampMs": 1250,
- "value": 0.482
-}
-```
-
-Fields:
-
-- `value` — required numeric sample value
-- `timestampMs` — optional numeric source timestamp in milliseconds
-
-If `timestampMs` is present, TimePlot uses it to preserve the source timing relationship and aligns it onto the app's plot timebase.
-If `timestampMs` is omitted, TimePlot stamps the sample at the current plot time when the message arrives.
-
-## Other accepted object keys
-
-TimePlot also accepts these alternate numeric field names:
-
-- value fields: `value`, `y`, `signal`, `data`
-- time fields: `timeMs`, `timestampMs`, `timestamp`, `t`
-
-Examples:
-
-```json
-{"y": 0.91, "t": 2040}
-```
-
-```json
-{"signal": -0.13, "timestamp": 9810}
-```
-
-## Arrays
-
-A single message may contain an array of supported payloads:
-
-```json
-[
- {"timestampMs": 1000, "value": 0.2},
- {"timestampMs": 1100, "value": 0.3},
- {"timestampMs": 1200, "value": 0.5}
-]
-```
-
-This is useful for batching.
-
-## Bare numeric messages
-
-These also work, though JSON objects are preferred:
-
-```text
-0.418
-```
-
-or:
-
-```json
-42.5
-```
-
-These are treated as samples without an explicit timestamp.
-
-## Unsupported / ignored messages
-
-Messages are ignored if TimePlot cannot find a numeric sample value.
-Examples of ignored payloads:
-
-- empty strings
-- non-numeric strings
-- JSON objects without a numeric `value`-like field
-
-## Demo server compatibility
-
-The included demo server sends messages like:
-
-```json
-{
- "timestampMs": 1870,
- "value": 0.735812,
- "sequence": 19,
- "profile": "telemetry"
-}
-```
-
-Extra fields are safe. TimePlot ignores anything it does not need.
-
-## Running the demo server
-
-```bash
-bun run ws:demo
-```
-
-Environment options:
-
-- `PORT` — default `8080`
-- `TIMEPLOT_PROFILE` — `telemetry`, `chirp`, `steps`, or `burst`
-- `TIMEPLOT_INTERVAL_MS` — message interval in milliseconds
-
-Example:
-
-```bash
-PORT=8090 TIMEPLOT_PROFILE=chirp TIMEPLOT_INTERVAL_MS=50 bun run ws:demo
-```
-
-Then set a signal source type to `WebSocket` and point it at:
-
-```text
-ws://localhost:8090
-```