No description
Find a file
Mitchell R 16ab165b06 feat: live updates via WebSocket — server pushes, kiosk reloads
Server side:
- service-coordinator-ws: full WS implementation using ws package
- Auth via ?token=<kiosk_key> query param
- Coordinator registry for cross-plugin notification
- Admin mutations call notifyKiosks() → server pushes reload-bundle
- 30s ping/pong heartbeat

Kiosk side:
- Rust ws_client with tokio runtime + tokio-tungstenite
- Auto-reconnect with exponential backoff (1s → 60s cap)
- On reload-bundle: re-fetches bundle, re-renders layout
- Pong replies to server pings

Also fix: auto-suffix kiosk name on UNIQUE collision (re-pair with
same hostname no longer fails).
2026-05-10 22:15:58 +02:00
docs refactor: merge templates into layouts, displays from kiosks 2026-05-10 21:39:09 +02:00
kiosk feat: live updates via WebSocket — server pushes, kiosk reloads 2026-05-10 22:15:58 +02:00
scripts adding initial project 2026-05-10 01:09:13 +02:00
server feat: live updates via WebSocket — server pushes, kiosk reloads 2026-05-10 22:15:58 +02:00
.gitignore adding initial project 2026-05-10 01:09:13 +02:00
CLAUDE.md feat: RTSP field split, coordinator-ws stub, CLAUDE.md update 2026-05-10 15:35:47 +02:00
package-lock.json feat: live updates via WebSocket — server pushes, kiosk reloads 2026-05-10 22:15:58 +02:00
package.json adding initial project 2026-05-10 01:09:13 +02:00
sec-config.yaml feat: RTSP field split, coordinator-ws stub, CLAUDE.md update 2026-05-10 15:35:47 +02:00
tsconfig.base.json adding initial project 2026-05-10 01:09:13 +02:00