Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions custom_components/entity_controller/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,18 @@ async def async_setup(hass, config):
dest="idle",
conditions=["is_state_entities_on", "is_duration_sensor", "is_sensor_off"],
)
# Catch-all: block_timer_expires -> idle for every case the conditional
# transitions above do not handle. Without it the controller stays stuck in
# `blocked` past its block_timeout when the timer fires and state entities
# are still reported as on (e.g. slow cloud/gateway feedback from
# integrations like Overkiz/Tahoma) while the trigger sensor is already off,
# or when state entities are off but no earlier transition matches. Added
# last so the conditional "go to active" rules are evaluated first.
Comment on lines +333 to +339
machine.add_transition(
trigger="block_timer_expires",
source="blocked",
dest="idle",
)
Comment on lines +340 to +344

# Active Timer
machine.add_transition(
Expand Down