Add holiday and kids' automation scripts, including notifications and schedules

- Introduced holiday automations for Christmas and Halloween, including turning decorations on/off and playing music.
- Added day camp announcements and reminders for kids, including preparation and departure notifications.
- Created specific automation scripts for Declan and Jordyn, focusing on medication reminders and school preparations.
- Implemented daily schedules for kids during summer, with structured activities and announcements.
- Added blueprints for litter notifications and tank moisture interlocks to enhance home automation.
- Established a family schedule package to manage school dates and events effectively.
This commit is contained in:
Joshua King
2026-10-02 08:57:53 -04:00
parent 057744abce
commit f2514f8b22
26 changed files with 2300 additions and 2406 deletions
@@ -0,0 +1,73 @@
####################################################################
############ DAY CAMP ANNOUNCEMENTS AND AUTOMATIONS ################
####################################################################
- id: '1744503044813'
alias: Announce day camp preparation and pause TV
triggers:
- at: 08:25:00
trigger: time
conditions:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
actions:
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'on'
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
continue_on_error: true
- data:
message: 'Time to prepare for day camp. Please do the following: Fill water bottles, put on deodorant, brush teeth, and Jordyn, brush your hair.'
targets:
- media_player.living_room
- media_player.declan_s_room
- media_player.jordyn_s_room
- media_player.kitchen
action: script.family_announcement
mode: single
- id: '1744503044814'
alias: Announce time to leave for day camp and turn off TV
triggers:
- at: 08:40:00
trigger: time
conditions:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
actions:
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'on'
- target:
entity_id: media_player.basement_show
data:
media_content_id: Turn Kids TV Off
media_content_type: routine
action: media_player.play_media
- data:
message: 'It is time to leave for day camp. Please do the following: Put on shoes, get lunch, get water bottle, and grab your bag if needed.'
targets:
- media_player.living_room
action: script.family_announcement
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
continue_on_error: true
mode: single
@@ -0,0 +1,103 @@
###################################################################
################ DECLAN'S ALARMS AND ANNOUNCEMENTS ################
###################################################################
- id: '1788133654306'
alias: Declan - Non-school day afternoon medication reminder
description: Remind Declan to take his medicine at 2 PM on non-school days.
triggers:
- trigger: time
at: '14:00:00'
conditions:
- condition: state
entity_id: binary_sensor.blackhawk_school_day
state: 'off'
actions:
- action: script.family_announcement
continue_on_error: true
data:
message: Declan, this is your reminder to take your afternoon medicine.
targets:
- media_player.living_room
- media_player.declan_s_room
- action: script.notify_events_alerts
data:
title: Declan medication reminder
message: Declan's afternoon medicine reminder.
mode: single
- id: '1788133654301'
alias: Declan - School Prep Announcement
description: ''
triggers:
- at: 07:20:00
trigger: time
conditions:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
- condition: state
entity_id: binary_sensor.blackhawk_school_day
state: 'on'
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'off'
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
continue_on_error: true
- data:
message: Declan this is your reminder to pack your snack and fill your water bottle.
targets:
- media_player.living_room
- media_player.declan_s_room
- media_player.kitchen
- media_player.dinning_room
action: script.family_announcement
mode: single
- id: '1788133654302'
alias: Declan - Time for School Announcement
description: ''
triggers:
- at: 07:38:00
trigger: time
conditions:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
- condition: state
entity_id: binary_sensor.blackhawk_school_day
state: 'on'
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'off'
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
continue_on_error: true
- data:
message: Time for school! Last call to get your water bottle, snack, and put on your shoes. Good luck, have fun, don't die!!
targets:
- media_player.living_room
- media_player.declan_s_room
- media_player.kitchen
- media_player.dinning_room
action: script.family_announcement
mode: single
@@ -0,0 +1,373 @@
#################################################################
############## JORDYN'S ALARMS AND ANNOUNCEMENTS ################
#################################################################
- id: '1788133651043'
alias: Set Jordyns announcement speaker to volume 6
description: Set Jordyn’s speaker to volume 6 before Tuesday OT reminders.
triggers:
- trigger: time
at: '07:35:00'
conditions:
- condition: time
weekday:
- tue
actions:
- action: media_player.volume_set
target:
entity_id:
- media_player.jordyn_s_room
data:
volume_level: 0.6
mode: single
###################################################
############### JORDYN'S OT ALARMS ################
###################################################
- id: '1743380000904'
alias: Jordyn - OT Wake Up Calls
description: Tuesday wake-up calls at 07:40, 07:43 and 07:46, each with its own message.
triggers:
- trigger: time
at: 07:40:00
id: first
- trigger: time
at: 07:43:00
id: second
- trigger: time
at: 07:46:00
id: third
conditions:
- condition: time
weekday:
- tue
actions:
- variables:
messages:
first: Jordyn, time to wake up and get out of bed for OT! Get dressed, put on deodorant, brush your teeth, and brush your hair. You got this!
second: Jordyn, you need to wake up and get out of bed for OT! Get dressed, put on deodorant, brush your teeth, and brush your hair. You got this!
third: Jordyn, get out of bed! Move! Move! Move! Move! Get dressed, put on deodorant, brush your teeth, and brush your hair. You got this!
- condition: template
value_template: '{{ trigger is defined and trigger.id in messages }}'
- action: script.family_announcement
data:
targets:
- media_player.jordyn_s_room
message: '{{ messages[trigger.id] }}'
mode: queued
- id: '1788133654305'
alias: Jordyn - School and OT Prep Announcement
description: ''
triggers:
- at: 07:50:00
trigger: time
conditions:
- condition: time
weekday:
- tue
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
continue_on_error: true
- data:
message: Jordyn, you have OT today. This is your reminder to take your medicine if you haven't, pack your snack and fill your water bottle. Please make sure your hair is brushed nicely.
targets:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
- media_player.family_room_show
action: script.family_announcement
mode: single
- id: '1756211851043'
alias: Jordyn - Time for OT & School Announcement
description: ''
triggers:
- at: 08:13:00
trigger: time
conditions:
- condition: time
weekday:
- tue
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
continue_on_error: true
- data:
message: Time to head out for OT{{ ' and school' if is_state('binary_sensor.blackhawk_school_day', 'on') else '' }}! Last call to quickly get your water bottle, snack, and put on your shoes. Good luck, have fun, don't die!!
targets:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
action: script.family_announcement
mode: single
#################################################
############### JORDYN'S SCHOOL ALARMS ##########
#################################################
- id: '1756211568290'
alias: Jordyn - School Prep Announcement
description: ''
triggers:
- at: 08:25:00
trigger: time
conditions:
- condition: or
conditions:
- condition: time
weekday:
- wed
- condition: and
conditions:
- condition: time
weekday:
- mon
- condition: template
value_template: '{{ is_state(''binary_sensor.girls_at_home'', ''on'') }}'
- condition: state
entity_id: binary_sensor.blackhawk_school_day
state: 'on'
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'off'
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
continue_on_error: true
- data:
message: Jordyn this is your reminder to take your medicine if you haven't, pack your snack and fill your water bottle. Please make sure your hair is brushed nicely.
targets:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
action: script.family_announcement
mode: single
- id: '1788131534302'
alias: Jordyn - Time for School Announcement
description: ''
triggers:
- at: 08:41:00
trigger: time
conditions:
- condition: or
conditions:
- condition: time
weekday:
- wed
- condition: and
conditions:
- condition: time
weekday:
- mon
- condition: template
value_template: '{{ is_state(''binary_sensor.girls_at_home'', ''on'') }}'
- condition: state
entity_id: binary_sensor.blackhawk_school_day
state: 'on'
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'off'
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
continue_on_error: true
- data:
message: Time for school! Last call to get your water bottle, snack, and put on your shoes. Good luck, have fun, don't die!!
targets:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
- media_player.family_room_show
action: script.family_announcement
mode: single
##################################################
############### JORDYN'S BEDTIME ALARMS ##########
##################################################
- id: '1788133654304'
alias: Jordyn-Bedtime-Snack-Notification-Weekend
description: Triggers an Alexa notification at 8:30 PM if the Google Calendar event
is 'Girls at Home'
triggers:
- at: '20:30:00'
trigger: time
enabled: true
conditions:
- condition: time
weekday:
- fri
- sat
- condition: state
entity_id: binary_sensor.girls_at_home
state: 'on'
actions:
- data:
message: Jordyn, time to put away screens and get a bedtime snack.
action: notify.alexa_media_living_room
mode: single
- id: '1743381226135'
alias: Jordyn-Bedtime-Snack-Notification
description: Triggers an Alexa notification at 8 PM if the Google Family Calendar
event is 'Girls at Home'
triggers:
- trigger: time
at: '20:00:00'
enabled: true
conditions:
- condition: time
weekday:
- sun
- mon
- tue
- wed
- condition: state
entity_id: binary_sensor.girls_at_home
state: 'on'
actions:
- target:
entity_id:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.dinning_room
data:
media:
media_content_id: Jordyn Weekday Bedtime Routine
media_content_type: routine
metadata: {}
action: media_player.play_media
mode: single
- id: '1743311126135'
alias: Jordyn - Bedtime Ten Minute Warning
description: Warn at 19:50 on Sun-Wed or 20:20 on Fri-Sat while Girls at Home is active.
triggers:
- trigger: time
at: '19:50:00'
id: weekday
- trigger: time
at: '20:20:00'
id: weekend
conditions:
- condition: state
entity_id: binary_sensor.girls_at_home
state: 'on'
- condition: or
conditions:
- condition: and
conditions:
- condition: trigger
id: weekday
- condition: time
weekday:
- sun
- mon
- tue
- wed
- condition: and
conditions:
- condition: trigger
id: weekend
- condition: time
weekday:
- fri
- sat
actions:
- action: script.family_announcement
data:
message: Jordyn - ten minutes left until it's time to put away screens and get a bedtime snack.
targets:
- media_player.living_room
- media_player.dinning_room
mode: single
- id: '1743385356527'
alias: Jordyn’s Light on at 7:30PM
description: ''
triggers:
- trigger: time
at: '19:30:00'
conditions:
- condition: time
weekday:
- mon
- tue
actions:
- type: turn_on
device_id: ef731a5e6e666bf4fc20cc321f596029
entity_id: 9629035816fddf7de8926e4e4c29aa34
domain: switch
mode: single
- id: '1743385432089'
alias: Jordyn’s light on weekend
description: ''
triggers:
- trigger: time
at: '19:30:00'
conditions:
- condition: and
conditions:
- condition: time
weekday:
- fri
- sat
- sun
- condition: state
entity_id: binary_sensor.girls_at_home
state: 'on'
actions:
- type: turn_on
device_id: ef731a5e6e666bf4fc20cc321f596029
entity_id: 9629035816fddf7de8926e4e4c29aa34
domain: switch
mode: single
- id: '1739970910638'
alias: 10PM Turn Jordyn's Lamp Off
description: ''
triggers:
- trigger: time
at: '22:00:00'
conditions: []
actions:
- type: turn_off
device_id: ef731a5e6e666bf4fc20cc321f596029
entity_id: 9629035816fddf7de8926e4e4c29aa34
domain: switch
mode: single
# - id: '1744560941050'
# alias: Jordyn’s Lamp on at 730
# description: ''
# triggers:
# - trigger: time
# at: '19:30:00'
# conditions: []
# actions:
# - type: turn_on
# device_id: ef731a5e6e666bf4fc20cc321f596029
# entity_id: 9629035816fddf7de8926e4e4c29aa34
# domain: switch
# mode: single
@@ -0,0 +1,75 @@
- id: '1744503044809'
alias: Daily Alexa Announcements for Kids
description: Weekday summer routine on days with no camp; messages use stable trigger IDs.
triggers:
- trigger: time
at: 08:00:00
id: breakfast
- trigger: time
at: 09:00:00
id: morning_play
- trigger: time
at: '10:00:00'
id: snack
- trigger: time
at: '10:15:00'
id: quiet_play
- trigger: time
at: '11:00:00'
id: creative
- trigger: time
at: '12:00:00'
id: lunch
- trigger: time
at: '12:30:00'
id: chores
- trigger: time
at: '13:00:00'
id: tv_break
- trigger: time
at: '13:30:00'
id: reading
- trigger: time
at: '14:00:00'
id: movement
- trigger: time
at: '14:30:00'
id: relax
conditions:
- condition: state
entity_id: binary_sensor.kids_summer_schedule_day
state: 'on'
- condition: state
entity_id: binary_sensor.day_camp_today
state: 'off'
actions:
- variables:
messages:
breakfast: Time for breakfast and a little TV!
morning_play: Outside play time! If it’s bad weather, do your learning activities inside.
snack: Snack time!
quiet_play: Time for quiet play or outside fun.
creative: Creative time! Draw, color, or write something cool!
lunch: Lunch time! Wash up and head to the table.
chores: Happy Helper Time! Do your chores like a champ!
tv_break: TV break — relax and enjoy.
reading: Time to read a book or listen to a story.
movement: Let’s move! Try a Minecraft brain break!
relax: Time to relax with mindfulness or yoga.
- condition: template
value_template: '{{ trigger is defined and trigger.id in messages }}'
- action: script.family_announcement
data:
message: '{{ messages[trigger.id] }}'
targets:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.chloe_s_room
- media_player.declan_s_room
- media_player.kitchen
delivery:
type: announce
method: all
mode: queued