diff --git a/packages/modes/sleep_mode.yaml b/packages/modes/sleep_mode.yaml index ae1ff2c..7bde906 100644 --- a/packages/modes/sleep_mode.yaml +++ b/packages/modes/sleep_mode.yaml @@ -13,7 +13,7 @@ automation: from: "off" to: "on" action: - - service: script.routine_bedtime + - service: script.routine_good_night - id: disable_sleep_mode alias: Sleep mode · Disable diff --git a/packages/modules/music.yaml b/packages/modules/music.yaml index 9ed7d91..d4b3d69 100644 --- a/packages/modules/music.yaml +++ b/packages/modules/music.yaml @@ -1,3 +1,11 @@ +group: + all_sonos: + name: "All Sonos" + entities: + - media_player.master_bedroom + - media_player.living_room + - media_player.kitchen + script: music_play: alias: "Music · Play" diff --git a/packages/routines/bedtime.yaml b/packages/routines/bedtime.yaml index 0cc79aa..676e71b 100644 --- a/packages/routines/bedtime.yaml +++ b/packages/routines/bedtime.yaml @@ -2,18 +2,36 @@ script: routine_bedtime: alias: Routine · Bedtime sequence: - - service: media_player.media_stop - entity_id: media_player.master_bedroom + # Set master bedroom state + - service: light.turn_on + entity_id: light.bedside_light - service: fan.turn_on entity_id: fan.philips_airpurifier + - service: media_player.volume_set + entity_id: media_player.master_bedroom + data: + volume_level: 0.15 + + # Turn off everything else + - service: sonos.unjoin + entity_id: + - media_player.living_room + - media_player.kitchen - service: media_player.turn_off entity_id: - media_player.nvidia_shield - media_player.living_room_tv - service: light.turn_off - entity_id: light.all_lights - - delay: 00:00:02 - # use say_discretely instead of talk, because sleep_mode is already on - - service: script.say_discretely - data: - message: "Entering sleep mode. Good night!" + entity_id: light.living_room_all_lights + +automation: + - id: bedtime_toggle_on_master_bedroom_bedside_switch_hold + alias: Routine · Bedtime · Toggle on bedside switch hold + trigger: + - platform: event + event_type: zha_event + event_data: + device_ieee: !secret master_bedroom_bedside_switch_ieee + command: hold + action: + - service: script.routine_bedtime diff --git a/packages/routines/good_night.yaml b/packages/routines/good_night.yaml new file mode 100644 index 0000000..04d749a --- /dev/null +++ b/packages/routines/good_night.yaml @@ -0,0 +1,27 @@ +script: + routine_good_night: + alias: Routine · Going to sleep + sequence: + - service: fan.turn_on + entity_id: fan.philips_airpurifier + - service: media_player.media_stop + entity_id: group.all_sonos + - service: light.turn_off + entity_id: light.all_lights + - service: media_player.turn_off + entity_id: + - media_player.nvidia_shield + - media_player.living_room_tv + # Use say_discretely instead of talk, because sleep_mode is already on. + - service: script.say_discretely + data: + message: "Entering sleep mode. Good night!" + + # Prepare for the next day. + - delay: 00:00:05 + - service: sonos.join + entity_id: + - media_player.living_room + - media_player.kitchen + data: + master: media_player.master_bedroom