home-assistant-configuration/config/sensors/house.yaml

333 lines
8.9 KiB
YAML
Executable File

# MQTT Sensor for Washing Machine Status.
- platform: mqtt
name: "Washer Status"
state_topic: "house/washer/status"
# MQTT Sensor for getting Various COVID-19 Stats. Data is sourced from pythonn scripts scaping
# various COVID data sites running on a secondary machine.
# - platform: mqtt
# name: "COVID19 Confirmed"
# state_topic: "covid/sensor/confirmed"
# - platform: mqtt
# name: "COVID19 Recovered"
# state_topic: "covid/sensor/recovered"
# - platform: mqtt
# name: "COVID19 Dead"
# state_topic: "covid/sensor/dead"
# - platform: mqtt
# name: "COVID Old Confirmed"
# state_topic: "covid/sensor/old-confirmed"
# - platform: mqtt
# name: "COVID Old Dead"
# state_topic: "covid/sensor/old-dead"
# - platform: mqtt
# name: "COVID Old Recovered"
# state_topic: "covid/sensor/old-recovered"
# - platform: mqtt
# name: "COVID PV Confirmed"
# state_topic: "covid/sensor/previous_confirmed"
# - platform: mqtt
# name: "COVID PV Dead"
# state_topic: "covid/sensor/previous_dead"
# - platform: mqtt
# name: "COVID PV Recovered"
# state_topic: "covid/sensor/previous_recovered"
# - platform: mqtt
# name: "COVID PV New Cases"
# state_topic: "covid/sensor/previous_new_cases"
# - platform: mqtt
# name: "COVID PV New Dead"
# state_topic: "covid/sensor/previous_new_deaths"
# - platform: mqtt
# name: "COVID PV Active"
# state_topic: "covid/sensor/previous_active_cases"
# - platform: mqtt
# name: "COVID PV Critical"
# state_topic: "covid/sensor/previous_critical_cases"
# - platform: mqtt
# name: "COVID Old New Count"
# state_topic: "covid/sensor/old_new_cases"
# - platform: mqtt
# name: "COVID Old Dead Count"
# state_topic: "covid/sensor/old_new_deaths"
# - platform: mqtt
# name: "COVID Current Confirmed"
# state_topic: "covid/sensor/current_confirmed"
# - platform: mqtt
# name: "COVID Current Dead"
# state_topic: "covid/sensor/current_dead"
# - platform: mqtt
# name: "COVID Current Recovered"
# state_topic: "covid/sensor/current_recovered"
# - platform: mqtt
# name: "COVID Current New Cases"
# state_topic: "covid/sensor/current_new_cases"
# - platform: mqtt
# name: "COVID Current New Dead"
# state_topic: "covid/sensor/current_new_deaths"
# - platform: mqtt
# name: "COVID Current Active"
# state_topic: "covid/sensor/current_active_cases"
# - platform: mqtt
# name: "COVID Current Critical"
# state_topic: "covid/sensor/current_critical_cases"
- platform: history_stats
name: Jeff Driving Time
entity_id: sensor.jeff_driving
state: 'on'
type: time
end: '{{ now() }}'
duration:
days: 7
- platform: history_stats
name: Kat Driving Time
entity_id: sensor.kat_driving
state: 'on'
type: time
end: '{{ now() }}'
duration:
days: 7
- platform: history_stats
name: Speech time
entity_id: media_player.ha_speaker
state: 'playing'
type: time
end: '{{ now() }}'
duration:
days: 8
- platform: history_stats
name: AppleTV time
entity_id: media_player.home_theater
state: 'playing'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: history_stats
name: Game time
entity_id: media_player.playstation_4
state: 'playing'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: history_stats
name: Roku time
entity_id: media_player.bedroom
state: 'playing'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: history_stats
name: Roku Theater time
entity_id: media_player.roku_premiere
state: 'playing'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: history_stats
name: Washer Time
entity_id: sensor.washer_status
state: 'running'
type: time
end: '{{ now() }}'
duration:
days: 7
- platform: statistics
name: Outside Temp Stats
entity_id: sensor.accurite_back_porch_temperature
sampling_size: 500
- platform: statistics
name: Garage Temp Stats
entity_id: sensor.accurite_garage_temperature
sampling_size: 500
- platform: min_max
name: Inside Temp Stats
entity_ids:
- sensor.craft_room_temperature
- sensor.kitchen_temperature
- sensor.living_room_temperature
- sensor.master_bedroom_temperature
- sensor.skylar_room_temperature
# - platform: arlo
# monitored_conditions:
# - captured_today
# - last_capture
# - total_cameras
# - battery_level
# - signal_strength
- platform: history_stats
name: Outside Lights
entity_id: group.outside_lights
state: 'on'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: history_stats
name: Heating Last Day
entity_id: sensor.hvac_action
state: 'heating'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: history_stats
name: Heating Last Month
entity_id: sensor.hvac_action
state: 'heating'
type: time
end: '{{ now() }}'
duration:
days: 30
- platform: history_stats
name: Cooling Last Day
entity_id: sensor.hvac_action
state: 'cooling'
type: time
end: '{{ now() }}'
duration:
hours: 24
- platform: statistics
name: Wind Speed Stats
entity_id: sensor.nws_current_windspeed
sampling_size: 500
- platform: statistics
name: Visibility Stats
entity_id: sensor.nws_current_visibility
sampling_size: 500
- platform: statistics
name: Temperature Stats
entity_id: sensor.nws_current_temperature
sampling_size: 500
- platform: statistics
name: Humidity Stats
entity_id: sensor.nws_current_humidity
sampling_size: 500
- platform: statistics
name: Washer Power Stats
entity_id: sensor.washer_power
sampling_size: 500
- platform: history_stats
name: Cooling Last Month
entity_id: sensor.hvac_action
state: 'cooling'
type: time
end: '{{ now() }}'
duration:
days: 30
- platform: aarlo
monitored_conditions:
- last_capture
- total_cameras
- battery_level
- captured_today
- signal_strength
# - platform: statistics
# name: covid confirmed
# entity_id: sensor.us_coronavirus_confirmed
# max_age:
# hours: 24
# - platform: statistics
# name: covid current
# entity_id: sensor.us_coronavirus_current
# max_age:
# hours: 24
# - platform: statistics
# name: covid deaths
# entity_id: sensor.us_coronavirus_deaths
# max_age:
# hours: 24
# - platform: statistics
# name: covid recovered
# entity_id: sensor.us_coronavirus_recovered
# max_age:
# hours: 24
# - platform: statistics
# name: covid19 confirmed stats
# entity_id: sensor.covid19_confirmed
# max_age:
# hours: 24
# - platform: statistics
# name: covid19 deaths stats
# entity_id: sensor.covid19_dead
# max_age:
# hours: 24
# - platform: statistics
# name: covid19 recovered stats
# entity_id: sensor.covid19_recovered
# max_age:
# hours: 24
- platform: template
sensors:
sensor_count:
friendly_name: 'Number of Sensors'
entity_id: []
value_template: >-
{{ states.sensor | list | count }}
automation_count:
friendly_name: 'Number of Automations'
entity_id: []
value_template: >-
{{ states.automation| list | count }}
script_count:
friendly_name: 'Number of Scripts'
entity_id: []
value_template: >-
{{ states.script | list | count }}
binary_sensor_count:
friendly_name: 'Number of Binary Sensors'
entity_id: []
value_template: >-
{{ states.binary_sensor | list | count }}
tracker_count:
friendly_name: 'Number of Devices'
entity_id: []
value_template: >-
{{ states.device_tracker| list | count }}
lights_count:
friendly_name: 'Number of Lights'
entity_id: []
value_template: >-
{{ states.light | list | count }}
camera_count:
friendly_name: 'Number of online Cameras'
entity_id: []
value_template: >-
{{ states.camera | list | count }}
entities_count:
friendly_name: 'Number of Entities'
entity_id: []
value_template: >-
{{ states | length }}
hvac_action:
friendly_name: 'HVAC Action'
entity_id: []
value_template: "{{states.climate.home.attributes.hvac_action}}"
today_is:
friendly_name: 'Today is'
entity_id: []
value_template: "{{ ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'][now().weekday()] }}"
holiday:
friendly_name: 'Holiday'
entity_id: []
value_template: >-
{% if states.calendar.holidays_in_united_states.state == 'on' %}
{{ states.calendar.holidays_in_united_states.attributes.message }}
{% elif states.calendar.anchorage_holidays.state == 'on' %}
{{ states.calendar.anchorage_holidays.attributes.message }}
{% else %}
none
{% endif %}
school_tomorrow:
friendly_name: 'School Tomorrow'
entity_id: []
value_template: >-
{%- set test=(as_timestamp(now())+ (86400)) | timestamp_custom("%Y-%m-%d",true) %}
{% if states.calendar.skylar_school.attributes.start_time == test + " 07:35:00" %}
on
{% else %}
off
{% endif %}