Created
August 7, 2020 19:15
-
-
Save basesnow/34d1a2982de5ca4711301aa95cd1d1ba to your computer and use it in GitHub Desktop.
Garage Door / HVAC notifications
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Garage Door Notification | |
- id: '1588906118469' | |
alias: 'Notification: Colin''s Stuff: Garage door left open' | |
description: '' | |
trigger: | |
- entity_id: cover.garage_door | |
for: 00:10:00 | |
platform: state | |
to: open | |
- entity_id: cover.garage_door | |
for: 00:30:00 | |
platform: state | |
to: open | |
- entity_id: cover.garage_door | |
for: 03:00:00 | |
platform: state | |
to: open | |
condition: | |
- condition: state | |
entity_id: input_boolean.colin_garage_notification_boolean | |
state: 'off' | |
action: | |
choose: | |
- conditions: | |
- condition: time | |
after: '23:00:00' | |
before: '04:00:00' | |
sequence: | |
- service: notify.colins_apple_stuff | |
data: | |
data: | |
attachment: | |
content-type: jpeg | |
entity_id: camera.garage | |
push: | |
sound: | |
critical: 1 | |
name: default | |
volume: 0.1 | |
category: camera | |
thread-id: garage | |
message: Garage door has been left open for {{relative_time(states.cover.garage_door.last_changed)}}! | |
title: '{{"\U000023F1"}} Garage Door' | |
default: | |
- service: notify.colins_apple_stuff | |
data: | |
data: | |
attachment: | |
content-type: jpeg | |
entity_id: camera.garage | |
push: | |
category: camera | |
thread-id: garage | |
message: Garage door has been left open for {{relative_time(states.cover.garage_door.last_changed)}}! | |
title: '{{"\U000023F1"}} Garage Door' | |
## Window Notification | |
- id: '1590773600993' | |
alias: 'Notification: Colin''s Phone: HVAC when opening windows' | |
description: '' | |
trigger: | |
- entity_id: group.all_windows | |
platform: state | |
to: 'on' | |
condition: | |
- condition: state | |
entity_id: input_boolean.window_open_hvac | |
state: 'off' | |
- condition: not | |
conditions: | |
- condition: state | |
entity_id: climate.honey_pot | |
state: 'off' | |
action: | |
- data: | |
data: | |
push: | |
category: hvac_window_open | |
thread-id: hvac | |
message: You opened the {{ states | selectattr('entity_id','in', state_attr('group.all_windows','entity_id')) | | |
selectattr('state','eq','on') | map(attribute='name') | join(', ') }} window, | |
but the HVAC is on. It's {{states.sensor.honey_pot_temperature.state_with_unit}} | |
inside. Want to turn it off? | |
title: '{{"\U0001F525"}}{{"\U00002744"}} HVAC is on' | |
service: notify.mobile_app_colins_phone | |
mode: single | |
## Automations for actionable Notification responses. This is really long because it handles all my | |
## notification responses, I just listen for the event, then use the data in the event to choose the sequence to run | |
- id: '1595722256115' | |
alias: Notification Push Responses | |
description: 'Listens for push responses from iOS notifications and reacts accordingly ' | |
trigger: | |
- event_data: {} | |
event_type: ios.notification_action_fired | |
platform: event | |
condition: [] | |
action: | |
- choose: | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''TOGGLE'' }}' | |
sequence: | |
- entity_id: cover.garage_door | |
service: cover.toggle | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_1_HOUR_GARAGE'' | |
}}' | |
- condition: or | |
conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.sourceDeviceID == ''colins_phone'' | |
}}' | |
- condition: template | |
value_template: '{{ trigger.event.data.sourceDeviceID == ''mccormick_ipad'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.colin_garage_notification_boolean | |
service: input_boolean.turn_on | |
- delay: 01:00:00 | |
- entity_id: input_boolean.colin_garage_notification_boolean | |
service: input_boolean.turn_off | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_TIL_TOMORROW_GARAGE'' | |
}}' | |
- condition: or | |
conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.sourceDeviceID == ''colins_phone'' | |
}}' | |
- condition: template | |
value_template: '{{ trigger.event.data.sourceDeviceID == ''mccormick_ipad'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.colin_garage_notification_boolean | |
service: input_boolean.turn_on | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_1_HOUR_GARAGE'' | |
}}' | |
- condition: template | |
value_template: '{{ trigger.event.data.sourceDeviceID == ''sarahs_iphone'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.sarah_garage_notification_boolean | |
service: input_boolean.turn_on | |
- delay: 01:00:00 | |
- entity_id: input_boolean.sarah_garage_notification_boolean | |
service: input_boolean.turn_off | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_TIL_TOMORROW_GARAGE'' | |
}}' | |
- condition: template | |
value_template: '{{ trigger.event.data.sourceDeviceID == ''sarahs_iphone'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.sarah_garage_notification_boolean | |
service: input_boolean.turn_on | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_1_HOUR'' }}' | |
sequence: | |
- entity_id: input_boolean.door_hvac | |
service: input_boolean.turn_on | |
- delay: 01:00:00 | |
- entity_id: input_boolean.door_hvac | |
service: input_boolean.turn_off | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_TIL_TOMORROW'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.door_hvac | |
service: input_boolean.turn_on | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_1_HOUR_WINDOW_CLOSE'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.window_close_hvac | |
service: input_boolean.turn_on | |
- delay: 01:00:00 | |
- entity_id: input_boolean.window_close_hvac | |
service: input_boolean.turn_off | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_TIL_TOMORROW_WINDOW_CLOSE'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.window_close_hvac | |
service: input_boolean.turn_on | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_1_HOUR_WINDOW_OPEN'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.window_open_hvac | |
service: input_boolean.turn_on | |
- delay: 01:00:00 | |
- entity_id: input_boolean.window_open_hvac | |
service: input_boolean.turn_off | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''STOP_TIL_TOMORROW_WINDOW_OPEN'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.window_open_hvac | |
service: input_boolean.turn_on | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''HVAC_OFF'' }}' | |
sequence: | |
- data: | |
hvac_mode: 'off' | |
entity_id: climate.honey_pot | |
service: climate.set_hvac_mode | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''AC'' }}' | |
sequence: | |
- data: | |
hvac_mode: cool | |
entity_id: climate.honey_pot | |
service: climate.set_hvac_mode | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''HEAT'' }}' | |
sequence: | |
- data: | |
hvac_mode: heat | |
entity_id: climate.honey_pot | |
service: climate.set_hvac_mode | |
- conditions: | |
- condition: template | |
value_template: '{{ trigger.event.data.actionName == ''RESET_MAIL_BOOLEAN'' | |
}}' | |
sequence: | |
- entity_id: input_boolean.mailbox_notification | |
service: input_boolean.turn_off | |
mode: parallel | |
max: 50 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ios: | |
push: | |
categories: | |
- name: HVAC_WINDOW_OPEN | |
identifier: 'hvac_window_open' | |
actions: | |
- identifier: 'hvac_off' | |
title: 'Turn off' | |
authenticationRequired: 'false' | |
destructive: 'true' | |
- identifier: 'stop_1_hour_window_open' | |
title: 'Pause Notification for 1 Hour' | |
authenticationRequired: 'false' | |
destructive: 'false' | |
- identifier: 'stop_til_tomorrow_window_open' | |
title: 'Pause Notification Until Tomorrow' | |
authenticationRequired: 'false' | |
destructive: 'false' | |
- name: GARAGE | |
identifier: 'camera' | |
actions: | |
- identifier: 'toggle' | |
title: 'Open/Close the Garage Door' | |
authenticationRequired: 'false' | |
destructive: 'true' | |
- identifier: 'stop_1_hour_garage' | |
title: 'Pause Garage Notifications for 1 Hour' | |
authenticationRequired: 'false' | |
destructive: 'false' | |
- identifier: 'stop_til_tomorrow_garage' | |
title: 'Pause Garage Notifications Until Tomorrow' | |
authenticationRequired: 'false' | |
destructive: 'false' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment