initial push

This commit is contained in:
CeeWeasel
2024-04-14 14:08:56 -04:00
commit 53bf393d14
1111 changed files with 71730 additions and 0 deletions
@@ -0,0 +1,26 @@
alias: Kristy Asleep
id: automation_kristy_asleep
initial_state: 'on'
trigger:
- platform: state
entity_id: input_boolean.kristy_in_bed
to: 'on'
for:
minutes: 15
condition:
- condition: and
conditions:
- condition: state
entity_id: input_boolean.kristy_is_awake
state: 'on'
- condition: state
entity_id: input_boolean.kristy_home
state: 'on'
- condition: time
after: '20:30:00'
before: '04:00:00'
action:
- service: input_boolean.turn_off
entity_id: input_boolean.kristy_is_awake
@@ -0,0 +1,15 @@
alias: Kristy Awake
id: automation_kristy_awake
mode: restart
trigger:
- platform: state
entity_id: input_boolean.kristy_in_bed
to: 'off'
for: '00:05:00'
action:
- service: input_boolean.turn_on
entity_id: input_boolean.kristy_is_awake
- service: script.turn_on
entity_id: script.kristy_travel_sensor
@@ -0,0 +1,37 @@
alias: 'Kristy Away'
id: automation_kristy_away
mode: restart
trigger:
- platform: state
entity_id:
- device_tracker.kristy_s_phone
from: 'home'
- platform: homeassistant
event: start
condition:
- condition: state
entity_id: device_tracker.kristy_s_phone
state: 'not_home'
action:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.kristy_s_phone
state: 'not_home'
sequence:
- service: input_boolean.turn_off
entity_id: input_boolean.kristy_home
- service: input_boolean.turn_on
entity_id: input_boolean.allow_announcements
- service: input_boolean.turn_on
entity_id: input_boolean.out_of_bed_alert
- delay: '00:00:30'
@@ -0,0 +1,41 @@
alias: 'Kristy Home'
id: automation_kristy_home
mode: restart
trigger:
- platform: homeassistant
event: start
- platform: state
entity_id:
- group.person_kristy
- device_tracker.kristy_s_phone
to: 'home'
- platform: event
event_type: automation_reloaded
condition:
- alias: 'They were previously considered away'
condition: state
entity_id: input_boolean.kristy_home
state: 'off'
- alias: 'At least one tracker is home'
condition: numeric_state
entity_id: group.person_kristy
above: 0
value_template: "{{ dict((states|selectattr('entity_id', 'in', state_attr('group.person_kristy', 'entity_id'))|list)|groupby('state'))['home']|count }}"
action:
- service: input_boolean.turn_off
entity_id: input_boolean.kristy_travelling
- service: input_boolean.turn_on
entity_id: input_boolean.kristy_home
- service: input_boolean.turn_off
entity_id: input_boolean.allow_announcements
- service: input_boolean.turn_off
entity_id: input_boolean.out_of_bed_alert
@@ -0,0 +1,39 @@
alias: Kristy in Bed
id: automation_kristy_in_bed
trigger:
# Bed in master bedroom is occupied
- platform: state
entity_id: binary_sensor.master_bed_occupied
to: 'on'
# Radio playing
- platform: state
entity_id: media_player.master_bedroom_clock
to: 'playing'
- platform: state
entity_id: media_player.master_bedroom_clock
to: 'idle'
# Light on
- platform: state
entity_id: light.master_bedroom_hue
to: 'on'
condition:
- condition: state
entity_id: input_boolean.kristy_in_bed
state: 'off'
- condition: state
entity_id: input_boolean.kristy_home
state: 'on'
- alias: "Its between 8:30PM and 5AM"
condition: time
after: '20:30:00'
before: '05:00:00'
- alias: "The bed is occupied"
condition: state
entity_id: binary_sensor.master_bed_occupied
state: 'on'
action:
- service: input_boolean.turn_on
entity_id: input_boolean.kristy_in_bed
@@ -0,0 +1,18 @@
alias: 'Kristy Location Update'
id: automation_kristy_location_update
mode: restart
trigger:
# I've moved
- platform: state
entity_id:
- input_select.kristy_status_dropdown
- input_boolean.kristy_home
condition:
- condition: template
value_template: '{{ trigger.from_state.state != trigger.to_state.state }}'
action:
- service: script.turn_on
entity_id: script.kristy_travel_sensor
@@ -0,0 +1,49 @@
alias: Kristy Status at Startup
id: automation_kristy_status_at_startup
mode: restart
trigger:
- platform: homeassistant
event: start
condition:
- condition: state
entity_id: input_boolean.kristy_home
state: 'on'
action:
- choose:
- conditions:
- condition: time
after: '23:30:00'
before: '00:00:00'
sequence:
- service: input_boolean.turn_on
entity_id:
- input_boolean.kristy_in_bed
- service: input_boolean.turn_on
entity_id:
- input_boolean.kristy_is_awake
- conditions:
- condition: time
after: '00:00:00'
before: '06:00:00'
sequence:
- service: input_boolean.turn_on
entity_id:
- input_boolean.kristy_in_bed
- service: input_boolean.turn_off
entity_id:
- input_boolean.kristy_is_awake
default:
- service: input_boolean.turn_off
entity_id:
- input_boolean.kristy_in_bed
- service: input_boolean.turn_on
entity_id:
- input_boolean.kristy_is_awake