Files
Home-Assistant/automations/04_kids_and_announcements.yaml
T

742 lines
19 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Kids routines, school prep, and announcement automations.
- 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: or
conditions:
- condition: time
weekday:
- sat
- sun
- condition: state
entity_id: calendar.holidays_in_united_states
state: 'on'
- condition: template
value_template: >
{{ states('calendar.family_events') == 'on'
and 'no school' in (state_attr('calendar.family_events', 'message')
| default('') | lower) }}
actions:
- action: notify.alexa_media
data:
target:
- media_player.living_room
- media_player.declan_s_room
message: Declan, this is your reminder to take your afternoon medicine.
- action: notify.notify_events_alerts
data:
title: Declan medication reminder
message: Declan's afternoon medicine reminder.
mode: single
- id: '1788133654303'
alias: Set weekday announcement speakers to volume 5
description: Set the school-announcement speakers to volume level 5 each weekday.
triggers:
- trigger: time
at: '07:10:00'
conditions:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
actions:
- action: media_player.volume_set
target:
entity_id:
- media_player.family_room
- media_player.living_room
- media_player.kitchen
- media_player.dinning_room
- media_player.declan_s_room
data:
volume_level: 0.5
mode: single
- id: '1788133651043'
alias: Set Jordyns announcement speaker to volume 6
description: Set the school-announcement speakers to volume level 6 each weekday.
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
- id: '1743380000904'
alias: Jordyn OT Wake Up Call 1
description: ''
triggers:
- at: '07:40:00'
trigger: time
enabled: true
conditions:
- condition: time
weekday:
- tue
actions:
- data:
message: 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!
action: notify.alexa_media_jordyn_s_room
mode: single
- id: '1743380036904'
alias: Jordyn OT Wake Up Call 2
description: ''
triggers:
- at: '07:43:00'
trigger: time
enabled: true
conditions:
- condition: time
weekday:
- tue
actions:
- data:
message: 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!
action: notify.alexa_media_jordyn_s_room
mode: single
- id: '1743382700904'
alias: Jordyn OT Wake Up Call 3
description: ''
triggers:
- at: '07:46:00'
trigger: time
enabled: true
conditions:
- condition: time
weekday:
- tue
actions:
- data:
message: Jordyn, get out of bed! Move! Move! Move! Move! Get dressed, put on deodorant, brush your teeth, and brush your hair. You got this!
action: notify.alexa_media_jordyn_s_room
mode: single
- id: '1788133654304'
alias: Jordyn-Bedtime-Snack-Notification-Weekend
description: Triggers an Alexa notification at 8:00 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: calendar.family_events
state: 'on'
- condition: template
value_template: '{{ state_attr(''calendar.family_events'', ''message'') == ''Girls
at Home'' }}'
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: calendar.family_events
state: 'on'
- condition: template
value_template: '{{ state_attr(''calendar.family_events'', ''message'') == ''Girls
at Home'' }}'
actions:
- target:
entity_id:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.dining_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-10-minute-warning-Notification
description: Triggers an Alexa notification at 7:50 PM if the Google Family Calendar
event is 'Girls at Home'
triggers:
- trigger: time
at: '19:50:00'
enabled: true
conditions:
- condition: time
weekday:
- sun
- mon
- tue
- wed
- condition: state
entity_id: calendar.family_events
state: 'on'
- condition: template
value_template: '{{ state_attr(''calendar.family_events'', ''message'') == ''Girls
at Home'' }}'
actions:
- data:
target:
- media_player.living_room
- media_player.dinning_room
message: Jordyn - ten minutes left until it's time to put away screens and get a bedtime snack.
action: notify.alexa_media
mode: single
- id: '1743311106135'
alias: Jordyn-Bedtime-10-minute-warning-weekend-Notification
description: Triggers an Alexa notification at 8:20 PM if the Google Family Calendar
event is 'Girls at Home'
triggers:
- trigger: time
at: '20:20:00'
enabled: true
conditions:
- condition: time
weekday:
- sun
- mon
- tue
- wed
- condition: state
entity_id: calendar.family_events
state: 'on'
- condition: template
value_template: '{{ state_attr(''calendar.family_events'', ''message'') == ''Girls
at Home'' }}'
actions:
- data:
target:
- media_player.living_room
- media_player.dinning_room
message: Jordyn - ten minutes left until it's time to put away screens and get a bedtime snack.
action: notify.alexa_media
mode: single
- id: '1743385356527'
alias: Jordyn’s Light on at 7PM
description: ''
triggers:
- trigger: time
at: '19:00: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:00:00'
conditions:
- condition: and
conditions:
- condition: time
weekday:
- fri
- sat
- sun
- condition: template
value_template: '{{ now().strftime(''%U'') | int % 2 == 1 }}'
actions:
- type: turn_on
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
- id: '1744503044129'
alias: Set Alexa Announcement Volume
description: Set Alexa announcement volume for structured daily routine
triggers:
- at: 08:15:00
trigger: time
conditions:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
actions:
- data:
media:
media_content_id: Set kids speakers to 6
media_content_type: routine
metadata: {}
action: media_player.play_media
target:
device_id: 7c55da01c1d0e4ee7900852bb7621b1e
mode: single
- id: '1744503044809'
alias: Daily Alexa Announcements for Kids
description: Schedule of Alexa announcements for structured daily routine
trigger:
- platform: time
at: 09:00:00
- platform: time
at: '10:00:00'
- platform: time
at: '10:15:00'
- platform: time
at: '11:00:00'
- platform: time
at: '12:00:00'
- platform: time
at: '12:30:00'
- platform: time
at: '13:00:00'
- platform: time
at: '13:30:00'
- platform: time
at: '14:00:00'
- platform: time
at: '14:30:00'
- platform: time
at: '19:29:00'
condition:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
action:
- service: calendar.get_events
target:
entity_id: calendar.family_events
data:
start_date_time: '{{ today_at(''00:00'') }}'
end_date_time: '{{ today_at(''00:00'') + timedelta(days=1) }}'
response_variable: agenda
- condition: template
value_template: "{{ (agenda['calendar.family_events']['events'] | default([]))\n
\ | selectattr('summary', 'defined')\n | map(attribute='summary')\n | map('lower')\n
\ | select('search', 'camp')\n | list | count == 0 }}\n"
- variables:
messages:
08:00:00: Time for breakfast and a little TV!
09:00:00: Outside play time! If it’s bad weather, do your learning activities
inside.
'10:00:00': Snack time!
'10:15:00': Time for quiet play or outside fun.
'11:00:00': Creative time! Draw, color, or write something cool!
'12:00:00': Lunch time! Wash up and head to the table.
'12:30:00': Happy Helper Time! Do your chores like a champ!
'13:00:00': TV break — relax and enjoy.
'13:30:00': Time to read a book or listen to a story.
'14:00:00': Let’s move! Try a Minecraft brain break!
'14:30:00': Time to relax with mindfulness or yoga.
- service: notify.alexa_media
data:
target:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.chloe_s_room
- media_player.declan_s_room
- media_player.kitchen
message: '{{ messages[now().strftime(''%H:%M:%S'')] }}'
data:
type: announce
method: all
mode: single
- 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:
- service: calendar.get_events
target:
entity_id: calendar.family_events
data:
start_date_time: '{{ today_at(''00:00'') }}'
end_date_time: '{{ today_at(''00:00'') + timedelta(days=1) }}'
response_variable: agenda
- condition: template
value_template: "{{ (agenda['calendar.family_events']['events'] | default([]))\n
\ | selectattr('summary', 'defined')\n | map(attribute='summary')\n | map('lower')\n
\ | select('search', 'camp')\n | list | count > 0 }}\n"
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
- data:
target:
- media_player.living_room
- media_player.declan_s_room
- media_player.jordyn_s_room
- media_player.kitchen
message: 'Time to prepare for day camp. Please do the following: Fill water
bottles, put on deodorant, brush teeth, and Jordyn, brush your hair.
'
action: notify.alexa_media
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:
- service: calendar.get_events
target:
entity_id: calendar.family_events
data:
start_date_time: '{{ today_at(''00:00'') }}'
end_date_time: '{{ today_at(''00:00'') + timedelta(days=1) }}'
response_variable: agenda
- condition: template
value_template: "{{ (agenda['calendar.family_events']['events'] | default([]))\n
\ | selectattr('summary', 'defined')\n | map(attribute='summary')\n | map('lower')\n
\ | select('search', 'camp')\n | list | count > 0 }}\n"
- 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:
target:
- media_player.living_room
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.
'
action: notify.alexa_media
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
mode: single
- id: '1744503044145'
alias: Reset Alexa Announcement Volume - Camp Days
description: Set Alexa announcement volume for structured daily routine
trigger:
- platform: time
at: 09:15:00
condition:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
action:
- service: calendar.get_events
target:
entity_id: calendar.family_events
data:
start_date_time: '{{ today_at(''00:00'') }}'
end_date_time: '{{ today_at(''00:00'') + timedelta(days=1) }}'
response_variable: agenda
- condition: template
value_template: "{{ (agenda['calendar.family_events']['events'] | default([]))\n
\ | selectattr('summary', 'defined')\n | map(attribute='summary')\n | map('lower')\n
\ | select('search', 'camp')\n | list | count > 0 }}\n"
- service: media_player.play_media
data:
media_content_id: Reset Alexa Volume
media_content_type: routine
target:
entity_id: media_player.basement_show
mode: single
- id: '1744503044146'
alias: Reset Alexa Announcement Volume - No Camp Days
description: Set Alexa announcement volume for structured daily routine
trigger:
- platform: time
at: '19:17:00'
condition:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- fri
action:
- service: calendar.get_events
target:
entity_id: calendar.family_events
data:
start_date_time: '{{ today_at(''00:00'') }}'
end_date_time: '{{ today_at(''00:00'') + timedelta(days=1) }}'
response_variable: agenda
- condition: template
value_template: "{{ (agenda['calendar.family_events']['events'] | default([]))\n
\ | selectattr('summary', 'defined')\n | map(attribute='summary')\n | map('lower')\n
\ | select('search', 'camp')\n | list | count == 0 }}\n"
- service: media_player.play_media
data:
media_content_id: Reset Alexa Volume
media_content_type: routine
target:
entity_id: media_player.basement_show
mode: single
- 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: '{{ now().strftime(''%U'') | int % 2 == 1 }}'
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
- data:
target:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
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.
action: notify.alexa_media
mode: single
- id: '1788131534302'
alias: Jordyn - Time for School Announcement
description: ''
triggers:
- at: 08:38:00
trigger: time
conditions:
- condition: or
conditions:
- condition: time
weekday:
- wed
- condition: and
conditions:
- condition: time
weekday:
- mon
- condition: template
value_template: '{{ now().strftime(''%U'') | int % 2 == 1 }}'
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
- data:
target:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
- media_player.family_room
message: Time for school! Last call to get your water bottle, snack, and put on your shoes. Good luck, have fun, don't die!!
action: notify.alexa_media
mode: single
- 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: {}
- data:
target:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
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.
action: notify.alexa_media
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: {}
- data:
target:
- media_player.living_room
- media_player.jordyn_s_room
- media_player.kitchen
- media_player.dinning_room
message: Time to head out for OT and school! Last call to quickly get your water bottle, snack, and put on your shoes. Good luck, have fun, don't die!!
action: notify.alexa_media
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
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.media_pause
data: {}
- data:
target:
- media_player.living_room
- media_player.declan_s_room
- media_player.kitchen
- media_player.dinning_room
message: Declan this is your reminder to pack your snack and fill your water bottle.
action: notify.alexa_media
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
actions:
- target:
entity_id: media_player.hisense_g204x_cd41
action: media_player.turn_off
data: {}
- data:
target:
- media_player.living_room
- media_player.declan_s_room
- media_player.kitchen
- media_player.dinning_room
message: Time for school! Last call to get your water bottle, snack, and put on your shoes. Good luck, have fun, don't die!!
action: notify.alexa_media
mode: single