v0.3.12 - Cloud session management (ECAM deep-standby fix candidate)
Added
Cloud session management for ECAM models 🔗 (PR #6 by @TischenkoArseny, following the DlghIoT connect() logic).
Before commands on Eletta-style models, the integration registers a cloud app session by writing timestamp + app_id to app_device_connected. This targets the deep-standby problem in #1 - the machine stopping to react to cloud commands until the official app "nudges" it.
- Eletta-only (
uses_cloud_sessionprofile flag): the PrimaDonna Soul path is byte-for-byte unchanged. - Command frames are NOT modified - learned replay stays verbatim; the session id is used only for the session property write.
- Cold connect runs in a background task (POST + 4 s settle) so button presses return immediately; a warm session (4 min cache) sends directly.
Changed (maintainer hardening on top of PR #6)
- Commands pressed during a cold connect are queued, not dropped.
- Adopting the official app's session id is transient: no background refresh of a foreign session, revert to our own id once released.
- Tests for the session helpers and the profile gating.
57 tests pass.
Eletta testers: this is the release to try for the wake-from-deep-standby problem - see #1.