New architecture attempt

This commit is contained in:
2025-10-25 22:07:05 -07:00
parent f392cea7de
commit 86f3d9e0e1

View File

@@ -55,7 +55,7 @@ blueprint:
selector:
action: {}
mode: single
mode: restart
max_exceeded: silent
trigger:
@@ -67,6 +67,8 @@ action:
press_count: 1
time_window: !input time_window
immediate: !input immediate_single_press
trigger_entity: !input trigger_entity
initial_last_changed: "{{ states[trigger_entity].last_changed }}"
# Execute single press immediately if enabled
- if:
@@ -77,25 +79,24 @@ action:
- conditions: []
sequence: !input single_press_action
# Wait for additional presses
# Wait for additional presses by monitoring last_changed
- repeat:
while:
- condition: template
value_template: "{{ press_count < 4 }}"
sequence:
- wait_for_trigger:
- platform: state
entity_id: !input trigger_entity
- wait_template: "{{ states[trigger_entity].last_changed != initial_last_changed }}"
timeout:
seconds: "{{ time_window }}"
continue_on_timeout: true
- if:
- condition: template
value_template: "{{ wait.trigger is not none }}"
value_template: "{{ not wait.completed }}"
then:
- variables:
press_count: "{{ press_count + 1 }}"
initial_last_changed: "{{ states[trigger_entity].last_changed }}"
# Execute action based on final press count
- choose: