5 Commits

Author SHA1 Message Date
alexei.dolgolyov f101ca4c73 feat: expose scene presets as voice-controllable scene.* entities (0.5.0)
Add a SCENE platform (scene.py) so each scene preset becomes a scene.*
entity. Alexa / Google Assistant / HomeKit expose the scene, light, and
switch domains — but NOT button — so the existing button.* scene entities
are invisible to voice assistants. Scenes use a distinct unique_id so both
coexist (buttons for dashboards, scenes for voice).

- Register Platform.SCENE; bump manifest 0.4.0 -> 0.5.0
- README: "Voice Control (Alexa / Google / Siri)" guide (Nabu Casa cloud,
  manual skill linking, HomeKit bridge, voice-friendly naming)
2026-06-23 00:50:38 +03:00
alexei.dolgolyov a666d9eb9c feat: server telemetry, update entity, sync-clock controls
- Server device exposing CPU/RAM/GPU/temperature/battery sensors via
  /api/v1/system/performance, plus last-restart timestamp (cached with
  jitter threshold so the recorder doesn't see poll wobble) and version.
- Update entity backed by /api/v1/system/update — installs via
  /apply, hides the install button when the server reports
  can_auto_update=false.
- Sync-clock entities: reset button, speed number, running switch, and
  the event listener now refreshes on entity_changed events too.
- Bump manifest to 0.4.0.
2026-04-27 01:35:42 +03:00
alexei.dolgolyov 0a16dc9058 feat(api-input): expose timeout/interpolation, fix 422 on light turn-on
- coordinator.update_source now auto-injects source_type from cached data so
  the server's discriminated-union body validates (was rejecting
  fallback_color updates with 422).
- Add Fallback Timeout (number) and Interpolation (select) entities per
  api_input CSS source.
- Light no longer zeros fallback_color on turn_off; state restored across
  HA restarts via RestoreEntity so the chosen default color persists.
- Bump manifest to 0.2.2 and update en/ru translations.
2026-04-26 02:26:06 +03:00
alexei.dolgolyov 5c8b3c259a fix(events): use first-message auth handshake for event WebSocket
The server dropped the ?token=<key> query-param WS auth in favor of a
first-message {"type":"auth","token":...} handshake that must complete
within 3 s, so the old query-param connection silently timed out on the
server side and we reconnected every ~8 s in a tight loop.

Send the handshake right after ws_connect, wait up to 5 s for auth_ok,
and treat auth rejection as a connection error so the reconnect backoff
kicks in instead of hot-looping. Bumps manifest to 0.2.1.
2026-04-21 15:16:54 +03:00
alexei.dolgolyov 579553a850 feat: initial release — LedGrab Home Assistant integration
HACS-compatible custom component split out from the main LedGrab repo.
Creates light, switch, sensor, number, and select entities for each
configured LedGrab device.
2026-04-12 22:32:46 +03:00