Skip to content

Instantly share code, notes, and snippets.

@amrutprabhu
Created December 21, 2023 20:15
Show Gist options
  • Save amrutprabhu/cb3ef5dbb1b72fb1f4a0b661cb3198c3 to your computer and use it in GitHub Desktop.
Save amrutprabhu/cb3ef5dbb1b72fb1f4a0b661cb3198c3 to your computer and use it in GitHub Desktop.
blueprint:
name: ZHA - Tuya 4-Button Scene Switch
description: Automate your Tuya 4-Button Scene Switch using ZHA events.
domain: automation
input:
tuya_4button_scene_switch:
name: Tuya 4-Button Scene Switch
description: Tuya 4-Button Scene Switch to use
selector:
device:
integration: zha
manufacturer: _TZ3000_wkai4ga5
model: TS0044
button_one_short_press:
name: Single Press
description: Action to run on button 1 (lower-left) single press
default: []
selector:
action: {}
button_one_double_press:
name: Double Press
description: Action to run on button 1 (lower-left) double press
default: []
selector:
action: {}
button_one_long_press:
name: Long Press
description: Action to run on button 1 (lower-left) long press
default: []
selector:
action: {}
button_two_short_press:
name: Single Press
description: Action to run on button 2 (lower-right) single press
default: []
selector:
action: {}
button_two_double_press:
name: Double Press
description: Action to run on button 2 (lower-right) double press
default: []
selector:
action: {}
button_two_long_press:
name: Long Press
description: Action to run on button 2 (lower-right) long press
default: []
selector:
action: {}
button_three_short_press:
name: Single Press
description: Action to run on button 3 (upper-right) single press
default: []
selector:
action: {}
button_three_double_press:
name: Double Press
description: Action to run on button 3 (upper-right) double press
default: []
selector:
action: {}
button_three_long_press:
name: Long Press
description: Action to run on button 3 (upper-right) long press
default: []
selector:
action: {}
button_four_short_press:
name: Single Press
description: Action to run on button 4 (upper-left) single press
default: []
selector:
action: {}
button_four_double_press:
name: Double Press
description: Action to run on button 4 (upper-left) double press
default: []
selector:
action: {}
button_four_long_press:
name: Long Press
description: Action to run on button 4 (upper-left) long press
default: []
selector:
action: {}
mode: restart
max_exceeded: silent
trigger:
- platform: event
event_type: zha_event
event_data:
device_id: !input 'tuya_4button_scene_switch'
action:
- variables:
command: '{{ trigger.event.data.command }}'
endpoint_id: '{{ trigger.event.data.endpoint_id }}'
- choose:
- conditions: "{{ command == 'remote_button_short_press' }}"
sequence:
- choose:
- conditions: '{{ endpoint_id == 1 }}'
sequence: !input 'button_one_short_press'
- conditions: '{{ endpoint_id == 2 }}'
sequence: !input 'button_two_short_press'
- conditions: '{{ endpoint_id == 3 }}'
sequence: !input 'button_three_short_press'
- conditions: '{{ endpoint_id == 4 }}'
sequence: !input 'button_four_short_press'
- conditions: "{{ command == 'remote_button_double_press' }}"
sequence:
- choose:
- conditions: '{{ endpoint_id == 1 }}'
sequence: !input 'button_one_double_press'
- conditions: '{{ endpoint_id == 2 }}'
sequence: !input 'button_two_double_press'
- conditions: '{{ endpoint_id == 3 }}'
sequence: !input 'button_three_double_press'
- conditions: '{{ endpoint_id == 4 }}'
sequence: !input 'button_four_double_press'
- conditions: "{{ command == 'remote_button_long_press' }}"
sequence:
- choose:
- conditions: '{{ endpoint_id == 1 }}'
sequence: !input 'button_one_long_press'
- conditions: '{{ endpoint_id == 2 }}'
sequence: !input 'button_two_long_press'
- conditions: '{{ endpoint_id == 3 }}'
sequence: !input 'button_three_long_press'
- conditions: '{{ endpoint_id == 4 }}'
sequence: !input 'button_four_long_press'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment