From 2af1b8086d2649df09f7aefd385299e59fc9e9ba Mon Sep 17 00:00:00 2001 From: Jeffrey Stone Date: Sat, 12 Dec 2020 20:50:38 -0500 Subject: [PATCH] More Tweaks to audible notifications...think we are good now --- config/packages/announcements.yaml | 10 ++-- config/packages/audio.yaml | 46 ++++++++++--------- .../speech/morning_wakeup_report.yaml | 15 +++--- .../speech/skylar_morning_briefing.yaml | 3 ++ config/templates/speech/sundown_briefing.yaml | 33 ++++++++----- 5 files changed, 61 insertions(+), 46 deletions(-) diff --git a/config/packages/announcements.yaml b/config/packages/announcements.yaml index 1001a8a..7f3bf87 100755 --- a/config/packages/announcements.yaml +++ b/config/packages/announcements.yaml @@ -152,8 +152,8 @@ automation: action: - service: scene.turn_on entity_id: scene.skylar_room_morning - - service: script.skylar_morning_briefing_jarvis - + - service: script.skylar_morning_briefing + - id: bbbafc52-eab1-44cd-ac24-4f9b7f4210b6 alias: set skylar morning report time trigger: @@ -213,10 +213,12 @@ script: - service: script.speech_engine data: who: > - {%- if is_state('binary_sensor.theater_occupancy', 'on') and is_state('media_player.theater_tv', 'on') %} + {%- if is_state('media_player.theater_tv', 'on') %} theater - {% else %} + {%- elif is_state('binary_sensor.skylar_room_occupancy', 'on') %} skylar_bedroom + {% else %} + main {%- endif %} message: !include ../templates/speech/skylar_morning_briefing.yaml diff --git a/config/packages/audio.yaml b/config/packages/audio.yaml index 4ecb00a..68d7783 100755 --- a/config/packages/audio.yaml +++ b/config/packages/audio.yaml @@ -113,29 +113,31 @@ sensor: room_audio: friendly_name: "Room Audio" value_template: >- - {% set sensor_count = expand('group.occupancy') | selectattr('state', 'eq', 'on') | list | count %} - {% if sensor_count >= 1 %} - {% for sensor in expand('group.occupancy') %} - {% if as_timestamp(sensor.last_changed) == as_timestamp(expand('group.occupancy') | selectattr('state', 'eq', 'on') | map(attribute='last_changed') | max) %} - {%- if is_state('media_player.theater_tv', 'on') %} - theater - {% elif sensor.name == 'Kitchen Occupancy' %} - kitchen - {% elif sensor.name == 'Living Room Occupancy' and is_state('input_boolean.audible_notifications', 'on') %} - main - {% elif sensor.name == 'Living Room Occupancy' and is_state('input_boolean.audible_notifications', 'off') %} - kitchen - {% elif sensor.name == 'Croft Occupancy' %} - croft - {% elif sensor.name == 'Master Bedroom Occupancy' %} - master_bedroom - {% else %} - all_google - {%- endif %} - {% endif %} - {% endfor %} + {%- if is_state('media_player.theater_tv', 'on') %} + theater {% else %} - main + {% set sensor_count = expand('group.occupancy') | selectattr('state', 'eq', 'on') | list | count %} + {% if sensor_count >= 1 %} + {% for sensor in expand('group.occupancy') %} + {% if as_timestamp(sensor.last_changed) == as_timestamp(expand('group.occupancy') | selectattr('state', 'eq', 'on') | map(attribute='last_changed') | max) %} + {% if is_state('input_boolean.audible_notifications', 'on') %} + {% if sensor.name == 'Kitchen Motion Occupancy' %} + kitchen + {% elif sensor.name == 'Master Bedroom Occupancy' %} + master_bedroom + {% else %} + main + {%- endif %} + {% else %} + {% if sensor.name == 'Croft Occupancy' %} + croft + {% else %} + kitchen + {%- endif %} + {% endif %} + {% endif %} + {% endfor %} + {% endif %} {% endif %} alexa_audio: friendly_name: "Alexa Audio" diff --git a/config/templates/speech/morning_wakeup_report.yaml b/config/templates/speech/morning_wakeup_report.yaml index cf6701c..27083bc 100755 --- a/config/templates/speech/morning_wakeup_report.yaml +++ b/config/templates/speech/morning_wakeup_report.yaml @@ -2,13 +2,9 @@ {# Morning Wakeup Report #} {%- macro getReport() -%}

- {% if now().strftime('%H')|int < 12 and now().strftime('%H')|int > 6 %} + Good morning. - {% elif now().strftime('%H')|int >= 12 and now().strftime('%H')|int < 17 %} - Good afternoon. - {% else %} - Good evening. - {% endif %} +

{% if now().strftime('%H')|int < 12 %} @@ -83,7 +79,10 @@ {{ [ 'Skylar has school today.', 'Skylar needs to head to school in about forty minutes. ', 'Skylar should go to school today. ' - ] | random }} + ] | random }} + {% if states.calendar.skylar_school.attributes.description == 'digital-learning' %} + And today is a digital learning day so the commute will be short. + {% endif %} {% if states.calendar.skylar_school.attributes.description == 'early-release' %} But It is early release! {% endif %} @@ -112,7 +111,7 @@ {% endif %}

- {% if is_state('input_boolean.skylar_is_awake', 'on') %} + {% if is_state('input_boolean.skylar_awake', 'on') %} Skylar was up and moving at {{ states.input_datetime.skylar_awake_at.state }}. {% if is_state('media_player.theater_tv', 'on') %} and he appears to be in the Theater diff --git a/config/templates/speech/skylar_morning_briefing.yaml b/config/templates/speech/skylar_morning_briefing.yaml index 6c9a261..fd314bc 100755 --- a/config/templates/speech/skylar_morning_briefing.yaml +++ b/config/templates/speech/skylar_morning_briefing.yaml @@ -55,6 +55,9 @@

{% if states.calendar.skylar_school.attributes.offset_reached == True and is_state('calendar.school_holiday', 'off') %} Because you have school today! + {% if states.calendar.skylar_school.attributes.description == 'digital-learning' %} + And today is a digital learning day. + {% endif %} {% if states.calendar.skylar_school.attributes.description == 'early-release' %} And guess what? It is early release! {% endif %} diff --git a/config/templates/speech/sundown_briefing.yaml b/config/templates/speech/sundown_briefing.yaml index a6ac19d..a9d99ab 100755 --- a/config/templates/speech/sundown_briefing.yaml +++ b/config/templates/speech/sundown_briefing.yaml @@ -42,20 +42,25 @@ 'If you have not looked outside lately, the light of the day is almost gone.' ]|random }}

-

+ {% if is_state('binary_sensor.garage_door', 'on') %} +

{{ [ 'The garage door is open. ', 'The pod bay doors are open. ', 'Someone forgot to close the garage.' ] | random }} - {% elif is_state('binary_sensor.side_door', 'on') %} +

+ {% elif is_state('binary_sensor.side_door', 'on') %} +

{{ [ 'The side door is ajar. ', 'The side door is open. ', 'Someone forgot to close the side door.' ] | random }} +

{% else %} + {% endif %} -

+

{% if states.sensor.nws_alerts.state | int > 0 %} There are currently {{states.sensor.nws_alerts.state }} active weather alerts for our area. @@ -82,25 +87,29 @@ ]|random }} {{ states.sensor.nws_overnight_forecast.state }}

-

+ {% if is_state('input_boolean.freeze_warning','on') %} +

{{ [ 'The temperature is expected to be near or below freezing. Someone might want to bring the lemon tree in. ', 'It appears that it will be cold tonight. Like, the turn water solid kind of cold. Think of the poor plants.', 'I suggest bringing in the plants other wise, the temperature might kill them. And that will be on you.', 'I would say winter is coming. But, based on the weather forecast it appears to be here.', 'It will be freezing cold tonight. I would bring in the plants but I lack legs. And Arms. So I am forced to rely on you. Do not let me down.' ] | random }} +

{% endif %} -

+ {% if is_state('sensor.today_is', 'Tuesday') %} - {% if now().strftime('%H')|int > 17 %} - {{ [ 'Do not forget to bring in the trash cans. ', - 'The trash cans will feel lonely if you leave them out all night. ', - 'The HOA will get mad if you leave those trash cans out on the street.' - ] | random }} - {% endif %} + + {% if now().strftime('%H')|int > 17 %} +

+ {{ [ 'Do not forget to bring in the trash cans. ', + 'The trash cans will feel lonely if you leave them out all night. ', + 'The HOA will get mad if you leave those trash cans out on the street.' + ] | random }} +

+ {% endif %} {% endif %} -

{% if states.sensor.halloween_countdown.state | int == 1 %} Tomorrow is Halloween. I hope you have picked out a costume.