BetterFrame/kiosk
Mitchell R 5ce526eb33
feat: audio controls, reboot button, update lock, ONVIF refresh
- Audio: kiosk/src/audio.rs — PipeWire/ALSA volume, mute, output
  selection. WS commands volume-set/volume-mute/audio-output.
  Heartbeat reports audio state. Admin UI volume buttons + mute.
- Reboot: admin button with confirmation, WS reboot command,
  kiosk runs systemctl reboot.
- Firmware update now reboots (not exit) to clear state fully.
- Update lock: FIRMWARE_LOCK + OS_UPDATE_LOCK mutexes prevent
  concurrent update attempts from heartbeat + WS paths.
- ONVIF: auto-refresh stale/failed subs (>24h or failed state),
  mark_event_received with proper epoch timestamp, parse Key
  section for PlateNumber.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-26 16:57:41 +02:00
..
src feat: audio controls, reboot button, update lock, ONVIF refresh 2026-05-26 16:57:41 +02:00
Cargo.lock refactor(kiosk): migrate all bundle IDs to String for UUIDv7 + ONVIF image proxy 2026-05-26 13:09:32 +02:00
Cargo.toml refactor(kiosk): migrate all bundle IDs to String for UUIDv7 + ONVIF image proxy 2026-05-26 13:09:32 +02:00
prototype.sh fix(deploy): require proxied local services 2026-05-11 09:51:00 +02:00