From e08d6a00cc007723f0d0fadfc25f3758cef71dac Mon Sep 17 00:00:00 2001 From: Jeffrey Stone Date: Wed, 4 Aug 2021 15:57:44 -0400 Subject: [PATCH] Lots of small changes....I need to get better at tracking changes --- config/packages/announcements.yaml | 24 ++-- config/packages/appliances.yaml | 29 ++--- config/packages/daily.yaml | 13 -- config/packages/database.yaml | 18 ++- config/packages/events.yaml | 8 ++ config/packages/lighting.yaml | 5 +- config/packages/maintenance.yaml | 10 ++ config/packages/notify.yaml | 60 ++++++++-- config/packages/presence.yaml | 183 +---------------------------- config/packages/reminders.yaml | 78 +----------- config/packages/security.yaml | 13 +- config/packages/space.yaml | 61 +--------- config/packages/sysmon.yaml | 6 + config/packages/twitter.yaml | 71 ++--------- config/packages/youtube.yaml | 30 +++-- config/sensors/house.yaml | 40 +++++-- 16 files changed, 184 insertions(+), 465 deletions(-) diff --git a/config/packages/announcements.yaml b/config/packages/announcements.yaml index 46f593f..59070d7 100755 --- a/config/packages/announcements.yaml +++ b/config/packages/announcements.yaml @@ -71,15 +71,15 @@ automation: entity_id: input_boolean.audible_notifications - - id: cb0063e4-1dfe-4537-8b9e-4f64b2eba35d - initial_state: true - alias: Skylar Nightly Announcements - trigger: - platform: template - value_template: "{{ states('sensor.time') == (state_attr('input_datetime.skylar_nightly_report', 'timestamp') | int | timestamp_custom('%H:%M', False)) }}" - action: - - service: script.turn_on - entity_id: script.skylar_nightly_briefing + # - id: cb0063e4-1dfe-4537-8b9e-4f64b2eba35d + # initial_state: true + # alias: Skylar Nightly Announcements + # trigger: + # platform: template + # value_template: "{{ states('sensor.time') == (state_attr('input_datetime.skylar_nightly_report', 'timestamp') | int | timestamp_custom('%H:%M', False)) }}" + # action: + # - service: script.turn_on + # entity_id: script.skylar_nightly_briefing - id: 1d8f396a-f6ec-460d-97e3-d11900418f95 @@ -120,6 +120,10 @@ automation: trigger: platform: time at: input_datetime.daily_report + condition: + condition: state + entity_id: binary_sensor.workday_sensor + state: 'on' action: - service: script.morning_wakeup_report @@ -141,7 +145,7 @@ automation: at: '06:05:00' action: - service: input_datetime.set_datetime - entity_id: input_datetime.skylar_morning_report + entity_id: input_datetime.skylar_morning_reportnotion data_template: time: > {% if states('input_boolean.school_today', 'on') %} diff --git a/config/packages/appliances.yaml b/config/packages/appliances.yaml index 80b8f0d..15402b6 100755 --- a/config/packages/appliances.yaml +++ b/config/packages/appliances.yaml @@ -21,6 +21,15 @@ sensor: name: "Washer Last Emptied" state_topic: "house/washer/time_emptied" +utility_meter: + washer_daily_kwh: + source: sensor.washer_switch_electric_consumed_kwh + cycle: daily + washer_weekly_kwh: + source: sensor.washer_switch_electric_consumed_kwh + cycle: weekly + + automation: - id: washer_running @@ -40,13 +49,6 @@ automation: state: complete action: - service: script.washer_running - # Since the washer has run lets consume a detergent tablet - # - service: shell_command.grocy_consume_item - # data: - # server_ip: !secret grocy_ip - # grocy_key: !secret grocy_api_key - # product_id: 6 - # amount: 1 initial_state: true - id: washer_complete @@ -80,11 +82,6 @@ automation: topic: house/washer/time_emptied payload: '{{ now().timestamp() }}' retain: true - # - service: mqtt.publish - # data: - # topic: house/washer/time_ran - # payload: '{{ now().timestamp() - as_timestamp(states.sensor.washer_last_complete) }}' - # retain: true - id: washer_notification initial_state: true @@ -111,7 +108,7 @@ automation: action: - service: script.dishwasher_idle - # When dishwasher connects to network assume it is running cycle. Auto consume detergent in Grocy + # When dishwasher connects to network assume it is running cycle. - id: dishwasher_running initial_state: true alias: Dishwasher Running @@ -121,12 +118,6 @@ automation: to: 'home' action: - service: script.dishwasher_running - - service: shell_command.grocy_consume_item - data: - server_ip: !secret grocy_ip - grocy_key: !secret grocy_api_key - product_id: 7 - amount: 1 script: diff --git a/config/packages/daily.yaml b/config/packages/daily.yaml index 023bd46..2bb031c 100755 --- a/config/packages/daily.yaml +++ b/config/packages/daily.yaml @@ -269,19 +269,6 @@ automation: action: - service: scene.turn_on entity_id: scene.skylar_room_day - - - - - id: 86fd5de9-3136-4d86-aef9-268f097eae35 - alias: HA Startup - initial_state: true - trigger: - - platform: homeassistant - event: start - action: - service: frontend.set_theme - data: - name: midnight-AH - id: 82b96b73-2407-49d7-8ea2-1f78a69e025b alias: Jeff eta home diff --git a/config/packages/database.yaml b/config/packages/database.yaml index 2e21f4b..b8b096d 100755 --- a/config/packages/database.yaml +++ b/config/packages/database.yaml @@ -6,19 +6,28 @@ ############################################################################### recorder: - #db_url: !secret database - purge_keep_days: 1 + db_url: !secret database + purge_keep_days: 30 exclude: domains: - automation - weblink - updater + - script entities: - sun.sun # Don't record sun data - sensor.last_boot # Comes from 'systemmonitor' sensor platform - sensor.date - sensor.icloud3_event_log - + - sensor.time + - sensor.today_is + - sensor.time_utc + - sensor.time_date + - sensor.time_online + - sensor.moon + - sensor.month_is + - sensor.low_battery + logbook: include: domains: @@ -28,6 +37,9 @@ logbook: - scene - light - switch + - device_tracker + - input_boolean + - person # Lets try to make the logs less chatty and more fine tuned. logger: diff --git a/config/packages/events.yaml b/config/packages/events.yaml index c7d7f0d..6a82ece 100755 --- a/config/packages/events.yaml +++ b/config/packages/events.yaml @@ -78,6 +78,14 @@ input_datetime: name: Blackout Time End has_date: false has_time: true + pest_service: + name: Pest Service + has_date: true + has_time: true + gutter_service: + name: Pest Service + has_date: true + has_time: true diff --git a/config/packages/lighting.yaml b/config/packages/lighting.yaml index 185d490..9ff6126 100755 --- a/config/packages/lighting.yaml +++ b/config/packages/lighting.yaml @@ -13,7 +13,10 @@ input_number: max: 255 step: 8.5 - +device_sun_light_trigger: + light_group: group.kitchen + light_profile: concentrate + device_group: group.family automation: diff --git a/config/packages/maintenance.yaml b/config/packages/maintenance.yaml index 5fe031b..753f5b9 100755 --- a/config/packages/maintenance.yaml +++ b/config/packages/maintenance.yaml @@ -57,6 +57,13 @@ automation: minutes: /30 action: - service: script.store_lightning_count + - id: refresh_total_rain_amount + alias: Refresh Total Rain Amount + trigger: + - platform: time + at: '23:59:00' + action: + - service: script.store_rain_total # startup auotmations to update some custom sensors due to new order of home assistant firing up @@ -76,3 +83,6 @@ automation: entity_id: sensor.today_is - service: homeassistant.update_entity entity_id: sensor.holiday + - service: frontend.set_theme + data: + name: ios_dark_mode diff --git a/config/packages/notify.yaml b/config/packages/notify.yaml index 3acaa0c..d2dba04 100755 --- a/config/packages/notify.yaml +++ b/config/packages/notify.yaml @@ -338,6 +338,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -360,6 +364,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -380,6 +388,8 @@ script: .80 {% elif who == 'croft' %} .50 + {% elif who == 'skylar_bedroom' %} + .50 {% elif who == 'master_bedroom' %} .50 {% elif who == 'studio' %} @@ -400,8 +410,12 @@ script: entity_id: > {% if who == 'kitchen' %} media_player.kitchen_display - {% elif who == 'croft' %} + {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -461,7 +475,7 @@ script: script.nabu_voice {% elif voice == 'alexa' %} script.alexa_voice - {% elif who in ['skylar_bedroom','kitchen_echo','livingroom_echo'] %} + {% elif who in ['kitchen_echo','livingroom_echo', 'garage_echo'] %} script.alexa_voice {% elif voice == 'jarvis' %} {% if who == 'main' and is_state('media_player.ha_speaker','playing') %} @@ -526,10 +540,10 @@ script: - service: media_player.turn_on data_template: entity_id: > - {% if who == 'skylar_bedroom' %} - notify.alexa_media_skylar_s_bedroom - {% elif who == 'kitchen_echo' %} + {% if who == 'kitchen_echo' %} notify.alexa_media_kitchen_echo + {% elif who == 'garage_echo' %} + notify.alexa_media_garage_echo {% elif who == 'livingroom_echo' %} notify.alexa_media_living_room_echo {% else %} @@ -539,10 +553,10 @@ script: - service: media_player.volume_set data_template: entity_id: > - {% if who == 'skylar_bedroom' %} - notify.alexa_media_skylar_s_bedroom - {% elif who == 'kitchen_echo' %} + {% if who == 'kitchen_echo' %} notify.alexa_media_kitchen_echo + {% elif who == 'garage_echo' %} + notify.alexa_media_garage_echo {% elif who == 'livingroom_echo' and is_state('media_player.ha_speaker','playing') %} {% set old_volume = states.media_player.ha_speaker.attributes.volume_level %} media_player.ha_speaker @@ -556,12 +570,12 @@ script: .4 {% endif %} - service: > - {% if who == 'skylar_bedroom' %} - notify.alexa_media_skylar_s_bedroom - {% elif who == 'kitchen_echo' %} + {% if who == 'kitchen_echo' %} notify.alexa_media_kitchen_echo {% elif who == 'livingroom_echo' %} notify.alexa_media_living_room_echo + {% elif who == 'garage_echo' %} + notify.alexa_media_garage_echo {% else %} notify.alexa_media_living_room_echo {% endif %} @@ -583,6 +597,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -605,6 +623,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -637,6 +659,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -668,6 +694,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -690,6 +720,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} @@ -718,6 +752,10 @@ script: media_player.kitchen_display {% elif who == 'theater' %} media_player.upstairs_speaker + {% elif who == 'croft' %} + media_player.croft_speaker + {% elif who == 'skylar_bedroom' %} + media_player.skylars_bedroom_speaker {% elif who == 'master_bedroom' %} media_player.master_bedroom_speaker {% elif who == 'studio' %} diff --git a/config/packages/presence.yaml b/config/packages/presence.yaml index bfda774..43270f5 100755 --- a/config/packages/presence.yaml +++ b/config/packages/presence.yaml @@ -48,15 +48,6 @@ sensor: {{ states.person.jeffrey.state }} {%- endif %} {%- endif %} - jeff_driving: - friendly_name: "Jeff' Driving" - unit_of_measurement: '' - value_template: >- - {%- if states.device_tracker.life360_jeffrey_stone.attributes.moving == True or states.device_tracker.life360_jeffrey_stone.attributes.driving == True %} - on - {% else %} - off - {% endif %} - platform: template sensors: skylar_location: @@ -98,17 +89,6 @@ sensor: {{ states.person.katherine.state }} {%- endif %} {%- endif %} - - platform: template - sensors: - kat_driving: - friendly_name: "Kat Driving" - unit_of_measurement: '' - value_template: >- - {%- if states.device_tracker.life360_kat_stone.attributes.moving == True or states.device_tracker.life360_kat_stone.attributes.driving == True%} - 'on' - {% else %} - 'off' - {% endif %} - platform: mqtt name: "Family Status" state_topic: "house/family/status" @@ -225,31 +205,6 @@ automation: call_interpruption: 1 call_kat_location: 1 - - - id: '1550109528753' - alias: Jeff Is Heading Home - initial_state: true - trigger: - - platform: webhook - webhook_id: jeff_heading_home - condition: [] - action: - - service: script.jeff_destination_home - - wait_template: "{{ not is_state('media_player.ha_speaker', 'playing') }}" - - service: script.speech_engine - data_template: - who: '{{ states.sensor.room_presence.state }}' - message: Jeff appears to be headed home. Based on current traffic conditions, he should be here in {{states.sensor.jeff_ett_home.attributes.duration | round}} minutes. - - - id: jeff_heading_to_work - alias: Jeff Is Heading To Work - initial_state: true - trigger: - - platform: webhook - webhook_id: jeff_heading_work - condition: [] - action: - - service: script.jeff_destination_summit - id: skylar_at_school alias: Skylar is at School @@ -268,7 +223,7 @@ automation: zone: zone.starling condition: - condition: time - before: "1:30:00" + before: "13:30:00" weekday: - mon - tue @@ -323,93 +278,7 @@ automation: message: "Skylar has been picked up from school." initial_state: true - ######################################################### - # - id: family_has_arrived - # alias: Family Has arrived - # trigger: - # - platform: webhook - # webhook_id: home_webhook - # - entity_id: sensor.family_status - # from: Away - # platform: state - # to: Home - # - entity_id: group.family - # from: not_home - # platform: state - # to: home - # - entity_id: device_tracker.mal - # from: not_home - # platform: state - # to: home - # mode: single - # condition: - # - condition: state - # entity_id: sensor.family_status - # state: Away - # action: - # - service: script.family_is_home - # initial_state: true - # - id: family_has_left - # alias: Family Has Left - # initial_state: true - # trigger: - # - entity_id: sensor.family_status - # from: Home - # platform: state - # to: Away - # - platform: webhook - # webhook_id: away_webhook - # - entity_id: group.family - # from: home - # platform: state - # to: not_home - # mode: single - # condition: - # - condition: state - # entity_id: input_boolean.guest_mode - # state: 'off' - # action: - # - service: script.family_is_away - -######################################################### - -# - id: jeff_is_home -# alias: Jeff is Home -# initial_state: true -# trigger: -# - entity_id: person.jeffrey -# event: enter -# platform: zone -# zone: zone.home -# mode: single -# action: -# - service: script.family_is_home -# - service: script.jeff_destination_na -# - service: script.driveway_on -# - entity_id: input_boolean.jeff_travel_monitor -# service: input_boolean.turn_off -# - delay: -# minutes: 2 - -# - id: kat_is_home -# alias: Kat is Home -# initial_state: true -# trigger: -# - entity_id: person.katherine -# event: enter -# platform: zone -# zone: zone.home -# mode: single -# action: -# - service: script.family_is_home -# - service: script.driveway_on -# - service: input_boolean.turn_off -# entity_id: input_boolean.kat_travel_monitor -# - delay: -# minutes: 2 - -######################################################## - id: jeff_arrives_summit alias: Jeff Arrives At Summit @@ -586,56 +455,6 @@ script: - service: input_boolean.turn_on entity_id: input_boolean.welcome_home - - jeff_destination_zoo: - sequence: - - service: mqtt.publish - data: - topic: jeff/driving/destination - payload: Zoo - retain: true - jeff_destination_summit: - sequence: - - service: mqtt.publish - data: - topic: jeff/driving/destination - payload: Summit - retain: true - jeff_destination_none: - sequence: - - service: mqtt.publish - data: - topic: jeff/driving/destination - payload: none - retain: true - jeff_destination_na: - sequence: - - service: mqtt.publish - data: - topic: jeff/driving/destination - payload: na - retain: true - jeff_destination_home: - sequence: - - service: mqtt.publish - data: - topic: jeff/driving/destination - payload: Home - retain: true - jeff_destination_harbins: - sequence: - - service: mqtt.publish - data: - topic: jeff/driving/destination - payload: Harbins - retain: true - kat_destination_na: - sequence: - - service: mqtt.publish - data: - topic: kat/driving/destination - payload: na - retain: true reset_skylar_sensors: sequence: - delay: 02:00:00 diff --git a/config/packages/reminders.yaml b/config/packages/reminders.yaml index bf9766e..bd6140d 100755 --- a/config/packages/reminders.yaml +++ b/config/packages/reminders.yaml @@ -75,83 +75,7 @@ input_boolean: icon: mdi:washing-machine -# Chore sensors are fed to MQTT by a script running on another box. -binary_sensor: - - platform: mqtt - name: "Empty the Litterbox" - state_topic: "house/chore/empty_the_litterbox" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Winstons Heartworm" - state_topic: "house/chore/winstons_heartworm" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Winstons Nextguard" - state_topic: "house/chore/winstons_flea_medicine" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Replace the HVAC Filter" - state_topic: "house/chore/replace_hvac_air_filters" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Washing Machine" - state_topic: "house/chore/clean_washing_machine" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Dishwasher" - state_topic: "house/chore/clean_dishwasher" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Skylars Laundry" - state_topic: "house/chore/skylars_laundry" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Kitchen" - state_topic: "house/chore/clean_kitchen" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Livingroom" - state_topic: "house/chore/clean_livingroom" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Bathrooms" - state_topic: "house/chore/clean_bathrooms" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Mow Yard" - state_topic: "house/chore/mow_yard" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Sheet Day" - state_topic: "house/chore/clean_sheet_day" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Disposal" - state_topic: "house/chore/clean_disposal" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Washing Machine Filter" - state_topic: "house/chore/clean_washing_machine_filter" - payload_on: "on" - payload_off: "off" - - platform: mqtt - name: "Clean Dishwasher Filter" - state_topic: "house/chore/clean_dishwasher_filter" - payload_on: "on" - payload_off: "off" + automation: # Replacing calendar based reminders with Grocy diff --git a/config/packages/security.yaml b/config/packages/security.yaml index f6fef94..0b259fb 100755 --- a/config/packages/security.yaml +++ b/config/packages/security.yaml @@ -51,19 +51,8 @@ input_boolean: icon: mdi:dog-side - -# Arlo Integration -alarm_control_panel: - # Uses the custom arlo integration found in HACS - - platform: aarlo - home_mode_name: home - away_mode_name: Armed - - sensor: - - platform: mqtt - name: "Front Door Motion Away count" - state_topic: "house/front_door_motion/away_count" + - platform: authenticated automation: diff --git a/config/packages/space.yaml b/config/packages/space.yaml index 8460aa3..cc953ea 100755 --- a/config/packages/space.yaml +++ b/config/packages/space.yaml @@ -27,53 +27,9 @@ sensor: - platform: moon - platform: launch_library - # Disabling - # - platform: rest - # scan_interval: 1800 - # resource: https://launchlibrary.net/1.2.2/launch/next/10 - # # resource: https://raw.githubusercontent.com/cribbstechnologies/ha_config/master/www/test_launch.json - # name: launch window - # # if the current timestamp is in the launch window - # # this sensor will return the UTC timestamp of the launch - # value_template: >- - # {%- for launch in value_json.launches %} - # {% if launch.location.id == 16 or launch.location.id == 17 %} - # {% if strptime(launch.isostart, '%Y%m%dT%H%M%SZ').strftime('%Y-%m-%d') == now().strftime('%Y-%m-%d') %} - # {% set utc_offset_string = now().strftime('%z') %} - # {% set utc_offset_direction = utc_offset_string[:1] %} - # {% set utc_offset_hours = now().strftime('%z')[-4:] %} - # {% set utc_offset_seconds = (utc_offset_hours| int /100) * 60 * 60 %} - # {% if utc_offset_direction == '-' %} - # {{ launch.wsstamp - utc_offset_seconds}} - # {% else %} - # {{ launch.wsstamp + utc_offset_seconds}} - # {% endif %} - # {% endif %} - # {% endif %} - # {% endfor %} + automation: - - # - id: launch_window - # alias: Launch Window Approaching - # trigger: - # - platform: state - # entity_id: sensor.launch_window - # condition: - # - condition: template - # value_template: "{{states('sensor.launch_window') != 'unknown'}}" - - # action: - # - wait_template: >- - # {{((as_timestamp(now()) - states('sensor.launch_window') | float) | abs < 601)}} - # - service: script.speech_engine - # data: - # call_launch: 1 - # - service: script.text_notify - # data_template: - # who: "jeff" - # title: "Laumch Imminent" - # message: "A Launch is imminent" - id: iss_tweet initial_state: true @@ -96,21 +52,6 @@ automation: image: >- {{ [ "/config/www/tweet_images/iss.jpg", "/config/www/tweet_images/iss2.jpg"] | random }} - - # - id: iss_notification - # initial_state: true - # alias: 'ISS Notification' - # trigger: - # - platform: state - # entity_id: - # - binary_sensor.iss - # to: 'on' - # from: 'off' - # action: - # - service: script.speech_engine - # data: - # call_interuption: 1 - # call_iss: 1 - id: full_moon_tweet initial_state: true diff --git a/config/packages/sysmon.yaml b/config/packages/sysmon.yaml index 96e00b8..d390e3f 100755 --- a/config/packages/sysmon.yaml +++ b/config/packages/sysmon.yaml @@ -59,3 +59,9 @@ sensor: friendly_name: Open Pull Requests value_template: >- {{ states.sensor.home_assistant_configuration.attributes.open_pull_requests }} + + +utility_meter: + daily_frontdoor_motion: + source: sensor.front_door_motion + cycle: daily \ No newline at end of file diff --git a/config/packages/twitter.yaml b/config/packages/twitter.yaml index ab87e9a..ccba273 100755 --- a/config/packages/twitter.yaml +++ b/config/packages/twitter.yaml @@ -70,30 +70,6 @@ automation: - delay: '0{{ (range(1, 5)|random|int) }}:{{ range(0,5) | random | int }}{{ range(0,9) | random | int }}:00' - service: script.twitter_stats - - id: tweet_some_promos - alias: Tweet Some Promos - initial_state: true - trigger: - - platform: time - at: '08:00:00' - action: - - delay: '0{{ (range(1, 5)|random|int) }}:{{ range(0,5) | random | int }}{{ range(0,9) | random | int }}:00' - - service: script.twitter_selfpromos - data: - who: 'thejeffreystone' - - # - id: tweet_recent_content_js - # alias: Tweet Recent Content js - # initial_state: true - # trigger: - # - platform: time - # at: '13:00:00' - # action: - # - delay: '0{{ (range(1, 5)|random|int) }}:{{ range(0,5) | random | int }}{{ range(0,9) | random | int }}:00' - # - service: script.twitter_recent_content - # data: - # who: 'thejeffreystone' - - id: tweet_recent_content alias: Tweet Recent Contents initial_state: true @@ -106,17 +82,17 @@ automation: data: who: 'slackerlabs' - - id: tweet_follow_me - alias: Tweet Follow Me - initial_state: true - trigger: - - platform: time - at: '08:00:00' - action: - - delay: '0{{ (range(1, 5)|random|int) }}:{{ range(0,5) | random | int }}{{ range(0,9) | random | int }}:00' - - service: script.twitter_follow_me - data: - who: 'slackerlabs' + # - id: tweet_follow_me + # alias: Tweet Follow Me + # initial_state: true + # trigger: + # - platform: time + # at: '08:00:00' + # action: + # - delay: '0{{ (range(1, 5)|random|int) }}:{{ range(0,5) | random | int }}{{ range(0,9) | random | int }}:00' + # - service: script.twitter_follow_me + # data: + # who: 'slackerlabs' - id: tweet_some_promos2 alias: Tweet Some Promos2 @@ -175,7 +151,7 @@ automation: - service: script.twitter_notify_image data_template: tweet: >- - You can #homeassistant content related to Anchorage House at -> Blog: https://slacker-labs.com | Videos: https://www.youtube.com/channel/UCipZJ6748kd8TbelSxcvcVg | Config: https://github.com/thejeffreystone/home-assistant-configuration + You can #homeautomation content related to Anchorage House at -> Blog: https://slacker-labs.com | #smarthome Videos: https://www.youtube.com/channel/UCipZJ6748kd8TbelSxcvcVg | #homeassistant Config: https://github.com/thejeffreystone/home-assistant-configuration image: >- {{ [ "/config/www/tweet_images/robot1.jpg", "/config/www/tweet_images/robot2.jpg"] | random }} @@ -190,7 +166,7 @@ automation: - condition: template value_template: > {% set day=states("sensor.date").split('-')[2] | int %} - {%- if day == 15 -%} + {%- if day == 20 -%} true {%- endif -%} action: @@ -224,27 +200,6 @@ automation: You can find my #homeassistant content at -> Blog: https://slacker-labs.com | Videos: https://www.youtube.com/channel/UCipZJ6748kd8TbelSxcvcVg | Config: https://github.com/thejeffreystone/home-assistant-configuration image: "/config/www/tweet_images/sl_logo.png" - # - id: net_speed_report - # initial_state: true - # alias: Network Speed Report - # trigger: - # - platform: time - # at: '11:15:00' - # action: - # - service: script.twitter_notify_image - # data_template: - # tweet: >- - # {{ [ "According to my latest speed tests Anchorage House is getting - # {{ states.sensor.internet_test_down.attributes.max_value }} Mbps down and {{ states.sensor.internet_test_up.attributes.max_value }} - # Mbps up thanks to #ATTFiber. ", "How fast is your internet? I just checked - # am Im seeing {{ states.sensor.internet_test_down.attributes.max_value }} Mbps down and {{ states.sensor.internet_test_up.attributes.max_value }} - # Mbps up. Beat that. ", "My speed is monitored using @home_assistant and https://github.com/thejeffreystone/speedtest_to_mqtt - # and is {{ states.sensor.internet_test_down.attributes.max_value }} Mbps down and {{ states.sensor.internet_test_up.attributes.max_value }} - # Mbps up." ] | random }} - # image: >- - # {{ [ "/config/www/tweet_images/speed.jpg", - # "/config/www/tweet_images/fiber-optic.jpg"] | random }} - - id: rex_manning_day_tweet_1 alias: Rex Manning Day Tweet One initial_state: true diff --git a/config/packages/youtube.yaml b/config/packages/youtube.yaml index 90bacf5..e43b104 100755 --- a/config/packages/youtube.yaml +++ b/config/packages/youtube.yaml @@ -8,9 +8,9 @@ # https://github.com/CCOSTAN/Home-AssistantConfig/issues/720 #------------------------------------------- -# sensor: - # - platform: youtube - # channel_id: UCipZJ6748kd8TbelSxcvcVg + sensor: + - platform: youtube + channel_id: UCipZJ6748kd8TbelSxcvcVg automation: @@ -22,34 +22,46 @@ condition: - condition: template - value_template: "{{ trigger.from_state.state != trigger.to_state.state }}" + value_template: "{{ trigger.from_state.attributes.url != trigger.to_state.attributes.url }}" action: - service: script.text_notify data_template: who: "jeff" - message: New Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} + message: Your Video is now Live {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} - repeat: count: 1 sequence: - delay: '00:03:00' - - service: script.twitter_notify + - service: script.twitter_notify_image data: tweet: > {{ [ - "Brand New Home Assistant Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} " + "Brand New SlackerLabs Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "New SlackerLabs Video went Live! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "Boom! New SlackerLabs Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "Its time for a New SlackerLabs Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "Today is SlackerLabs Video Release Day! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome " ] | random }} who: 'thejeffreystone' + image: > + {{ state_attr('sensor.slackerlabs', 'entity_picture') }} - delay: '00:10:00' - - service: script.twitter_notify + - service: script.twitter_notify_image data: tweet: > {{ [ - "New #homeassistant Video went Live! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} " + "Brand New SlackerLabs Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "New SlackerLabs Video went Live! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "Boom! New SlackerLabs Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "Its time for a New SlackerLabs Video! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome ", + "Today is SlackerLabs Video Release Day! {{ states('sensor.slackerlabs') }} - {{ state_attr('sensor.slackerlabs','url') }} #homeassistant #homeautomation #smarthome " ] | random }} who: 'slackerlabs' + image: > + {{ state_attr('sensor.slackerlabs', 'entity_picture') }} - delay: '12:30:00' \ No newline at end of file diff --git a/config/sensors/house.yaml b/config/sensors/house.yaml index d6d3220..18751d4 100755 --- a/config/sensors/house.yaml +++ b/config/sensors/house.yaml @@ -1,7 +1,7 @@ - platform: history_stats name: Jeff Driving Time - entity_id: sensor.jeff_driving + entity_id: binary_sensor.jeff_driving state: 'on' type: time end: '{{ now() }}' @@ -9,7 +9,7 @@ days: 7 - platform: history_stats name: Kat Driving Time - entity_id: sensor.kat_driving + entity_id: binary_sensor.kat_driving state: 'on' type: time end: '{{ now() }}' @@ -71,6 +71,23 @@ name: Garage Temp Stats entity_id: sensor.acurite_tower_10968_t sampling_size: 500 + +- platform: statistics + entity_id: sensor.craft_room_temperature + name: "Craft Room Temp Sats" +- platform: statistics + entity_id: sensor.kitchen_temperature + name: "Kitchen Temp Sats" +- platform: statistics + entity_id: sensor.living_room_temperature + name: "Living Room Temp Sats" +- platform: statistics + entity_id: sensor.master_bedroom_temperature + name: "MAster Bedroom Temp Sats" +- platform: statistics + entity_id: sensor.skylar_room_temperature + name: "Skylar Room Temp Sats" + - platform: min_max name: Inside Temp Stats entity_ids: @@ -79,6 +96,7 @@ - sensor.living_room_temperature - sensor.master_bedroom_temperature - sensor.skylar_room_temperature + - platform: history_stats name: Outside Lights entity_id: group.outside_lights @@ -129,7 +147,7 @@ sampling_size: 500 - platform: statistics name: Washer Power Stats - entity_id: sensor.washer_power_consumed_w + entity_id: sensor.washer_switch_electric_consumed_kwh sampling_size: 500 - platform: history_stats name: Cooling Last Month @@ -139,13 +157,15 @@ end: '{{ now() }}' duration: days: 30 -- platform: aarlo - monitored_conditions: - - last_capture - - total_cameras - - battery_level - - captured_today - - signal_strength + +- platform: history_stats + name: Front Door Motion + entity_id: binary_sensor.aarlo_motion_front_door + state: 'on' + type: count + end: '{{ now() }}' + duration: + days: 7 # Amazon Polly Sensors to see last message and location of audible notification - platform: mqtt