Add queue kiosk and display devices for Care Queue management.
Deploy Ladill Care / deploy (push) Successful in 39s

Register walk-up kiosks and waiting-room display devices under Devices, with public kiosk ticket issue and linked TV boards surfaced in sidebar and Queue shortcuts.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-20 10:59:02 +00:00
co-authored by Cursor
parent b2cebe2908
commit a3839da869
18 changed files with 1103 additions and 60 deletions
+13 -2
View File
@@ -7,16 +7,27 @@ Ladill Care supports two realistic hardware paths:
| USB barcode / QR scanner | **Browser keyboard wedge** — scan into Patients or Lab | All plans |
| Badge / label printer | Browser print CSS (patient ID label) | All plans |
| Thermometer, BP monitor, pulse ox, scale, lab analyzer | **Care Device Agent** (local machine) | Pro / Enterprise |
| **Queue kiosk** | Public `/kiosk/d/{token}` tablet URL — walk-up ticket issue | Pro / Enterprise |
| **Queue display** | Registers a waiting-room TV board (`/display/{token}`) | Pro / Enterprise |
Browser pages cannot open serial ports or most BLE clinical devices without a local helper. The agent holds the vendor/serial connection and posts readings to Care with a device token.
## Queue devices
**Devices → Add kiosk / Add display** (or Queue board shortcuts):
1. **Kiosk** — assign service queues, optional name/phone collection. Open the public kiosk URL on a locked tablet.
2. **Display** — creates a linked waiting display screen for the selected queues. Open the board URL on a TV/tablet.
Waiting displays can also be managed under **Displays** in the sidebar / Settings.
## Device registry
**Settings → Devices** (hospital admin):
1. Register a device (branch-scoped).
2. For agent types, Care shows a **plaintext token once** (create / regenerate). The DB stores only `device_token_hash`.
3. Status updates from agent heartbeats (`active` + `last_seen_at`).
2. For agent types and queue devices, Care shows a **plaintext token once** (create / regenerate). The DB stores `device_token_hash` (queue devices also keep `metadata.access_token` so the public URL can be reopened).
3. Status updates from agent/kiosk heartbeats (`active` + `last_seen_at`).
## Browser wedge (patients)