updated to latest version + dockerized!
This commit is contained in:
parent
2de4d7cc56
commit
dab0d91303
|
@ -54,3 +54,4 @@ docs/_site
|
||||||
private/*
|
private/*
|
||||||
apps/__pycache__/*.pyc
|
apps/__pycache__/*.pyc
|
||||||
docker/streamer
|
docker/streamer
|
||||||
|
docker-compose.yml
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
blueprint:
|
||||||
|
name: Motion-activated Light
|
||||||
|
description: Turn on a light when motion is detected.
|
||||||
|
domain: automation
|
||||||
|
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/motion_light.yaml
|
||||||
|
input:
|
||||||
|
motion_entity:
|
||||||
|
name: Motion Sensor
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: binary_sensor
|
||||||
|
device_class: motion
|
||||||
|
light_target:
|
||||||
|
name: Light
|
||||||
|
selector:
|
||||||
|
target:
|
||||||
|
entity:
|
||||||
|
domain: light
|
||||||
|
no_motion_wait:
|
||||||
|
name: Wait time
|
||||||
|
description: Time to leave the light on after last motion is detected.
|
||||||
|
default: 120
|
||||||
|
selector:
|
||||||
|
number:
|
||||||
|
min: 0
|
||||||
|
max: 3600
|
||||||
|
unit_of_measurement: seconds
|
||||||
|
|
||||||
|
# If motion is detected within the delay,
|
||||||
|
# we restart the script.
|
||||||
|
mode: restart
|
||||||
|
max_exceeded: silent
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: !input motion_entity
|
||||||
|
from: "off"
|
||||||
|
to: "on"
|
||||||
|
|
||||||
|
action:
|
||||||
|
- service: light.turn_on
|
||||||
|
target: !input light_target
|
||||||
|
- wait_for_trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: !input motion_entity
|
||||||
|
from: "on"
|
||||||
|
to: "off"
|
||||||
|
- delay: !input no_motion_wait
|
||||||
|
- service: light.turn_off
|
||||||
|
target: !input light_target
|
|
@ -0,0 +1,43 @@
|
||||||
|
blueprint:
|
||||||
|
name: Zone Notification
|
||||||
|
description: Send a notification to a device when a person leaves a specific zone.
|
||||||
|
domain: automation
|
||||||
|
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/notify_leaving_zone.yaml
|
||||||
|
input:
|
||||||
|
person_entity:
|
||||||
|
name: Person
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: person
|
||||||
|
zone_entity:
|
||||||
|
name: Zone
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: zone
|
||||||
|
notify_device:
|
||||||
|
name: Device to notify
|
||||||
|
description: Device needs to run the official Home Assistant app to receive notifications.
|
||||||
|
selector:
|
||||||
|
device:
|
||||||
|
integration: mobile_app
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: !input person_entity
|
||||||
|
|
||||||
|
variables:
|
||||||
|
zone_entity: !input zone_entity
|
||||||
|
# This is the state of the person when it's in this zone.
|
||||||
|
zone_state: "{{ states[zone_entity].name }}"
|
||||||
|
person_entity: !input person_entity
|
||||||
|
person_name: "{{ states[person_entity].name }}"
|
||||||
|
|
||||||
|
condition:
|
||||||
|
condition: template
|
||||||
|
value_template: "{{ trigger.from_state.state == zone_state and trigger.to_state.state != zone_state }}"
|
||||||
|
|
||||||
|
action:
|
||||||
|
domain: mobile_app
|
||||||
|
type: notify
|
||||||
|
device_id: !input notify_device
|
||||||
|
message: "{{ person_name }} has left {{ zone_state }}"
|
|
@ -3,7 +3,7 @@
|
||||||
# @Author : Mahasri Kalavala
|
# @Author : Mahasri Kalavala
|
||||||
###############################################################################
|
###############################################################################
|
||||||
homeassistant:
|
homeassistant:
|
||||||
name: Home
|
name: MyHome
|
||||||
temperature_unit: F
|
temperature_unit: F
|
||||||
latitude: !secret home_latitude
|
latitude: !secret home_latitude
|
||||||
longitude: !secret home_longitude
|
longitude: !secret home_longitude
|
||||||
|
@ -16,14 +16,14 @@ homeassistant:
|
||||||
packages: !include_dir_named packages
|
packages: !include_dir_named packages
|
||||||
|
|
||||||
allowlist_external_dirs:
|
allowlist_external_dirs:
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/patio/
|
- /config/www/downloads/camera/patio/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/garage/
|
- /config/www/downloads/camera/garage/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/playarea/
|
- /config/www/downloads/camera/playarea/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/driveway/
|
- /config/www/downloads/camera/driveway/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/
|
- /config/www/downloads/camera/frontdoor/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/kitchen/
|
- /config/www/downloads/camera/kitchen/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/frontroom/
|
- /config/www/downloads/camera/frontroom/
|
||||||
- /home/homeassistant/.homeassistant/www/downloads/camera/3dprinter/
|
- /config/www/downloads/camera/3dprinter/
|
||||||
|
|
||||||
sun:
|
sun:
|
||||||
alexa:
|
alexa:
|
||||||
|
@ -32,6 +32,8 @@ discovery:
|
||||||
ignore:
|
ignore:
|
||||||
- homekit
|
- homekit
|
||||||
|
|
||||||
|
frontend:
|
||||||
|
|
||||||
octoprint:
|
octoprint:
|
||||||
host: !secret octoprint_ip
|
host: !secret octoprint_ip
|
||||||
api_key: !secret octoprint_key
|
api_key: !secret octoprint_key
|
||||||
|
@ -50,9 +52,10 @@ homekit:
|
||||||
- binary_sensor.door_window_sensor_158d000424a6d6 # Front Door
|
- binary_sensor.door_window_sensor_158d000424a6d6 # Front Door
|
||||||
- binary_sensor.door_window_sensor_158d0004248d5b # Single Car Garage
|
- binary_sensor.door_window_sensor_158d0004248d5b # Single Car Garage
|
||||||
- binary_sensor.door_window_sensor_158d0004231f7b # Double Car Garage
|
- binary_sensor.door_window_sensor_158d0004231f7b # Double Car Garage
|
||||||
|
- binary_sensor.door_window_sensor_158d0004880f30 # Garage Entry Door
|
||||||
|
|
||||||
mobile_app:
|
mobile_app:
|
||||||
|
# default_config:
|
||||||
websocket_api:
|
websocket_api:
|
||||||
python_script:
|
python_script:
|
||||||
logger: !include logging.yaml
|
logger: !include logging.yaml
|
||||||
|
@ -72,7 +75,7 @@ mqtt:
|
||||||
username: !secret mqtt_username
|
username: !secret mqtt_username
|
||||||
password: !secret mqtt_password
|
password: !secret mqtt_password
|
||||||
keepalive: 60
|
keepalive: 60
|
||||||
client_id: pi_ha
|
client_id: HA_SERVER
|
||||||
|
|
||||||
sonos:
|
sonos:
|
||||||
media_player:
|
media_player:
|
||||||
|
@ -94,13 +97,12 @@ lovelace:
|
||||||
google:
|
google:
|
||||||
client_id: !secret google_client_id
|
client_id: !secret google_client_id
|
||||||
client_secret: !secret google_client_secret
|
client_secret: !secret google_client_secret
|
||||||
|
#emulated_hue:
|
||||||
emulated_hue:
|
# expose_by_default: false
|
||||||
expose_by_default: false
|
# host_ip: !secret ha_ip_address
|
||||||
host_ip: !secret ha_ip_address
|
# listen_port: 8300
|
||||||
listen_port: 8300
|
# exposed_domains:
|
||||||
exposed_domains:
|
# - light
|
||||||
- light
|
# - switch
|
||||||
- switch
|
# - input_boolean
|
||||||
- input_boolean
|
# - group
|
||||||
- group
|
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
#
|
||||||
|
# API URLS: http://192.168.xxx.xxx/api/printer and http://192.168.xxx.xxx/api/job
|
||||||
|
#
|
||||||
|
|
||||||
"""Support for monitoring OctoPrint 3D printers."""
|
"""Support for monitoring OctoPrint 3D printers."""
|
||||||
import logging
|
import logging
|
||||||
import time
|
import time
|
||||||
|
|
|
@ -20,9 +20,9 @@ logs:
|
||||||
homeassistant.components.wemo: critical
|
homeassistant.components.wemo: critical
|
||||||
homeassistant.components.sensor: critical
|
homeassistant.components.sensor: critical
|
||||||
homeassistant.components.cloud.iot: warning
|
homeassistant.components.cloud.iot: warning
|
||||||
homeassistant.components.http: warning
|
# homeassistant.components.http: warning
|
||||||
homeassistant.components.camera: warning
|
homeassistant.components.camera: warning
|
||||||
homeassistant.components.zwave: warning
|
homeassistant.components.zwave: critical
|
||||||
homeassistant.components.image_processing: warning
|
homeassistant.components.image_processing: warning
|
||||||
homeassistant.components.homekit: warning
|
homeassistant.components.homekit: warning
|
||||||
custom_components.sensor.life360: warning
|
custom_components.sensor.life360: warning
|
||||||
|
|
|
@ -78,12 +78,8 @@ cards:
|
||||||
- sensor.octoprint_file
|
- sensor.octoprint_file
|
||||||
- binary_sensor.octoprint_printing
|
- binary_sensor.octoprint_printing
|
||||||
- binary_sensor.octoprint_printing_error
|
- binary_sensor.octoprint_printing_error
|
||||||
- sensor.octoprint_actual_bed_temp
|
|
||||||
- sensor.octoprint_actual_tool0_temp
|
|
||||||
- sensor.octoprint_current_state
|
- sensor.octoprint_current_state
|
||||||
- sensor.octoprint_job_percentage
|
- sensor.octoprint_job_percentage
|
||||||
- sensor.octoprint_target_bed_temp
|
|
||||||
- sensor.octoprint_target_tool0_temp
|
|
||||||
- sensor.octoprint_time_elapsed
|
- sensor.octoprint_time_elapsed
|
||||||
- sensor.octoprint_time_remaining
|
- sensor.octoprint_time_remaining
|
||||||
|
|
||||||
|
@ -179,6 +175,8 @@ cards:
|
||||||
name: Basement Door
|
name: Basement Door
|
||||||
- entity: binary_sensor.garage_door_sensor_sensor
|
- entity: binary_sensor.garage_door_sensor_sensor
|
||||||
name: Garage Door
|
name: Garage Door
|
||||||
|
- entity: binary_sensor.door_window_sensor_158d0004880f30
|
||||||
|
name: Garage Entry Door
|
||||||
- entity: sensor.single_car_garage_door_sensor_status
|
- entity: sensor.single_car_garage_door_sensor_status
|
||||||
name: Single Car Garage Door
|
name: Single Car Garage Door
|
||||||
- entity: binary_sensor.two_car_garage_door_tilt_sensor_sensor
|
- entity: binary_sensor.two_car_garage_door_tilt_sensor_sensor
|
||||||
|
@ -191,45 +189,6 @@ cards:
|
||||||
type: glance
|
type: glance
|
||||||
title: Doors
|
title: Doors
|
||||||
|
|
||||||
- type: vertical-stack
|
|
||||||
cards:
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: gauge
|
|
||||||
name: Suresh Phone
|
|
||||||
unit: "%"
|
|
||||||
entity: input_label.suresh_battery
|
|
||||||
severity:
|
|
||||||
green: 75
|
|
||||||
yellow: 50
|
|
||||||
red: 30
|
|
||||||
- type: gauge
|
|
||||||
name: Mallika Phone
|
|
||||||
unit: "%"
|
|
||||||
entity: input_label.mallika_battery
|
|
||||||
severity:
|
|
||||||
green: 75
|
|
||||||
yellow: 50
|
|
||||||
red: 30
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: gauge
|
|
||||||
name: Srinika Phone
|
|
||||||
unit: "%"
|
|
||||||
entity: input_label.srinika_battery
|
|
||||||
severity:
|
|
||||||
green: 75
|
|
||||||
yellow: 50
|
|
||||||
red: 30
|
|
||||||
- type: gauge
|
|
||||||
name: Hasika Phone
|
|
||||||
unit: "%"
|
|
||||||
entity: input_label.hasika_battery
|
|
||||||
severity:
|
|
||||||
green: 75
|
|
||||||
yellow: 50
|
|
||||||
red: 30
|
|
||||||
|
|
||||||
- type: weather-forecast
|
- type: weather-forecast
|
||||||
entity: weather.dark_sky
|
entity: weather.dark_sky
|
||||||
|
|
||||||
|
@ -272,6 +231,8 @@ cards:
|
||||||
name: Front Door
|
name: Front Door
|
||||||
- entity: binary_sensor.door_window_sensor_158d00040ad8fc
|
- entity: binary_sensor.door_window_sensor_158d00040ad8fc
|
||||||
name: Back Door
|
name: Back Door
|
||||||
|
- entity: binary_sensor.door_window_sensor_158d0004880f30
|
||||||
|
name: Garage Entry Door
|
||||||
- entity: binary_sensor.door_window_sensor_158d000424718f
|
- entity: binary_sensor.door_window_sensor_158d000424718f
|
||||||
name: Master Bathroom Door
|
name: Master Bathroom Door
|
||||||
- entity: binary_sensor.door_window_sensor_158d00040ad8ec
|
- entity: binary_sensor.door_window_sensor_158d00040ad8ec
|
||||||
|
@ -281,6 +242,63 @@ cards:
|
||||||
- entity: binary_sensor.door_window_sensor_158d0004248d5b
|
- entity: binary_sensor.door_window_sensor_158d0004248d5b
|
||||||
name: Single Car Garage Door
|
name: Single Car Garage Door
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: Plex
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- sensor.plex_mahasri_nas
|
||||||
|
- media_player.plex_plex_web_chrome_windows
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: Luminance
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- sensor.illumination_158d00016c2d0e
|
||||||
|
- sensor.illumination_158d00016db6d2
|
||||||
|
- sensor.illumination_158d0001a25041
|
||||||
|
- sensor.illumination_158d0001a662fe
|
||||||
|
- sensor.illumination_158d00024e57d3
|
||||||
|
- sensor.illumination_158d00024e57fb
|
||||||
|
- sensor.illumination_158d00024e842c
|
||||||
|
- sensor.illumination_158d00024ee084
|
||||||
|
- sensor.illumination_158d000272bed1
|
||||||
|
- sensor.illumination_158d000272bf48
|
||||||
|
- sensor.illumination_158d000272bfd7
|
||||||
|
- sensor.illumination_158d000464c25a
|
||||||
|
- sensor.illumination_158d00047b6f69
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: Batteries
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- sensor.battery_158d00016c2d0e
|
||||||
|
- sensor.battery_158d00016db6d2
|
||||||
|
- sensor.battery_158d0001a25041
|
||||||
|
- sensor.battery_158d0001a662fe
|
||||||
|
- sensor.battery_158d00024e57d3
|
||||||
|
- sensor.battery_158d00024e57fb
|
||||||
|
- sensor.battery_158d00024e842c
|
||||||
|
- sensor.battery_158d00024ee084
|
||||||
|
- sensor.battery_158d000272bed1
|
||||||
|
- sensor.battery_158d000272bf48
|
||||||
|
- sensor.battery_158d000272bfd7
|
||||||
|
- sensor.battery_158d000276e3e8
|
||||||
|
- sensor.battery_158d000278eb6a
|
||||||
|
- sensor.battery_158d0002794cd6
|
||||||
|
- sensor.battery_158d00027c0276
|
||||||
|
- sensor.battery_158d00027ce15c
|
||||||
|
- sensor.battery_158d00027cf60d
|
||||||
|
- sensor.battery_158d00040ad8ec
|
||||||
|
- sensor.battery_158d00040ad8fc
|
||||||
|
- sensor.battery_158d0004231f7b
|
||||||
|
- sensor.battery_158d000424718f
|
||||||
|
- sensor.battery_158d0004248d5b
|
||||||
|
- sensor.battery_158d000424a6d6
|
||||||
|
- sensor.battery_158d00045622d9
|
||||||
|
- sensor.battery_158d000464c25a
|
||||||
|
- sensor.battery_158d00047b6f69
|
||||||
|
- sensor.battery_158d0004880f30
|
||||||
|
|
||||||
- type: entity-filter
|
- type: entity-filter
|
||||||
title: Motion Sensors
|
title: Motion Sensors
|
||||||
show_empty: false
|
show_empty: false
|
||||||
|
@ -302,6 +320,7 @@ cards:
|
||||||
- binary_sensor.garage_door_sensor_sensor
|
- binary_sensor.garage_door_sensor_sensor
|
||||||
- binary_sensor.kitchen_motion_sensor_sensor
|
- binary_sensor.kitchen_motion_sensor_sensor
|
||||||
- binary_sensor.door_window_sensor_158d00040ad8fc # back door
|
- binary_sensor.door_window_sensor_158d00040ad8fc # back door
|
||||||
|
- binary_sensor.door_window_sensor_158d0004880f30 # Garage Entry Door
|
||||||
- binary_sensor.stairs_motion_sensor_sensor
|
- binary_sensor.stairs_motion_sensor_sensor
|
||||||
- binary_sensor.tv_multi_sensor_sensor
|
- binary_sensor.tv_multi_sensor_sensor
|
||||||
- binary_sensor.door_window_sensor_158d0004248d5b
|
- binary_sensor.door_window_sensor_158d0004248d5b
|
||||||
|
@ -383,4 +402,5 @@ cards:
|
||||||
- input_label.door_window_sensor_158d0004231f7b
|
- input_label.door_window_sensor_158d0004231f7b
|
||||||
- input_label.door_window_sensor_158d0004248d5b
|
- input_label.door_window_sensor_158d0004248d5b
|
||||||
- input_label.door_window_sensor_158d00040ad8fc
|
- input_label.door_window_sensor_158d00040ad8fc
|
||||||
|
- input_label.door_window_sensor_158d0004880f30 # garage entry door
|
||||||
- input_label.door_window_sensor_158d000424a6d6
|
- input_label.door_window_sensor_158d000424a6d6
|
||||||
|
|
|
@ -18,6 +18,8 @@ cards:
|
||||||
name: Srinika's Bedroom
|
name: Srinika's Bedroom
|
||||||
- entity: switch.prayer_room
|
- entity: switch.prayer_room
|
||||||
name: Study Room
|
name: Study Room
|
||||||
|
- entity: light.master_bathroom_lights
|
||||||
|
name: Master Bathroom Lights
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Downstairs
|
title: Downstairs
|
||||||
|
@ -32,6 +34,28 @@ cards:
|
||||||
- light.hue_color_lamp_1
|
- light.hue_color_lamp_1
|
||||||
- light.hue_color_lamp_2
|
- light.hue_color_lamp_2
|
||||||
- light.hue_color_lamp_3
|
- light.hue_color_lamp_3
|
||||||
|
- entity: switch.wemoswitch1
|
||||||
|
name: Office Room Accent Lights
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: TV Power Strip
|
||||||
|
show_header_toggle: true
|
||||||
|
entities:
|
||||||
|
- entity: switch.plug_1
|
||||||
|
name: Monitor
|
||||||
|
- entity: switch.plug_2
|
||||||
|
name: Sharp TV
|
||||||
|
- entity: switch.plug_3
|
||||||
|
name: Bose Audio
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: Tasmota Outlet
|
||||||
|
show_header_toggle: true
|
||||||
|
entities:
|
||||||
|
- entity: switch.tasmota_outlet_1
|
||||||
|
name: Tasmota Outlet 1
|
||||||
|
- entity: switch.tasmota_outlet_2
|
||||||
|
name: Tasmota Outlet 2
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Fragrance Outlets
|
title: Fragrance Outlets
|
||||||
|
@ -45,17 +69,13 @@ cards:
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- switch.garage
|
- switch.garage
|
||||||
- entity: switch.tesla_model_3_charger_switch
|
- switch.garage_shop_lights
|
||||||
name: Tesla Charger Switch
|
|
||||||
- entity: switch.tesla_model_3_maxrange_switch
|
|
||||||
name: Tesla Max Range Switch
|
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Always On
|
title: Always On
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- light.gateway_light_34ce008ad65d
|
- light.gateway_light_34ce008ad65d
|
||||||
- switch.wemoswitch1
|
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Outdoor Lights
|
title: Outdoor Lights
|
||||||
|
|
|
@ -67,12 +67,28 @@ cards:
|
||||||
domain: script
|
domain: script
|
||||||
action: stream_playarea_camera_to_chromecast
|
action: stream_playarea_camera_to_chromecast
|
||||||
|
|
||||||
|
- type: "custom:button-card"
|
||||||
|
name: RESET CAMERA
|
||||||
|
entity: input_label.current_stream
|
||||||
|
icon: mdi:cctv
|
||||||
|
color_type: card
|
||||||
|
style:
|
||||||
|
- font-weight: bold
|
||||||
|
- color: rgb(0, 0, 5)
|
||||||
|
state:
|
||||||
|
- value: "frontyard"
|
||||||
|
color: var(--primary-color)
|
||||||
|
action: service
|
||||||
|
service:
|
||||||
|
domain: script
|
||||||
|
action: reset_camera_stream
|
||||||
|
|
||||||
- type: picture-glance
|
- type: picture-glance
|
||||||
id: camera_frontdoor_camera
|
id: camera_frontdoor_camera
|
||||||
title: Frontdoor Camera
|
title: Frontdoor Camera
|
||||||
entity: camera.frontdoor_camera
|
entity: camera.frontdoor_camera
|
||||||
camera_image: camera.frontdoor_camera
|
camera_image: camera.frontdoor_camera
|
||||||
camera_view: live
|
# camera_view: live
|
||||||
show_info: true
|
show_info: true
|
||||||
tap_action:
|
tap_action:
|
||||||
action: more-info
|
action: more-info
|
||||||
|
@ -138,3 +154,15 @@ cards:
|
||||||
entities:
|
entities:
|
||||||
- binary_sensor.motion_sensor_158d00016c2d0e
|
- binary_sensor.motion_sensor_158d00016c2d0e
|
||||||
- binary_sensor.octoprint_printing
|
- binary_sensor.octoprint_printing
|
||||||
|
|
||||||
|
- type: picture-glance
|
||||||
|
id: porch_camera
|
||||||
|
title: Porch Camera
|
||||||
|
entity: camera.porch_camera
|
||||||
|
camera_image: camera.porch_camera
|
||||||
|
show_info: true
|
||||||
|
tap_action:
|
||||||
|
action: more-info
|
||||||
|
entities:
|
||||||
|
- binary_sensor.porch_motion
|
||||||
|
- switch.frontyard_light
|
||||||
|
|
|
@ -55,6 +55,15 @@ cards:
|
||||||
tap_action:
|
tap_action:
|
||||||
action: more-info
|
action: more-info
|
||||||
|
|
||||||
|
- type: picture-entity
|
||||||
|
id: camera_porch_latest_scan
|
||||||
|
title: Porch Latest Scan
|
||||||
|
entity: camera.porch_latest_scan
|
||||||
|
camera_image: camera.porch_camera
|
||||||
|
show_info: true
|
||||||
|
tap_action:
|
||||||
|
action: more-info
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Image Processing
|
title: Image Processing
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
|
@ -71,3 +80,5 @@ cards:
|
||||||
name: Playarea Camera
|
name: Playarea Camera
|
||||||
- entity: image_processing.tensorflow_3d_printer_camera
|
- entity: image_processing.tensorflow_3d_printer_camera
|
||||||
name: 3D Printer Camera
|
name: 3D Printer Camera
|
||||||
|
- entity: image_processing.tensorflow_porch_camera
|
||||||
|
name: Porch Camera
|
||||||
|
|
|
@ -22,22 +22,8 @@ cards:
|
||||||
- sensor.processor_use
|
- sensor.processor_use
|
||||||
- sensor.memory_free
|
- sensor.memory_free
|
||||||
- binary_sensor.workday_sensor
|
- binary_sensor.workday_sensor
|
||||||
- sensor.ha_installed_version
|
|
||||||
- sensor.ha_current_version
|
|
||||||
- sensor.home_assistant_up_time
|
- sensor.home_assistant_up_time
|
||||||
|
|
||||||
- type: entities
|
|
||||||
title: Alarm Clock
|
|
||||||
show_header_toggle: false
|
|
||||||
entities:
|
|
||||||
- automation.alarm_clock
|
|
||||||
- input_boolean.am
|
|
||||||
- input_boolean.pm
|
|
||||||
- input_boolean.week_day_only
|
|
||||||
- input_label.alarm_current_time
|
|
||||||
- input_number.slider_hours
|
|
||||||
- input_number.slider_minutes
|
|
||||||
|
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: gauge
|
- type: gauge
|
||||||
|
|
|
@ -204,7 +204,6 @@ cards:
|
||||||
- input_boolean.led_alerts
|
- input_boolean.led_alerts
|
||||||
- input_boolean.security_system_alerts
|
- input_boolean.security_system_alerts
|
||||||
- input_boolean.notify_camera_alerts
|
- input_boolean.notify_camera_alerts
|
||||||
- input_boolean.alarm_clock
|
|
||||||
- input_boolean.trash_reminders
|
- input_boolean.trash_reminders
|
||||||
- automation.family_room_motion_timer
|
- automation.family_room_motion_timer
|
||||||
- automation.family_room_timer_elapsed
|
- automation.family_room_timer_elapsed
|
||||||
|
|
|
@ -87,6 +87,8 @@ cards:
|
||||||
title: RPi Scripts
|
title: RPi Scripts
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
|
- script.query_disk_info
|
||||||
|
- script.query_wifi_info
|
||||||
- script.restart_all_raspberrypis
|
- script.restart_all_raspberrypis
|
||||||
- script.restart_all_snapclients
|
- script.restart_all_snapclients
|
||||||
- script.shutdown_all_raspberrypis
|
- script.shutdown_all_raspberrypis
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
title: Scripts
|
title: Scripts
|
||||||
icon: mdi:script
|
icon: mdi:script
|
||||||
cards:
|
cards:
|
||||||
|
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: "custom:button-card"
|
- type: "custom:button-card"
|
||||||
|
@ -31,9 +30,50 @@ cards:
|
||||||
action: restart_hass
|
action: restart_hass
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Scripts
|
title: Notification Scripts
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
|
- entity: script.good_night_tts
|
||||||
|
name: Bedtime Report
|
||||||
|
- entity: script.home_status
|
||||||
|
name: Hourly Report
|
||||||
|
- entity: script.play_dog_sounds
|
||||||
|
name: Play Dog Sounds
|
||||||
|
- entity: script.play_fav_song
|
||||||
|
name: Play Fav Song
|
||||||
|
- entity: script.play_ringtone
|
||||||
|
name: Play Ringtone (Doorbell)
|
||||||
|
- entity: script.toggle_do_not_disturb
|
||||||
|
name: Toggle Do Not Disturb
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: Camera Scripts
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- entity: script.driveway_cam
|
||||||
|
name: Show Driveway Camera on Stream
|
||||||
|
- entity: script.patio_cam
|
||||||
|
name: Show Patio Camera on Stream
|
||||||
|
- entity: script.frontdoor_cam
|
||||||
|
name: Show Front Door Camera on Stream
|
||||||
|
- entity: script.playarea_cam
|
||||||
|
name: Show Playarea Camera on Stream
|
||||||
|
- entity: script.frontdoor_camera_text_overlay
|
||||||
|
name: Frontdoor Camera Text Overlay
|
||||||
|
- entity: script.driveway_camera_text_overlay
|
||||||
|
name: Driveway Camera Text Overlay
|
||||||
|
- entity: script.patio_camera_text_overlay
|
||||||
|
name: Patio Camera Text Overlay
|
||||||
|
- entity: script.playarea_camera_text_overlay
|
||||||
|
name: Playarea Camera Text Overlay
|
||||||
|
- entity: script.stream2chromecast
|
||||||
|
name: Stream To Chromecast
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: Light Scripts
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- script.all_indoor_lights_off
|
||||||
- script.home_mode_away
|
- script.home_mode_away
|
||||||
- entity: script.xiaomi_blue
|
- entity: script.xiaomi_blue
|
||||||
name: Xiaomi Gateway Blue Light
|
name: Xiaomi Gateway Blue Light
|
||||||
|
@ -43,10 +83,52 @@ cards:
|
||||||
name: Xiaomi Gateway Red Light
|
name: Xiaomi Gateway Red Light
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Home Status/Report
|
title: Pill Scripts
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- entity: script.good_night_tts
|
- entity: script.pill_taken
|
||||||
name: Bedtime Report
|
name: Pill Taken
|
||||||
- entity: script.home_status
|
- entity: script.remind_pill
|
||||||
name: Hourly Report
|
name: Remind Me To Take Pill
|
||||||
|
|
||||||
|
# - type: entities
|
||||||
|
# title: All Scripts
|
||||||
|
# show_header_toggle: false
|
||||||
|
# entities:
|
||||||
|
# - script.all_indoor_lights_off
|
||||||
|
# - script.driveway_cam
|
||||||
|
# - script.driveway_camera_text_overlay
|
||||||
|
# - script.frontdoor_cam
|
||||||
|
# - script.frontdoor_camera_text_overlay
|
||||||
|
# - script.good_night_tts
|
||||||
|
# - script.home_mode_away
|
||||||
|
# - script.home_status
|
||||||
|
# - script.led_message
|
||||||
|
# - script.notify_me
|
||||||
|
# - script.notify_me_with_picture
|
||||||
|
# - script.patio_cam
|
||||||
|
# - script.patio_camera_text_overlay
|
||||||
|
# - script.pill_taken
|
||||||
|
# - script.play_dog_sounds
|
||||||
|
# - script.play_fav_song
|
||||||
|
# - script.play_ringtone
|
||||||
|
# - script.playarea_cam
|
||||||
|
# - script.playarea_camera_text_overlay
|
||||||
|
# - script.query_disk_info
|
||||||
|
# - script.query_wifi_info
|
||||||
|
# - script.remind_pill
|
||||||
|
# - script.restart_all_raspberrypis
|
||||||
|
# - script.restart_all_snapclients
|
||||||
|
# - script.restart_hass
|
||||||
|
# - script.shutdown_all_raspberrypis
|
||||||
|
# - script.stop_hass
|
||||||
|
# - script.stream2chromecast
|
||||||
|
# - script.stream_driveway_camera_to_chromecast
|
||||||
|
# - script.stream_frontdoor_camera_to_chromecast
|
||||||
|
# - script.stream_patio_camera_to_chromecast
|
||||||
|
# - script.stream_playarea_camera_to_chromecast
|
||||||
|
# - script.toggle_climate
|
||||||
|
# - script.toggle_do_not_disturb
|
||||||
|
# - script.update_hass
|
||||||
|
# - script.voice_greeting
|
||||||
|
# - script.voice_notify
|
||||||
|
|
|
@ -23,22 +23,6 @@ cards:
|
||||||
- automation.study_room_cube_event_flip90
|
- automation.study_room_cube_event_flip90
|
||||||
- automation.study_room_cube_event_shake
|
- automation.study_room_cube_event_shake
|
||||||
|
|
||||||
- type: conditional
|
|
||||||
conditions:
|
|
||||||
- entity: input_boolean.alarm_clock
|
|
||||||
state: "on"
|
|
||||||
card:
|
|
||||||
type: entities
|
|
||||||
title: Alarm Clock
|
|
||||||
show_header_toggle: false
|
|
||||||
entities:
|
|
||||||
- automation.alarm_clock
|
|
||||||
- automation.am_change_off
|
|
||||||
- automation.am_change_on
|
|
||||||
- automation.pm_change_off
|
|
||||||
- automation.pm_change_on
|
|
||||||
- automation.update_current_alarm_time
|
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Zone Based Alerts
|
title: Zone Based Alerts
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
|
@ -50,7 +34,6 @@ cards:
|
||||||
- automation.alert_when_someone_enters_a_zone
|
- automation.alert_when_someone_enters_a_zone
|
||||||
- automation.alert_when_someone_leaves_a_zone
|
- automation.alert_when_someone_leaves_a_zone
|
||||||
- automation.send_a_message_as_i_get_closer_to_home
|
- automation.send_a_message_as_i_get_closer_to_home
|
||||||
- automation.update_phone_battery_levels_from_life360
|
|
||||||
- automation.welcome_family
|
- automation.welcome_family
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
|
@ -63,7 +46,6 @@ cards:
|
||||||
- automation.notify_holiday_state_change
|
- automation.notify_holiday_state_change
|
||||||
- automation.notify_indian_holidays
|
- automation.notify_indian_holidays
|
||||||
- automation.notify_low_battery
|
- automation.notify_low_battery
|
||||||
- automation.notify_of_new_external_ip
|
|
||||||
- automation.notify_thermostat_state_change
|
- automation.notify_thermostat_state_change
|
||||||
- automation.notify_usps_mail
|
- automation.notify_usps_mail
|
||||||
- automation.notify_usps_packages
|
- automation.notify_usps_packages
|
||||||
|
@ -73,9 +55,6 @@ cards:
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- automation.cancel_wfh_timer_when_suresh_leaves_home
|
- automation.cancel_wfh_timer_when_suresh_leaves_home
|
||||||
- automation.downstairs_aroma_timer_elapsed
|
|
||||||
- automation.downstairs_aroma_timer_finish
|
|
||||||
- automation.downstairs_aroma_timer_start
|
|
||||||
- automation.family_room_motion_timer
|
- automation.family_room_motion_timer
|
||||||
- automation.family_room_timer_elapsed
|
- automation.family_room_timer_elapsed
|
||||||
- automation.frontroom_motion_timer
|
- automation.frontroom_motion_timer
|
||||||
|
@ -128,7 +107,6 @@ cards:
|
||||||
title: Home Security Automations
|
title: Home Security Automations
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- automation.home_security_status_leeo_color
|
|
||||||
- automation.home_security_system_watchdog_10_minutes
|
- automation.home_security_system_watchdog_10_minutes
|
||||||
- automation.home_security_system_watchdog_30_minutes
|
- automation.home_security_system_watchdog_30_minutes
|
||||||
- automation.notify_home_security_status_change
|
- automation.notify_home_security_status_change
|
||||||
|
@ -143,33 +121,19 @@ cards:
|
||||||
title: Light Automations
|
title: Light Automations
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- automation.animate_familyroom_lights
|
|
||||||
- automation.restore_familyroom_lights
|
- automation.restore_familyroom_lights
|
||||||
- automation.animate_master_bedroom_lights
|
|
||||||
- automation.restore_masterbedroom_lights
|
|
||||||
- automation.evening_indoor_lights_on_before_sunset
|
- automation.evening_indoor_lights_on_before_sunset
|
||||||
- automation.evening_outdoor_lights_on_at_sunset
|
- automation.evening_outdoor_lights_on_at_sunset
|
||||||
- automation.garage_lights_on_when_door_is_opened
|
- automation.garage_lights_on_when_door_is_opened
|
||||||
- automation.long_flash_all_lights
|
|
||||||
- automation.morning_indoor_lights_on
|
- automation.morning_indoor_lights_on
|
||||||
- automation.morning_master_bedroom_lights_off_mallika
|
- automation.morning_master_bedroom_lights_off_mallika
|
||||||
- automation.morning_master_bedroom_lights_on_mallika
|
- automation.morning_master_bedroom_lights_on_mallika
|
||||||
- automation.morning_outdoor_lights_off
|
- automation.morning_outdoor_lights_off
|
||||||
- automation.night_dim_tv_lights
|
- automation.night_dim_tv_lights
|
||||||
- automation.night_turn_lights_off
|
- automation.night_turn_lights_off
|
||||||
- automation.short_flash_all_lights
|
|
||||||
- automation.tv_dim_indoor_lights_when_tv_is_on
|
- automation.tv_dim_indoor_lights_when_tv_is_on
|
||||||
- automation.tv_restore_family_room_lights_to_tv_mode
|
|
||||||
- automation.tv_turn_lights_on_when_tv_is_turned_off
|
- automation.tv_turn_lights_on_when_tv_is_turned_off
|
||||||
|
- automation.outdoor_light_watchdog
|
||||||
- type: entities
|
|
||||||
title: Wallmote Automations
|
|
||||||
show_header_toggle: false
|
|
||||||
entities:
|
|
||||||
- automation.wallmote_button_1_pressed
|
|
||||||
- automation.wallmote_button_2_pressed
|
|
||||||
- automation.wallmote_button_3_pressed
|
|
||||||
- automation.wallmote_button_4_pressed
|
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Trash & Recycle Automations
|
title: Trash & Recycle Automations
|
||||||
|
@ -201,10 +165,7 @@ cards:
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- automation.night_dim_tv_lights
|
- automation.night_dim_tv_lights
|
||||||
- automation.tv_backlight_is_on_when_tv_is_on
|
|
||||||
- automation.tv_backlight_off_when_tv_is_off
|
|
||||||
- automation.tv_dim_indoor_lights_when_tv_is_on
|
- automation.tv_dim_indoor_lights_when_tv_is_on
|
||||||
- automation.tv_restore_family_room_lights_to_tv_mode
|
|
||||||
- automation.tv_turn_lights_on_when_tv_is_turned_off
|
- automation.tv_turn_lights_on_when_tv_is_turned_off
|
||||||
- automation.reset_movie_time_after_3_hours
|
- automation.reset_movie_time_after_3_hours
|
||||||
|
|
||||||
|
@ -257,14 +218,8 @@ cards:
|
||||||
title: Home Assistant Automations
|
title: Home Assistant Automations
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- automation.random_darker_theme_at_sunset
|
|
||||||
- automation.random_lighter_theme_at_sunrise
|
|
||||||
- automation.random_theme_at_startup
|
|
||||||
- automation.remind_domain_renewal
|
|
||||||
- automation.season_change_notification
|
- automation.season_change_notification
|
||||||
- automation.turn_off_ac_after_3_hours_of_cooling
|
- automation.turn_off_ac_after_3_hours_of_cooling
|
||||||
- automation.update_available_notification
|
|
||||||
- automation.update_zwave_battery_levels
|
|
||||||
|
|
||||||
- type: entities
|
- type: entities
|
||||||
title: Misc Automations
|
title: Misc Automations
|
||||||
|
|
|
@ -1,17 +1,8 @@
|
||||||
title: QNAP NAS
|
title: QNAP NAS
|
||||||
icon: mdi:harddisk
|
icon: mdi:harddisk
|
||||||
cards:
|
cards:
|
||||||
- type: entities
|
|
||||||
title: QNAP Server
|
|
||||||
show_header_toggle: false
|
|
||||||
entities:
|
|
||||||
- sensor.kalavala_nas_status
|
|
||||||
- sensor.kalavala_nas_network_up_eth0
|
|
||||||
- sensor.kalavala_nas_network_up_eth1
|
|
||||||
- sensor.kalavala_nas_system_temperature
|
|
||||||
- sensor.kalavala_nas_cpu_temperature
|
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
|
title: KALAVALA-NAS
|
||||||
cards:
|
cards:
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
|
@ -101,10 +92,156 @@ cards:
|
||||||
yellow: 70
|
yellow: 70
|
||||||
red: 85
|
red: 85
|
||||||
- type: entities
|
- type: entities
|
||||||
title: QNAP Drives
|
title: KALAVALA-NAS Drives
|
||||||
show_header_toggle: false
|
show_header_toggle: false
|
||||||
entities:
|
entities:
|
||||||
- sensor.kalavala_nas_temperature_drive_0_1
|
- sensor.kalavala_nas_temperature_drive_0_1
|
||||||
- sensor.kalavala_nas_temperature_drive_0_2
|
- sensor.kalavala_nas_temperature_drive_0_2
|
||||||
- sensor.kalavala_nas_temperature_drive_0_3
|
- sensor.kalavala_nas_temperature_drive_0_3
|
||||||
- sensor.kalavala_nas_temperature_drive_0_4
|
- sensor.kalavala_nas_temperature_drive_0_4
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: KALAVALA-NAS
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- sensor.kalavala_nas_status
|
||||||
|
- sensor.kalavala_nas_network_up_eth0
|
||||||
|
- sensor.kalavala_nas_network_up_eth1
|
||||||
|
- sensor.kalavala_nas_system_temperature
|
||||||
|
- sensor.kalavala_nas_cpu_temperature
|
||||||
|
|
||||||
|
- type: vertical-stack
|
||||||
|
title: MAHASRI-NAS
|
||||||
|
cards:
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: "custom:button-card"
|
||||||
|
entity: sensor.mahasri_nas_smart_status_drive_0_1
|
||||||
|
name: Drive 1
|
||||||
|
color_type: card
|
||||||
|
show_state: true
|
||||||
|
icon: mdi:harddisk
|
||||||
|
style:
|
||||||
|
- font-weight: bold
|
||||||
|
state:
|
||||||
|
- value: "OK"
|
||||||
|
color: rgb(0, 128, 0)
|
||||||
|
- value: "FAIL"
|
||||||
|
color: rgb(255, 0, 0)
|
||||||
|
action: more_info
|
||||||
|
- type: "custom:button-card"
|
||||||
|
entity: sensor.mahasri_nas_smart_status_drive_0_2
|
||||||
|
name: Drive 2
|
||||||
|
color_type: card
|
||||||
|
show_state: true
|
||||||
|
icon: mdi:harddisk
|
||||||
|
style:
|
||||||
|
- font-weight: bold
|
||||||
|
state:
|
||||||
|
- value: "OK"
|
||||||
|
color: rgb(0, 128, 0)
|
||||||
|
- value: "FAIL"
|
||||||
|
color: rgb(255, 0, 0)
|
||||||
|
action: more_info
|
||||||
|
- type: "custom:button-card"
|
||||||
|
entity: sensor.mahasri_nas_smart_status_drive_0_3
|
||||||
|
name: Drive 3
|
||||||
|
color_type: card
|
||||||
|
show_state: true
|
||||||
|
icon: mdi:harddisk
|
||||||
|
style:
|
||||||
|
- font-weight: bold
|
||||||
|
state:
|
||||||
|
- value: "OK"
|
||||||
|
color: rgb(0, 128, 0)
|
||||||
|
- value: "FAIL"
|
||||||
|
color: rgb(255, 0, 0)
|
||||||
|
action: more_info
|
||||||
|
- type: "custom:button-card"
|
||||||
|
entity: sensor.mahasri_nas_smart_status_drive_0_4
|
||||||
|
name: Drive 4
|
||||||
|
color_type: card
|
||||||
|
show_state: true
|
||||||
|
icon: mdi:harddisk
|
||||||
|
style:
|
||||||
|
- font-weight: bold
|
||||||
|
state:
|
||||||
|
- value: "OK"
|
||||||
|
color: rgb(0, 128, 0)
|
||||||
|
- value: "FAIL"
|
||||||
|
color: rgb(255, 0, 0)
|
||||||
|
action: more_info
|
||||||
|
|
||||||
|
- type: vertical-stack
|
||||||
|
cards:
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: gauge
|
||||||
|
entity: sensor.mahasri_nas_cpu_usage
|
||||||
|
unit: "%"
|
||||||
|
name: CPU
|
||||||
|
severity:
|
||||||
|
green: 0
|
||||||
|
yellow: 50
|
||||||
|
red: 75
|
||||||
|
- type: gauge
|
||||||
|
entity: sensor.mahasri_nas_memory_usage
|
||||||
|
unit: "%"
|
||||||
|
name: Memory
|
||||||
|
severity:
|
||||||
|
green: 0
|
||||||
|
yellow: 50
|
||||||
|
red: 75
|
||||||
|
- type: gauge
|
||||||
|
entity: sensor.mahasri_nas_volume_used_primary
|
||||||
|
unit: "%"
|
||||||
|
name: Primary Disk
|
||||||
|
severity:
|
||||||
|
green: 0
|
||||||
|
yellow: 70
|
||||||
|
red: 85
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: gauge
|
||||||
|
entity: sensor.mahasri_nas_volume_used_mahasri
|
||||||
|
unit: "%"
|
||||||
|
name: Mahasri Disk
|
||||||
|
severity:
|
||||||
|
green: 0
|
||||||
|
yellow: 70
|
||||||
|
red: 85
|
||||||
|
- type: gauge
|
||||||
|
entity: sensor.mahasri_nas_volume_used_entertainment
|
||||||
|
unit: "%"
|
||||||
|
name: Media Disk
|
||||||
|
severity:
|
||||||
|
green: 0
|
||||||
|
yellow: 70
|
||||||
|
red: 85
|
||||||
|
- type: gauge
|
||||||
|
entity: sensor.mahasri_nas_volume_used_software
|
||||||
|
unit: "%"
|
||||||
|
name: Software Disk
|
||||||
|
severity:
|
||||||
|
green: 0
|
||||||
|
yellow: 70
|
||||||
|
red: 85
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: MAHASRI-NAS Drives
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- sensor.mahasri_nas_temperature_drive_0_1
|
||||||
|
- sensor.mahasri_nas_temperature_drive_0_2
|
||||||
|
- sensor.mahasri_nas_temperature_drive_0_3
|
||||||
|
- sensor.mahasri_nas_temperature_drive_0_4
|
||||||
|
|
||||||
|
- type: entities
|
||||||
|
title: MAHASRI-NAS
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- sensor.mahasri_nas_status
|
||||||
|
- sensor.mahasri_nas_network_up_eth0
|
||||||
|
- sensor.mahasri_nas_network_up_eth1
|
||||||
|
- sensor.mahasri_nas_system_temperature
|
||||||
|
- sensor.mahasri_nas_cpu_temperature
|
||||||
|
|
|
@ -85,10 +85,10 @@ sensor:
|
||||||
print_completion:
|
print_completion:
|
||||||
value_template: >
|
value_template: >
|
||||||
{% set seconds = states('sensor.octoprint_time_remaining')|int %}
|
{% set seconds = states('sensor.octoprint_time_remaining')|int %}
|
||||||
{% if now().strftime('%s')|int | timestamp_custom("%A %D") == (now().strftime('%s') |int + seconds) | timestamp_custom("%A %D") %}
|
{% if utcnow().strftime('%s')|int | timestamp_custom("%A %D") == (utcnow().strftime('%s') |int + seconds) | timestamp_custom("%A %D") %}
|
||||||
Today at {{- (now().strftime('%s')|int + seconds) | timestamp_custom("%l:%M %p") }}
|
Today at {{ (utcnow().strftime('%s')|int + seconds) | timestamp_custom("%I:%M %p") }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ (now().strftime('%s') |int + seconds) | timestamp_custom("%A %D %l:%M %p") }}
|
{{ (utcnow().strftime('%s') |int + seconds) | timestamp_custom("%A %D %I:%M %p") }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
- platform: template
|
- platform: template
|
||||||
|
@ -263,12 +263,12 @@ automation:
|
||||||
- service: camera.snapshot
|
- service: camera.snapshot
|
||||||
data:
|
data:
|
||||||
entity_id: camera.3d_printer_camera
|
entity_id: camera.3d_printer_camera
|
||||||
filename: "/home/homeassistant/.homeassistant/www/downloads/camera/3dprinter/print_latest.jpg"
|
filename: "/config/www/downloads/camera/3dprinter/print_latest.jpg"
|
||||||
- service: notify.telegram
|
- service: notify.telegram
|
||||||
data_template:
|
data_template:
|
||||||
title: "3D Printer"
|
title: "3D Printer"
|
||||||
message: "Print Progress"
|
message: "Print Progress"
|
||||||
data:
|
data:
|
||||||
photo:
|
photo:
|
||||||
- file: "/home/homeassistant/.homeassistant/www/downloads/camera/3dprinter/print_latest.jpg"
|
- file: "/config/www/downloads/camera/3dprinter/print_latest.jpg"
|
||||||
caption: "3D Print Progress at {{ states('sensor.octoprint_job_percentage') }}%"
|
caption: "3D Print Progress at {{ states('sensor.octoprint_job_percentage') }}%"
|
||||||
|
|
|
@ -1,171 +0,0 @@
|
||||||
###############################################################################
|
|
||||||
# @author : Mahasri Kalavala
|
|
||||||
# @date : 09/30/2017
|
|
||||||
# @package : Alarm Clock
|
|
||||||
# @description : Alarm Clock; Added AM/PM Selects
|
|
||||||
# TBD: Restore and Save previous values in MQTT
|
|
||||||
###############################################################################
|
|
||||||
homeassistant:
|
|
||||||
customize:
|
|
||||||
automation.alarm_clock:
|
|
||||||
icon: mdi:alarm-check
|
|
||||||
|
|
||||||
input_number:
|
|
||||||
slider_hours:
|
|
||||||
name: Hours
|
|
||||||
initial: 6
|
|
||||||
min: 0
|
|
||||||
max: 11
|
|
||||||
step: 1
|
|
||||||
|
|
||||||
slider_minutes:
|
|
||||||
name: Minutes
|
|
||||||
initial: 0
|
|
||||||
min: 0
|
|
||||||
max: 59
|
|
||||||
step: 5
|
|
||||||
|
|
||||||
input_boolean:
|
|
||||||
week_day_only:
|
|
||||||
name: Weekdays Only
|
|
||||||
initial: on
|
|
||||||
icon: mdi:calendar-check
|
|
||||||
|
|
||||||
am:
|
|
||||||
name: AM
|
|
||||||
initial: on
|
|
||||||
icon: mdi:weather-sunny
|
|
||||||
|
|
||||||
pm:
|
|
||||||
name: PM
|
|
||||||
initial: off
|
|
||||||
icon: mdi:weather-night
|
|
||||||
|
|
||||||
input_label:
|
|
||||||
alarm_current_time:
|
|
||||||
name: Current Alarm Time
|
|
||||||
icon: mdi:timer-outline
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# _ _ _
|
|
||||||
# /\ | | | | (_)
|
|
||||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
|
||||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
|
||||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
|
||||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
|
||||||
#
|
|
||||||
###############################################################################
|
|
||||||
|
|
||||||
automation:
|
|
||||||
- alias: Update Current Alarm Time
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: homeassistant
|
|
||||||
event: start
|
|
||||||
- platform: state
|
|
||||||
entity_id:
|
|
||||||
- input_boolean.am
|
|
||||||
- input_boolean.pm
|
|
||||||
- input_number.slider_hours
|
|
||||||
- input_number.slider_minutes
|
|
||||||
action:
|
|
||||||
- service: input_label.set_value
|
|
||||||
entity_id: input_label.alarm_current_time
|
|
||||||
data_template:
|
|
||||||
value: >
|
|
||||||
{%- if states('input_number.slider_hours') | int < 10 -%}
|
|
||||||
{%- if states('input_number.slider_hours') |int == 0 %}
|
|
||||||
12
|
|
||||||
{%- else -%}
|
|
||||||
{{- 0 ~ states('input_number.slider_hours') |int -}}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- else -%}
|
|
||||||
{{- states('input_number.slider_hours') |int -}}
|
|
||||||
{% endif -%}:
|
|
||||||
{%- if states('input_number.slider_minutes') | int < 10 -%}
|
|
||||||
{{- 0 ~ states('input_number.slider_minutes') |int -}}
|
|
||||||
{%- else -%}
|
|
||||||
{{- states('input_number.slider_minutes') |int -}}
|
|
||||||
{%- endif -%}{%- if states('input_boolean.am') == "on" %} AM{%- else %} PM{%- endif -%}
|
|
||||||
|
|
||||||
- alias: AM Change OFF
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: input_boolean.am
|
|
||||||
from: "on"
|
|
||||||
to: "off"
|
|
||||||
action:
|
|
||||||
- service: input_boolean.turn_on
|
|
||||||
entity_id: input_boolean.pm
|
|
||||||
- service: input_boolean.turn_off
|
|
||||||
entity_id: input_boolean.am
|
|
||||||
|
|
||||||
- alias: AM Change ON
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: input_boolean.am
|
|
||||||
from: "off"
|
|
||||||
to: "on"
|
|
||||||
action:
|
|
||||||
- service: input_boolean.turn_off
|
|
||||||
entity_id: input_boolean.pm
|
|
||||||
- service: input_boolean.turn_on
|
|
||||||
entity_id: input_boolean.am
|
|
||||||
|
|
||||||
- alias: PM Change OFF
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: input_boolean.pm
|
|
||||||
from: "on"
|
|
||||||
to: "off"
|
|
||||||
action:
|
|
||||||
- service: input_boolean.turn_on
|
|
||||||
entity_id: input_boolean.am
|
|
||||||
- service: input_boolean.turn_off
|
|
||||||
entity_id: input_boolean.pm
|
|
||||||
|
|
||||||
- alias: PM Change ON
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: input_boolean.pm
|
|
||||||
from: "off"
|
|
||||||
to: "on"
|
|
||||||
action:
|
|
||||||
- service: input_boolean.turn_off
|
|
||||||
entity_id: input_boolean.am
|
|
||||||
- service: input_boolean.turn_on
|
|
||||||
entity_id: input_boolean.pm
|
|
||||||
|
|
||||||
- alias: Alarm Clock
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: time_pattern
|
|
||||||
minutes: "/1"
|
|
||||||
seconds: 00
|
|
||||||
condition:
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ states('binary_sensor.workday_sensor') == 'on' }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ states('input_boolean.alarm_clock') == 'on' }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: >
|
|
||||||
{% if states('input_boolean.am') == 'on' %}
|
|
||||||
{% set hour = (states('input_number.slider_hours') | int) %}
|
|
||||||
{% else %}
|
|
||||||
{% set hour = (states('input_number.slider_hours') | int) + 12 %}
|
|
||||||
{% endif %}
|
|
||||||
{{ 'true' if states('sensor.time').split(':')[0] |int == hour else 'false' }}
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ 'true' if (states('sensor.time').split(':')[1] |int == states('input_number.slider_minutes') |int) else 'false' }}"
|
|
||||||
action:
|
|
||||||
- service: script.notify_me
|
|
||||||
data_template:
|
|
||||||
message: "Alarm Clock: Wake Up!!!"
|
|
||||||
- service: script.voice_notify
|
|
||||||
data_template:
|
|
||||||
message: >
|
|
||||||
"Hello! This is an alarm clock reminder! Have a great day!"
|
|
|
@ -1,77 +0,0 @@
|
||||||
# # ###############################################################################
|
|
||||||
# # # @author : Mahasri Kalavala
|
|
||||||
# # # @date : 11/27/2017
|
|
||||||
# # # @package : APC UPS Backup
|
|
||||||
# # # @description : UPS Backup
|
|
||||||
# # ###############################################################################
|
|
||||||
# apcupsd:
|
|
||||||
# host: 127.0.0.1
|
|
||||||
# port: 3551
|
|
||||||
|
|
||||||
# sensor:
|
|
||||||
# - platform: apcupsd
|
|
||||||
# # name: Network Backup UPS
|
|
||||||
# resources:
|
|
||||||
# - bcharge
|
|
||||||
# - linev
|
|
||||||
# - loadpct
|
|
||||||
# - nominv
|
|
||||||
# - numxfers
|
|
||||||
# - status
|
|
||||||
# - timeleft
|
|
||||||
# - tonbatt
|
|
||||||
|
|
||||||
# ###############################################################################
|
|
||||||
# # _ _ _
|
|
||||||
# # /\ | | | | (_)
|
|
||||||
# # / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
|
||||||
# # / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
|
||||||
# # / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
|
||||||
# # /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
|
||||||
# #
|
|
||||||
# ###############################################################################
|
|
||||||
|
|
||||||
# automation:
|
|
||||||
# - alias: UPS State Change
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: sensor.ups_status
|
|
||||||
# action:
|
|
||||||
# - service: script.notify_me
|
|
||||||
# data_template:
|
|
||||||
# message: "UPS Status changed from {{ trigger.from_state.state }}
|
|
||||||
# to {{ trigger.to_state.state }}
|
|
||||||
# at {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p, %B %d,%Y', true) }}."
|
|
||||||
|
|
||||||
# # # Power Failure Notification
|
|
||||||
# # ###############################################################################
|
|
||||||
# - alias: Power Failure
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: sensor.ups_status
|
|
||||||
# from: "ONLINE"
|
|
||||||
# to: "ONBATT"
|
|
||||||
# action:
|
|
||||||
# - service: script.notify_me
|
|
||||||
# data_template:
|
|
||||||
# message:
|
|
||||||
# Power failure at {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p %B-%d,%Y', true) }}.
|
|
||||||
# Battery can last for {{ states('sensor.ups_time_left') }} minutes.
|
|
||||||
|
|
||||||
# # # Power Restored Notification
|
|
||||||
# # ###############################################################################
|
|
||||||
# - alias: Power Restored
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: sensor.ups_status
|
|
||||||
# from: "ONBATT"
|
|
||||||
# to: "ONLINE"
|
|
||||||
# action:
|
|
||||||
# - service: script.notify_me
|
|
||||||
# data_template:
|
|
||||||
# message:
|
|
||||||
# Power restored at {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p %B-%d,%Y', true) }}.
|
|
||||||
# Ran on battery for {{ "%0.2f" % (states('sensor.ups_time_on_battery') | int / 60 |float) }} minutes.
|
|
|
@ -433,47 +433,6 @@ automation:
|
||||||
data_template:
|
data_template:
|
||||||
message: "{{ trigger.to_state.attributes.friendly_name.split(' ')[1] }}'s phone battery is : {{ trigger.to_state.attributes.battery }}%."
|
message: "{{ trigger.to_state.attributes.friendly_name.split(' ')[1] }}'s phone battery is : {{ trigger.to_state.attributes.battery }}%."
|
||||||
|
|
||||||
# ###############################################################################
|
|
||||||
# # Automation: Notify of Sensor's Low Battery
|
|
||||||
# ###############################################################################
|
|
||||||
# - alias: Alert Low Battery Level of Sensors
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# platform: state
|
|
||||||
# entity_id:
|
|
||||||
# - binary_sensor.motion_sensor_158d00016c2d0e
|
|
||||||
# - binary_sensor.motion_sensor_158d00016db6d2
|
|
||||||
# - binary_sensor.motion_sensor_158d0001a25041
|
|
||||||
# - binary_sensor.motion_sensor_158d0001a662fe
|
|
||||||
# - sensor.illumination_158d00016c2d0e
|
|
||||||
# - sensor.illumination_158d00016db6d2
|
|
||||||
# - sensor.illumination_158d0001a25041
|
|
||||||
# - sensor.illumination_158d0001a662fe
|
|
||||||
# - zwave.audio_detector
|
|
||||||
# - zwave.back_door_sensor
|
|
||||||
# - zwave.basement_door_sensor
|
|
||||||
# - zwave.downstairs_multi_sensor
|
|
||||||
# - zwave.front_room_multi_sensor
|
|
||||||
# - zwave.front_room_window_sensor
|
|
||||||
# - zwave.garage_door_sensor
|
|
||||||
# - zwave.guest_bedroom_multi_sensor
|
|
||||||
# - zwave.kitchen_motion_sensor
|
|
||||||
# - zwave.single_car_garage_door_tilt_sensor
|
|
||||||
# - zwave.stairs_motion_sensor
|
|
||||||
# - zwave.tv_multi_sensor
|
|
||||||
# - zwave.two_car_garage_door_tilt_sensor
|
|
||||||
# - zwave.upstairs_multi_sensor
|
|
||||||
# - zwave.wallmote
|
|
||||||
# action:
|
|
||||||
# - service: script.voice_notify
|
|
||||||
# data_template:
|
|
||||||
# message: >-
|
|
||||||
# {%- for item in states if item.entity_id.split('.')[0] != "device_tracker" -%}
|
|
||||||
# {%- for attrib in item.attributes|sort() if 'battery' in attrib and item.attributes[attrib] | int < 10 %}
|
|
||||||
# {{ item.name }} Battery is at {{ item.attributes[attrib] }} percent
|
|
||||||
# {%- endfor -%}
|
|
||||||
# {%- endfor -%}
|
|
||||||
|
|
||||||
- alias: Check Wi-Fi Status of iPhones At Home
|
- alias: Check Wi-Fi Status of iPhones At Home
|
||||||
initial_state: true
|
initial_state: true
|
||||||
trigger:
|
trigger:
|
||||||
|
|
|
@ -45,36 +45,55 @@ camera:
|
||||||
username: !secret camera_username
|
username: !secret camera_username
|
||||||
password: !secret camera_password
|
password: !secret camera_password
|
||||||
|
|
||||||
|
- platform: generic
|
||||||
|
name: Porch Camera
|
||||||
|
still_image_url: !secret porch_camera_url
|
||||||
|
stream_source: porch_camera_rtsp_url
|
||||||
|
verify_ssl: false
|
||||||
|
authentication: basic
|
||||||
|
username: !secret porch_camera_username
|
||||||
|
password: !secret porch_camera_password
|
||||||
|
|
||||||
|
# - platform: ffmpeg
|
||||||
|
# input: porch_camera_rtsp_url
|
||||||
|
# name: Porch Camera
|
||||||
|
|
||||||
- platform: mjpeg
|
- platform: mjpeg
|
||||||
mjpeg_url: !secret garage_camera_url
|
mjpeg_url: !secret garage_camera_url
|
||||||
name: Garage Camera
|
name: Garage Camera
|
||||||
|
|
||||||
- platform: mjpeg
|
|
||||||
mjpeg_url: !secret kitchen_camera_url
|
|
||||||
name: Kitchen Camera
|
|
||||||
|
|
||||||
# - platform: mjpeg
|
|
||||||
# mjpeg_url: !secret frontroom_camera_url
|
|
||||||
# name: Frontroom Camera
|
|
||||||
|
|
||||||
- platform: local_file
|
- platform: local_file
|
||||||
name: Frontdoor Latest Scan
|
name: Frontdoor Latest Scan
|
||||||
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
file_path: "/config/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
||||||
- platform: local_file
|
- platform: local_file
|
||||||
name: Driveway Latest Scan
|
name: Driveway Latest Scan
|
||||||
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_latest.jpg"
|
file_path: "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||||
- platform: local_file
|
- platform: local_file
|
||||||
name: Patio Latest Scan
|
name: Patio Latest Scan
|
||||||
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_latest.jpg"
|
file_path: "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||||
- platform: local_file
|
- platform: local_file
|
||||||
name: Playarea Latest Scan
|
name: Playarea Latest Scan
|
||||||
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_latest.jpg"
|
file_path: "/config/www/downloads/camera/playarea/playarea_latest.jpg"
|
||||||
- platform: local_file
|
- platform: local_file
|
||||||
name: Garage Latest Scan
|
name: Garage Latest Scan
|
||||||
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_latest.jpg"
|
file_path: "/config/www/downloads/camera/garage/garage_latest.jpg"
|
||||||
- platform: local_file
|
- platform: local_file
|
||||||
name: 3dPrinter Latest Scan
|
name: 3dPrinter Latest Scan
|
||||||
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/3dprinter/print_latest.jpg"
|
file_path: "/config/www/downloads/camera/3d/3d_latest.jpg"
|
||||||
|
- platform: local_file
|
||||||
|
name: Porch Latest Scan
|
||||||
|
file_path: "/config/www/downloads/camera/porch/porch_latest.jpg"
|
||||||
|
|
||||||
|
shell_command:
|
||||||
|
reset_camera_stream: !secret camera_stream_restart_docker_url
|
||||||
|
|
||||||
|
switch:
|
||||||
|
- platform: rest
|
||||||
|
resource: !secret camera_stream_docker_url
|
||||||
|
name: Camera Stream
|
||||||
|
body_on: '{"state": "start"}'
|
||||||
|
body_off: '{"state": "stop"}'
|
||||||
|
is_on_template: '{{ value_json is not none and value_json.state == "running" }}'
|
||||||
|
|
||||||
binary_sensor:
|
binary_sensor:
|
||||||
- platform: hikvision
|
- platform: hikvision
|
||||||
|
@ -105,6 +124,14 @@ binary_sensor:
|
||||||
username: !secret camera_username
|
username: !secret camera_username
|
||||||
password: !secret camera_password
|
password: !secret camera_password
|
||||||
|
|
||||||
|
- platform: mqtt
|
||||||
|
state_topic: "myhome/dafang_1/motion"
|
||||||
|
name: "Porch Motion"
|
||||||
|
device_class: motion
|
||||||
|
payload_on: "ON"
|
||||||
|
payload_off: "OFF"
|
||||||
|
value_template: "{{ value }}"
|
||||||
|
|
||||||
image_processing:
|
image_processing:
|
||||||
- platform: tensorflow
|
- platform: tensorflow
|
||||||
scan_interval: 10000
|
scan_interval: 10000
|
||||||
|
@ -115,11 +142,12 @@ image_processing:
|
||||||
- entity_id: camera.playarea_camera
|
- entity_id: camera.playarea_camera
|
||||||
- entity_id: camera.garage_camera
|
- entity_id: camera.garage_camera
|
||||||
- entity_id: camera.3d_printer_camera
|
- entity_id: camera.3d_printer_camera
|
||||||
|
- entity_id: camera.porch_camera
|
||||||
file_out:
|
file_out:
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/{{- camera_entity.split('.')[1].split('_')[0] -}}/{{ camera_entity.split('.')[1].split('_')[0] }}_latest.jpg"
|
- "/config/www/downloads/camera/{{- camera_entity.split('.')[1].split('_')[0] -}}/{{ camera_entity.split('.')[1].split('_')[0] }}_latest.jpg"
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/{{- camera_entity.split('.')[1].split('_')[0] -}}/{{ camera_entity.split('.')[1].split('_')[0] }}_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg"
|
- "/config/www/downloads/camera/{{- camera_entity.split('.')[1].split('_')[0] -}}/{{ camera_entity.split('.')[1].split('_')[0] }}_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg"
|
||||||
model:
|
model:
|
||||||
graph: /home/homeassistant/.homeassistant/tensorflow/models/efficientdet_d0_coco17_tpu-32/
|
graph: /config/tensorflow/models/efficientdet_d0_coco17_tpu-32/
|
||||||
|
|
||||||
input_label:
|
input_label:
|
||||||
current_stream:
|
current_stream:
|
||||||
|
@ -194,6 +222,26 @@ rest_command:
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
automation:
|
automation:
|
||||||
|
|
||||||
|
- alias: Scan Porch Camera On Motion
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
- platform: state
|
||||||
|
entity_id: binary_sensor.porch_motion
|
||||||
|
from: "off"
|
||||||
|
to: "on"
|
||||||
|
action:
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.porch_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/porch/porch_' ~
|
||||||
|
(states.binary_sensor.porch_motion.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
- service: image_processing.scan
|
||||||
|
data_template:
|
||||||
|
entity_id: image_processing.tensorflow_porch_camera
|
||||||
|
|
||||||
#
|
#
|
||||||
# Scan front door and driveway cameras when motion detected
|
# Scan front door and driveway cameras when motion detected
|
||||||
# if the garage doors are open, scan garage cameras as well
|
# if the garage doors are open, scan garage cameras as well
|
||||||
|
@ -260,7 +308,7 @@ automation:
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
- "/config/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
||||||
|
|
||||||
- service: script.notify_me_with_picture
|
- service: script.notify_me_with_picture
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -277,7 +325,7 @@ automation:
|
||||||
{% else %}
|
{% else %}
|
||||||
Motion detected at the front door on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
Motion detected at the front door on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
file: "/config/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
||||||
caption: "Front Door Motion"
|
caption: "Front Door Motion"
|
||||||
|
|
||||||
- condition: template
|
- condition: template
|
||||||
|
@ -357,7 +405,7 @@ automation:
|
||||||
{% else %}
|
{% else %}
|
||||||
Motion detected at the driveway on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
Motion detected at the driveway on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_latest.jpg"
|
file: "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||||
caption: "Driveway Motion"
|
caption: "Driveway Motion"
|
||||||
|
|
||||||
- service: notify.notify_smtp
|
- service: notify.notify_smtp
|
||||||
|
@ -377,7 +425,7 @@ automation:
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_latest.jpg"
|
- "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||||
|
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: >
|
value_template: >
|
||||||
|
@ -466,7 +514,7 @@ automation:
|
||||||
{% else %}
|
{% else %}
|
||||||
Motion detected in the garage on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
Motion detected in the garage on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_latest.jpg"
|
file: "/config/www/downloads/camera/garage/garage_latest.jpg"
|
||||||
caption: "Garage Motion"
|
caption: "Garage Motion"
|
||||||
|
|
||||||
- service: notify.notify_smtp
|
- service: notify.notify_smtp
|
||||||
|
@ -486,7 +534,7 @@ automation:
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_latest.jpg"
|
- "/config/www/downloads/camera/garage/garage_latest.jpg"
|
||||||
#
|
#
|
||||||
# When motion detected in the backyard, scan both cameras
|
# When motion detected in the backyard, scan both cameras
|
||||||
#
|
#
|
||||||
|
@ -552,7 +600,7 @@ automation:
|
||||||
{% else %}
|
{% else %}
|
||||||
Motion detected in the backyard on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
Motion detected in the backyard on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_latest.jpg"
|
file: "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||||
caption: "Backyard Motion"
|
caption: "Backyard Motion"
|
||||||
|
|
||||||
- service: notify.notify_smtp
|
- service: notify.notify_smtp
|
||||||
|
@ -572,8 +620,8 @@ automation:
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_latest.jpg"
|
- "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_latest.jpg"
|
- "/config/www/downloads/camera/playarea/playarea_latest.jpg"
|
||||||
|
|
||||||
# Before you think this code is crazy, here is an explanation.
|
# Before you think this code is crazy, here is an explanation.
|
||||||
#
|
#
|
||||||
|
@ -626,21 +674,28 @@ automation:
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.frontdoor_camera"
|
entity_id: "camera.frontdoor_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
"{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.porch_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/porch/porch_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- service: camera.snapshot
|
- service: camera.snapshot
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.driveway_camera"
|
entity_id: "camera.driveway_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
"{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- service: camera.snapshot
|
- service: camera.snapshot
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.garage_camera"
|
entity_id: "camera.garage_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
"{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -650,15 +705,15 @@ automation:
|
||||||
message: "Motion Detected At Front Door, Check images:"
|
message: "Motion Detected At Front Door, Check images:"
|
||||||
data:
|
data:
|
||||||
photo:
|
photo:
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
- file: "{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Front Door"
|
caption: "Front Door"
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
- file: "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Driveway"
|
caption: "Driveway"
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
- file: "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Garage"
|
caption: "Garage"
|
||||||
|
@ -669,13 +724,13 @@ automation:
|
||||||
message: 'Motion detected at the front door on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") -}}. Please see the images below.'
|
message: 'Motion detected at the front door on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") -}}. Please see the images below.'
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
- "{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
- "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
- "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -718,21 +773,21 @@ automation:
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.frontdoor_camera"
|
entity_id: "camera.frontdoor_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
"{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- service: camera.snapshot
|
- service: camera.snapshot
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.driveway_camera"
|
entity_id: "camera.driveway_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
"{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- service: camera.snapshot
|
- service: camera.snapshot
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.garage_camera"
|
entity_id: "camera.garage_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
"{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -742,15 +797,15 @@ automation:
|
||||||
message: "Motion Detected At Driveway, Check images:"
|
message: "Motion Detected At Driveway, Check images:"
|
||||||
data:
|
data:
|
||||||
photo:
|
photo:
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
- file: "{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Front Door"
|
caption: "Front Door"
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
- file: "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Driveway"
|
caption: "Driveway"
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
- file: "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Garage"
|
caption: "Garage"
|
||||||
|
@ -761,13 +816,13 @@ automation:
|
||||||
message: 'Motion detected at the Driveway on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.'
|
message: 'Motion detected at the Driveway on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.'
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
- "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
- "{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
- "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -821,7 +876,7 @@ automation:
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.patio_camera"
|
entity_id: "camera.patio_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
|
"{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -829,7 +884,7 @@ automation:
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.playarea_camera"
|
entity_id: "camera.playarea_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_' ~
|
"{{ '/config/www/downloads/camera/playarea/playarea_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -839,11 +894,11 @@ automation:
|
||||||
message: "Motion Detected in the Backyard, Check images:"
|
message: "Motion Detected in the Backyard, Check images:"
|
||||||
data:
|
data:
|
||||||
photo:
|
photo:
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
|
- file: "{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Patio"
|
caption: "Patio"
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_' ~
|
- file: "{{ '/config/www/downloads/camera/playarea/playarea_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Playarea"
|
caption: "Playarea"
|
||||||
|
@ -854,10 +909,10 @@ automation:
|
||||||
message: 'Motion detected in the Backyard on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.'
|
message: 'Motion detected in the Backyard on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.'
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
|
- "{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_' ~
|
- "{{ '/config/www/downloads/camera/playarea/playarea_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
@ -1023,3 +1078,8 @@ script:
|
||||||
data_template:
|
data_template:
|
||||||
url: !secret playarea_camera_stream_url
|
url: !secret playarea_camera_stream_url
|
||||||
name: "playarea"
|
name: "playarea"
|
||||||
|
reset_camera_stream:
|
||||||
|
alias: Reset Camera Stream
|
||||||
|
sequence:
|
||||||
|
- service: shell_command.reset_camera_stream
|
||||||
|
- service_template: "script.{{- ['frontdoor', 'driveway', 'patio', 'playarea'] | random -}}_cam"
|
||||||
|
|
|
@ -108,9 +108,9 @@ automation:
|
||||||
state: "on"
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_off
|
- service: switch.turn_off
|
||||||
entity_id: switch.frontyard_light
|
entity_id: switch.frontyard
|
||||||
- service: switch.turn_off
|
- service: switch.turn_off
|
||||||
entity_id: switch.wemobackyardlightswitch
|
entity_id: switch.backyard
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Turn OF Kitchen Lights after 3 hours of wake up time during school/work days
|
# Turn OF Kitchen Lights after 3 hours of wake up time during school/work days
|
||||||
|
@ -162,9 +162,9 @@ automation:
|
||||||
state: "on"
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.frontyard_light
|
entity_id: switch.frontyard
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.wemobackyardlightswitch
|
entity_id: switch.backyard
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Turn indoor lights on 30 minutes before sunset
|
# Turn indoor lights on 30 minutes before sunset
|
||||||
|
@ -218,6 +218,8 @@ automation:
|
||||||
entity_id: switch.kids_bed_accent
|
entity_id: switch.kids_bed_accent
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.front_room
|
entity_id: switch.front_room
|
||||||
|
- service: switch.turn_on
|
||||||
|
entity_id: switch.officeroom_accent_lights
|
||||||
|
|
||||||
# ÛÛÛÛÛÛ ÛÛÛÛÛ ÛÛÛ ÛÛÛÛÛ ÛÛÛÛÛ
|
# ÛÛÛÛÛÛ ÛÛÛÛÛ ÛÛÛ ÛÛÛÛÛ ÛÛÛÛÛ
|
||||||
# °°ÛÛÛÛÛÛ °°ÛÛÛ °°° °°ÛÛÛ °°ÛÛÛ
|
# °°ÛÛÛÛÛÛ °°ÛÛÛ °°° °°ÛÛÛ °°ÛÛÛ
|
||||||
|
|
|
@ -11,9 +11,9 @@ homeassistant:
|
||||||
states('binary_sensor.door_window_sensor_158d0004248d5b') == "off" %}
|
states('binary_sensor.door_window_sensor_158d0004248d5b') == "off" %}
|
||||||
{% set doors = "Both Garage Doors are now CLOSED" %}
|
{% set doors = "Both Garage Doors are now CLOSED" %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if trigger.to_state.state | lower == "on" %}
|
{% if trigger.from_state.state != trigger.to_state.state and trigger.to_state.state | lower == "on" %}
|
||||||
Attention! Your {{ trigger.to_state.attributes.friendly_name }} is now OPENED!
|
Attention! Your {{ trigger.to_state.attributes.friendly_name }} is now OPENED!
|
||||||
{% elif trigger.to_state.state | lower == "off" %}
|
{% elif trigger.from_state.state != trigger.to_state.state and trigger.to_state.state | lower == "off" %}
|
||||||
Your {{ trigger.to_state.attributes.friendly_name }} is now CLOSED!
|
Your {{ trigger.to_state.attributes.friendly_name }} is now CLOSED!
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -77,13 +77,6 @@ binary_sensor:
|
||||||
payload_off: "off"
|
payload_off: "off"
|
||||||
value_template: "{{ value }}"
|
value_template: "{{ value }}"
|
||||||
|
|
||||||
- platform: mqtt
|
|
||||||
state_topic: "/frontroom/motion"
|
|
||||||
name: "Frontroom Camera Motion"
|
|
||||||
device_class: motion
|
|
||||||
payload_on: "on"
|
|
||||||
payload_off: "off"
|
|
||||||
value_template: "{{ value }}"
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# _ _ _
|
# _ _ _
|
||||||
|
@ -111,31 +104,20 @@ automation:
|
||||||
payload: "off"
|
payload: "off"
|
||||||
retain: false
|
retain: false
|
||||||
|
|
||||||
- alias: Turn Garage Lights On When Motion Detected
|
- alias: Turn Garage Lights On When Motion Detected or Door Opened
|
||||||
initial_state: true
|
initial_state: true
|
||||||
trigger:
|
trigger:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: binary_sensor.motion_sensor_158d000272bf48
|
entity_id: binary_sensor.motion_sensor_158d000272bf48
|
||||||
to: "on"
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.garage
|
entity_id: switch.garage
|
||||||
|
|
||||||
- alias: Frontroom Camera Motion Reset
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: state
|
|
||||||
entity_id: binary_sensor.frontroom_camera_motion
|
|
||||||
to: "on"
|
|
||||||
from: "off"
|
|
||||||
action:
|
|
||||||
- delay: "00:00:30"
|
|
||||||
- service: mqtt.publish
|
|
||||||
data:
|
|
||||||
topic: "/frontroom/motion"
|
|
||||||
payload: "off"
|
|
||||||
retain: false
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# Notifies when either of the garage door is opened or closed
|
# Notifies when either of the garage door is opened or closed
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -177,7 +159,7 @@ automation:
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.garage_camera"
|
entity_id: "camera.garage_camera"
|
||||||
filename:
|
filename:
|
||||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
"{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
||||||
|
|
||||||
|
@ -200,7 +182,7 @@ automation:
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
Your {{doors}} on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please check the garage snapshot below.
|
Your {{doors}} on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please check the garage snapshot below.
|
||||||
file: >
|
file: >
|
||||||
{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}
|
||||||
caption: "{{ trigger.to_state.attributes.friendly_name }}: {{ 'OPEN' if trigger.to_state.state == 'on' else 'CLOSED' }}"
|
caption: "{{ trigger.to_state.attributes.friendly_name }}: {{ 'OPEN' if trigger.to_state.state == 'on' else 'CLOSED' }}"
|
||||||
|
@ -225,7 +207,7 @@ automation:
|
||||||
Your {{doors}} on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please check the garage snapshot below.
|
Your {{doors}} on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please check the garage snapshot below.
|
||||||
data:
|
data:
|
||||||
images:
|
images:
|
||||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
- "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
||||||
|
|
||||||
|
@ -241,9 +223,12 @@ automation:
|
||||||
entity_id:
|
entity_id:
|
||||||
- binary_sensor.door_window_sensor_158d000424a6d6 # Front Door
|
- binary_sensor.door_window_sensor_158d000424a6d6 # Front Door
|
||||||
- binary_sensor.door_window_sensor_158d00040ad8fc # Back Door
|
- binary_sensor.door_window_sensor_158d00040ad8fc # Back Door
|
||||||
|
- binary_sensor.door_window_sensor_158d0004880f30 # Garage Entry Door
|
||||||
condition:
|
condition:
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ trigger.from_state.state not in ['unavailable', 'unknown'] }}"
|
value_template: "{{ trigger.from_state.state not in ['unavailable', 'unknown'] }}"
|
||||||
|
- condition: template
|
||||||
|
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
||||||
action:
|
action:
|
||||||
- service: script.voice_notify
|
- service: script.voice_notify
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -280,12 +265,15 @@ automation:
|
||||||
entity_id: binary_sensor.door_window_sensor_158d000424a6d6
|
entity_id: binary_sensor.door_window_sensor_158d000424a6d6
|
||||||
to: "on"
|
to: "on"
|
||||||
condition:
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service: script.frontdoor_cam
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
||||||
action:
|
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.front_room
|
entity_id: switch.front_room
|
||||||
- service: script.frontdoor_cam
|
|
||||||
|
|
||||||
- alias: When Back Door Opens Turn Kitchen Lights ON
|
- alias: When Back Door Opens Turn Kitchen Lights ON
|
||||||
initial_state: true
|
initial_state: true
|
||||||
|
@ -294,12 +282,15 @@ automation:
|
||||||
entity_id: binary_sensor.door_window_sensor_158d00040ad8fc
|
entity_id: binary_sensor.door_window_sensor_158d00040ad8fc
|
||||||
to: "on"
|
to: "on"
|
||||||
condition:
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service_template: "script.{{ ['patio_cam', 'playarea_cam'] | random }}"
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
||||||
action:
|
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.kitchen
|
entity_id: switch.kitchen
|
||||||
- service_template: "script.{{ ['patio_cam', 'playarea_cam'] | random }}"
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# When I open the garage door
|
# When I open the garage door
|
||||||
|
@ -311,7 +302,7 @@ automation:
|
||||||
initial_state: true
|
initial_state: true
|
||||||
trigger:
|
trigger:
|
||||||
platform: state
|
platform: state
|
||||||
entity_id: binary_sensor.garage_door_sensor_sensor
|
entity_id: binary_sensor.door_window_sensor_158d0004880f30
|
||||||
to: "on"
|
to: "on"
|
||||||
condition:
|
condition:
|
||||||
condition: or
|
condition: or
|
||||||
|
@ -324,8 +315,52 @@ automation:
|
||||||
value_template: "{{ states('binary_sensor.door_window_sensor_158d0004248d5b') == 'off' }}"
|
value_template: "{{ states('binary_sensor.door_window_sensor_158d0004248d5b') == 'off' }}"
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ states('binary_sensor.door_window_sensor_158d0004231f7b') == 'off' }}"
|
value_template: "{{ states('binary_sensor.door_window_sensor_158d0004231f7b') == 'off' }}"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.garage
|
entity_id: switch.garage
|
||||||
- service: timer.start
|
- service: timer.start
|
||||||
entity_id: timer.timer_garage
|
entity_id: timer.timer_garage
|
||||||
|
|
||||||
|
#
|
||||||
|
# Only turn ON lights at 25% at night
|
||||||
|
#
|
||||||
|
- alias: Master Bathroom Door Opened After Dark
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: binary_sensor.door_window_sensor_158d000424718f
|
||||||
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: template
|
||||||
|
value_template: '{{states.sun.sun.state == "below_horizon"}}'
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service: light.turn_on
|
||||||
|
entity_id: light.master_bathroom_lights
|
||||||
|
data:
|
||||||
|
brightness: 64 # 25% of brightness
|
||||||
|
transition: 5
|
||||||
|
|
||||||
|
- alias: Master Bathroom Door Opened During The Day
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: binary_sensor.door_window_sensor_158d000424718f
|
||||||
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: template
|
||||||
|
value_template: '{{states.sun.sun.state == "above_horizon"}}'
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service: light.turn_on
|
||||||
|
entity_id: light.master_bathroom_lights
|
||||||
|
data:
|
||||||
|
brightness: 255 # 100% of brightness
|
||||||
|
transition: 10
|
||||||
|
|
|
@ -1,90 +0,0 @@
|
||||||
frontend:
|
|
||||||
themes:
|
|
||||||
dark_red:
|
|
||||||
dark-primary-color: "#c66900"
|
|
||||||
disabled-text-color: "#545454"
|
|
||||||
divider-color: "rgba(255, 255, 255, 0.12)"
|
|
||||||
light-primary-color: "#e06c6c"
|
|
||||||
paper-card-background-color: "#1d1d1d"
|
|
||||||
paper-grey-200: "#191919"
|
|
||||||
paper-item-icon-color: "#d3d3d3"
|
|
||||||
paper-listbox-background-color: "#202020"
|
|
||||||
primary-background-color: "#303030"
|
|
||||||
primary-color: "#d32f2f"
|
|
||||||
primary-text-color: "#cfcfcf"
|
|
||||||
secondary-background-color: "#131313"
|
|
||||||
sidebar-text_-_background: "#62717b"
|
|
||||||
paper-card-header-color: "var(--paper-item-icon-color)"
|
|
||||||
paper-item-icon-active-color: "var(--primary-color)"
|
|
||||||
paper-item-icon_-_color: "var(--primary-text-color)"
|
|
||||||
paper-listbox-color: "var(--primary-text-color)"
|
|
||||||
paper-grey-50: "var(--primary-text-color)"
|
|
||||||
paper-slider-active-color: "var(--primary-color)"
|
|
||||||
paper-slider-knob-color: "var(--primary-color)"
|
|
||||||
paper-slider-knob-start-color: "var(--primary-color)"
|
|
||||||
paper-slider-pin-color: "var(--primary-color)"
|
|
||||||
paper-slider-secondary-color: "var(--light-primary-color)"
|
|
||||||
paper-toggle-button-checked-ink-color: "var(--dark-primary-color)"
|
|
||||||
paper-toggle-button-checked-button-color: "var(--primary-color)"
|
|
||||||
paper-toggle-button-checked-bar-color: "var(--light-primary-color)"
|
|
||||||
paper-toggle-button-unchecked-bar-color: "var(--primary-text-color)"
|
|
||||||
secondary-text-color: "var(--primary-color)"
|
|
||||||
table-row-background-color: "var(--paper-card-background-color)"
|
|
||||||
table-row-alternative-background-color: "var(--sidebar-text_-_background)"
|
|
||||||
light_pink:
|
|
||||||
dark-primary-color: "#ff084a"
|
|
||||||
primary-color: "#fc3468"
|
|
||||||
light-primary-color: "#ffc2cd"
|
|
||||||
paper-toggle-button-checked-ink-color: "#ff6289"
|
|
||||||
paper-toggle-button-checked-button-color: "#ff084a"
|
|
||||||
paper-toggle-button-checked-bar-color: "#ffc2cd"
|
|
||||||
paper-slider-knob-color: "#ff084a"
|
|
||||||
paper-slider-knob-start-color: "#ff084a"
|
|
||||||
paper-slider-pin-color: "#ff084a"
|
|
||||||
paper-slider-active-color: "#ff084a"
|
|
||||||
paper-slider-secondary-color: "#ff93ac"
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# _ _ _
|
|
||||||
# /\ | | | | (_)
|
|
||||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
|
||||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
|
||||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
|
||||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
|
||||||
#
|
|
||||||
###############################################################################
|
|
||||||
automation:
|
|
||||||
- alias: Random Theme At Startup
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: homeassistant
|
|
||||||
event: start
|
|
||||||
action:
|
|
||||||
- service_template: frontend.set_theme
|
|
||||||
data_template:
|
|
||||||
name: >
|
|
||||||
{% if states('sun.sun') == "above_horizon" %}
|
|
||||||
{{ ["light_pink", "default"] | random }}
|
|
||||||
{% else %}
|
|
||||||
{{ [ "dark_red" ] | random }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
- alias: Random Darker Theme At Sunset
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: sun
|
|
||||||
event: sunset
|
|
||||||
action:
|
|
||||||
- service: frontend.set_theme
|
|
||||||
data_template:
|
|
||||||
name: '{{ ["dark_red"] | random }}'
|
|
||||||
|
|
||||||
- alias: Random Lighter Theme At Sunrise
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: sun
|
|
||||||
event: sunrise
|
|
||||||
action:
|
|
||||||
- service: frontend.set_theme
|
|
||||||
data_template:
|
|
||||||
name: '{{ ["light_pink", "default"] | random }}'
|
|
|
@ -45,16 +45,6 @@ sensor:
|
||||||
arg: ens160
|
arg: ens160
|
||||||
- type: last_boot
|
- type: last_boot
|
||||||
|
|
||||||
- platform: rest
|
|
||||||
resource: https://pypi.python.org/pypi/homeassistant/json
|
|
||||||
name: HA Current Version
|
|
||||||
value_template: "{{ value_json.info.version }}"
|
|
||||||
|
|
||||||
- platform: command_line
|
|
||||||
name: HA Installed Version
|
|
||||||
command: /srv/homeassistant/bin/hass --version
|
|
||||||
scan_interval: 86400
|
|
||||||
|
|
||||||
- platform: mqtt
|
- platform: mqtt
|
||||||
state_topic: "iotlink/domain/winsvr2016/lwt"
|
state_topic: "iotlink/domain/winsvr2016/lwt"
|
||||||
name: "Windows Server"
|
name: "Windows Server"
|
||||||
|
@ -79,57 +69,3 @@ sensor:
|
||||||
state_topic: "iotlink/domain/winsvr2016/windows-monitor/stats/system/idle-time"
|
state_topic: "iotlink/domain/winsvr2016/windows-monitor/stats/system/idle-time"
|
||||||
name: "Windows Server Idle Time"
|
name: "Windows Server Idle Time"
|
||||||
value_template: "{{ value }}"
|
value_template: "{{ value }}"
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# _ _ _
|
|
||||||
# /\ | | | | (_)
|
|
||||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
|
||||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
|
||||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
|
||||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
|
||||||
#
|
|
||||||
###############################################################################
|
|
||||||
|
|
||||||
automation:
|
|
||||||
# Notify me when I get a new public IP from my ISP
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
- alias: Notify Of New External IP
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: sensor.external_ip
|
|
||||||
condition:
|
|
||||||
- condition: template
|
|
||||||
value_template: "{% if trigger.from_state and trigger.to_state %} true {% else %} false {% endif %}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{% if trigger.from_state.state == 'unknown' %} false {% else %} true {% endif %}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{% if trigger.to_state.state == 'unknown' %} false {% else %} true {% endif %}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
|
||||||
action:
|
|
||||||
- service: script.notify_me
|
|
||||||
data_template:
|
|
||||||
message: "Your External IP changed from {{ trigger.from_state.state }} to {{ trigger.to_state.state }}"
|
|
||||||
|
|
||||||
- alias: Update Available Notification
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: updater.updater
|
|
||||||
action:
|
|
||||||
- service: script.notify_me
|
|
||||||
data: { "message": "New HASS update is available. Please update!" }
|
|
||||||
|
|
||||||
- alias: Remind domain renewal
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: numeric_state
|
|
||||||
entity_id: sensor.my_domain
|
|
||||||
below: 30
|
|
||||||
action:
|
|
||||||
- service: persistent_notification.create
|
|
||||||
data:
|
|
||||||
title: "Domain Renew"
|
|
||||||
message: "It is time to renew your domain. The domain will expire in {{ states('sensor.my_domain') }} days."
|
|
||||||
|
|
|
@ -16,10 +16,10 @@ homeassistant:
|
||||||
friendly_name: Home Security System
|
friendly_name: Home Security System
|
||||||
icon: mdi:security
|
icon: mdi:security
|
||||||
|
|
||||||
simplisafe:
|
# simplisafe:
|
||||||
accounts:
|
# accounts:
|
||||||
- username: !secret simplisafe_username
|
# - username: !secret simplisafe_username
|
||||||
password: !secret simplisafe_password
|
# password: !secret simplisafe_password
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# _ _ _
|
# _ _ _
|
||||||
|
@ -36,7 +36,7 @@ automation:
|
||||||
# Leeo light - color indication of Home Security System
|
# Leeo light - color indication of Home Security System
|
||||||
# BLUE for Secured (Home and Away), and RED for OFF or Trigerred
|
# BLUE for Secured (Home and Away), and RED for OFF or Trigerred
|
||||||
###############################################################################
|
###############################################################################
|
||||||
- alias: Home Security Status Leeo Color
|
- alias: Home Security Status Xiaomi Color
|
||||||
initial_state: true
|
initial_state: true
|
||||||
trigger:
|
trigger:
|
||||||
platform: state
|
platform: state
|
||||||
|
@ -60,6 +60,104 @@ automation:
|
||||||
script.xiaomi_red
|
script.xiaomi_red
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
#
|
||||||
|
# This automation will trigger when the Home Security System is "Triggered"
|
||||||
|
# This will send all relevant information - Door Statuses and Camera snapshots around the home
|
||||||
|
# Meanwhile Home Security Company will be calling and/or dispatching Police over to the house.
|
||||||
|
# This should give you enough information to have a good conversation with the Home Security System company when not at home
|
||||||
|
|
||||||
|
- alias: Home Security Triggered
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: alarm_control_panel.home
|
||||||
|
to: "triggered"
|
||||||
|
action:
|
||||||
|
- service: script.notify_me
|
||||||
|
data_template:
|
||||||
|
message: >
|
||||||
|
{% set ns = namespace(openDoorCount=0, doorNames="") %}
|
||||||
|
{%- set sensors = [
|
||||||
|
'binary_sensor.door_window_sensor_158d000424a6d6', 'binary_sensor.door_window_sensor_158d00040ad8fc', 'binary_sensor.door_window_sensor_158d0004880f30',
|
||||||
|
'binary_sensor.door_window_sensor_158d000424718f', 'binary_sensor.door_window_sensor_158d0004231f7b', 'binary_sensor.door_window_sensor_158d0004248d5b',
|
||||||
|
'binary_sensor.motion_sensor_158d00016c2d0e', 'binary_sensor.motion_sensor_158d00016db6d2', 'binary_sensor.motion_sensor_158d0001a25041',
|
||||||
|
'binary_sensor.motion_sensor_158d0001a662fe','binary_sensor.motion_sensor_158d00024e57d3','binary_sensor.motion_sensor_158d00024e57fb',
|
||||||
|
'binary_sensor.motion_sensor_158d00024e842c','binary_sensor.motion_sensor_158d00024ee084','binary_sensor.motion_sensor_158d000272bed1',
|
||||||
|
'binary_sensor.motion_sensor_158d000272bf48','binary_sensor.motion_sensor_158d000272bfd7','binary_sensor.motion_sensor_158d000464c25a',
|
||||||
|
'binary_sensor.motion_sensor_158d00047b6f69'
|
||||||
|
] -%}
|
||||||
|
|
||||||
|
{%- for item in sensors if states(item) == "on" %}
|
||||||
|
{% set ns.doorNames = ns.doorNames + state_attr(item, "friendly_name") + (", " if not loop.last else " ") %}
|
||||||
|
{% set ns.openDoorCount = ns.openDoorCount + 1 %}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
Your Home Security System is triggered. {{ "But ALL Doors are CLOSED! Must be a spider on one of the sensor(s) triggered it!" if ns.openDoorCount == 0 else 'Following sensors are ON currently:' }}
|
||||||
|
{{ ns.doorNames }}
|
||||||
|
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.frontdoor_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.driveway_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.garage_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.patio_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
- service: camera.snapshot
|
||||||
|
data_template:
|
||||||
|
entity_id: "camera.playarea_camera"
|
||||||
|
filename:
|
||||||
|
"{{ '/config/www/downloads/camera/playarea/playarea_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
|
- service: notify.telegram
|
||||||
|
data_template:
|
||||||
|
title: "Camera Snapshots"
|
||||||
|
message: "Please check the camera images just to be sure!"
|
||||||
|
data:
|
||||||
|
photo:
|
||||||
|
- file: "{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
caption: "Front Door"
|
||||||
|
- file: "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
caption: "Driveway"
|
||||||
|
- file: "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
caption: "Garage"
|
||||||
|
- file: "{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
caption: "Patio"
|
||||||
|
- file: "{{ '/config/www/downloads/camera/playarea/playarea_' ~
|
||||||
|
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||||
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
caption: "Playarea"
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Notify Security System State Change
|
# Notify Security System State Change
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -229,7 +327,7 @@ automation:
|
||||||
- service: camera.snapshot
|
- service: camera.snapshot
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: "camera.garage_camera"
|
entity_id: "camera.garage_camera"
|
||||||
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~ (state_attr('automation.home_security_system_and_garage_door_check','last_updated') ~ '').replace('-','_').replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
filename: "{{ '/config/www/downloads/camera/garage/garage_' ~ (state_attr('automation.home_security_system_and_garage_door_check','last_updated') ~ '').replace('-','_').replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
|
|
||||||
- service: notify.telegram
|
- service: notify.telegram
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -237,7 +335,7 @@ automation:
|
||||||
message: "Home Security System is ON, but Garage Doors are OPEN!"
|
message: "Home Security System is ON, but Garage Doors are OPEN!"
|
||||||
data:
|
data:
|
||||||
photo:
|
photo:
|
||||||
- file: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
- file: "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||||
caption: "Garage"
|
caption: "Garage"
|
||||||
|
|
|
@ -1,345 +0,0 @@
|
||||||
###############################################################################
|
|
||||||
# @author : Mahasri Kalavala
|
|
||||||
# @date : 04/15/2017
|
|
||||||
# @package : Lights
|
|
||||||
# @description : Lights, Lights, Lights! All the Lights are here!
|
|
||||||
###############################################################################
|
|
||||||
homeassistant:
|
|
||||||
customize:
|
|
||||||
switch.frontyard_light:
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
friendly_name: Front Porch Lights
|
|
||||||
emulated_hue_name: Front Yard Lights
|
|
||||||
homebridge_name: Front Yard Lights
|
|
||||||
|
|
||||||
switch.wemoswitch1:
|
|
||||||
icon: mdi:lamp
|
|
||||||
friendly_name: TV Switch
|
|
||||||
emulated_hue_name: TV Switch
|
|
||||||
homebridge_name: TV Switch
|
|
||||||
|
|
||||||
switch.wemobackyardlightswitch:
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
friendly_name: Backyard Lights
|
|
||||||
emulated_hue_name: Backyard Lights
|
|
||||||
homebridge_name: Backyard Lights
|
|
||||||
|
|
||||||
switch.guest_bedroom:
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
friendly_name: Guest Bedroom 1
|
|
||||||
emulated_hue_name: Guest Bedroom 1
|
|
||||||
homebridge_name: Guest Bedroom 1
|
|
||||||
|
|
||||||
switch.prayer_room:
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
friendly_name: Guest Bedroom 2
|
|
||||||
emulated_hue_name: Guest Bedroom 2
|
|
||||||
homebridge_name: Guest Bedroom 2
|
|
||||||
|
|
||||||
switch.kids_bed_accent:
|
|
||||||
friendly_name: Hasika's Bed Accent Lights
|
|
||||||
assumed_state: false
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.front_room:
|
|
||||||
friendly_name: Front Room Light
|
|
||||||
assumed_state: false
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.basement_left:
|
|
||||||
friendly_name: Basement Theater Lights
|
|
||||||
assumed_state: false
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.basement_right:
|
|
||||||
friendly_name: Basement Right Side Lights
|
|
||||||
assumed_state: false
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.kitchen:
|
|
||||||
friendly_name: Kitchen Light
|
|
||||||
assumed_state: false
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.office_room:
|
|
||||||
friendly_name: Office Room Lights
|
|
||||||
assumed_state: false
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.kids_bedroom:
|
|
||||||
friendly_name: Kids Bedroom
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
switch.garage:
|
|
||||||
friendly_name: Garage Lights
|
|
||||||
icon: mdi:lightbulb
|
|
||||||
|
|
||||||
light.hue_color_lamp_1:
|
|
||||||
friendly_name: Family Room Light 1
|
|
||||||
color_set: false
|
|
||||||
light.hue_color_lamp_2:
|
|
||||||
friendly_name: Family Room Light 2
|
|
||||||
color_set: false
|
|
||||||
light.hue_color_lamp_3:
|
|
||||||
friendly_name: Family Room Light 3
|
|
||||||
color_set: false
|
|
||||||
input_boolean.short_flash:
|
|
||||||
icon: mdi:flash
|
|
||||||
friendly_name: Short Flash
|
|
||||||
input_boolean.long_flash:
|
|
||||||
icon: mdi:flash
|
|
||||||
friendly_name: Long Flash
|
|
||||||
input_boolean.animate_downstairs_lights:
|
|
||||||
icon: mdi:flash-outline
|
|
||||||
friendly_name: Animate Family Room Lights
|
|
||||||
input_boolean.animate_upstairs_lights:
|
|
||||||
icon: mdi:flash-outline
|
|
||||||
friendly_name: Animate Master Bedroom Lights
|
|
||||||
# hue:
|
|
||||||
# bridges:
|
|
||||||
# - host: !secret philips_hue_ipaddress
|
|
||||||
|
|
||||||
tplink:
|
|
||||||
discovery: false
|
|
||||||
switch:
|
|
||||||
# In-wall switches
|
|
||||||
- host: !secret tplink_kids_bedroom
|
|
||||||
- host: !secret tplink_guest_bedroom_1
|
|
||||||
- host: !secret tplink_guest_bedroom_2
|
|
||||||
- host: !secret tplink_garage
|
|
||||||
- host: !secret tplink_basement_left
|
|
||||||
- host: !secret tplink_basement_right
|
|
||||||
- host: !secret tplink_kitchen
|
|
||||||
- host: !secret tplink_office_room
|
|
||||||
- host: !secret tplink_front_room
|
|
||||||
|
|
||||||
# Smart Outlets
|
|
||||||
- host: !secret tplink_smart_outlet1
|
|
||||||
#name: Downstairs Fragrance Outlet
|
|
||||||
- host: !secret tplink_smart_outlet2
|
|
||||||
#name: Downstairs 3d printer Outlet
|
|
||||||
- host: !secret tplink_smart_outlet3
|
|
||||||
#name: Upstairs Fragrance Outlet
|
|
||||||
- host: !secret tplink_kids_bed_accent_light
|
|
||||||
#name: Kids Bed Accent Light
|
|
||||||
|
|
||||||
wemo:
|
|
||||||
discovery: false
|
|
||||||
static:
|
|
||||||
- !secret wemo_switch_1
|
|
||||||
- !secret wemo_switch_2
|
|
||||||
- !secret wemo_switch_3
|
|
||||||
- !secret wemo_sharp_tv
|
|
||||||
|
|
||||||
input_boolean:
|
|
||||||
animate_upstairs_lights:
|
|
||||||
name: Animate Master Bedroom Lights
|
|
||||||
initial: off
|
|
||||||
animate_downstairs_lights:
|
|
||||||
name: Animate Family Room Lights
|
|
||||||
initial: off
|
|
||||||
long_flash:
|
|
||||||
name: Long Flash Lights
|
|
||||||
initial: off
|
|
||||||
short_flash:
|
|
||||||
name: Long Flash Lights
|
|
||||||
initial: off
|
|
||||||
|
|
||||||
light:
|
|
||||||
- platform: group
|
|
||||||
name: Family Room Lights
|
|
||||||
entities:
|
|
||||||
- light.hue_color_lamp_1
|
|
||||||
- light.hue_color_lamp_2
|
|
||||||
- light.hue_color_lamp_3
|
|
||||||
|
|
||||||
- platform: group
|
|
||||||
name: Master Bedroom Lights
|
|
||||||
entities:
|
|
||||||
- light.master_bedroom_1
|
|
||||||
- light.master_bedroom_2
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# _ _ _
|
|
||||||
# /\ | | | | (_)
|
|
||||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
|
||||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
|
||||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
|
||||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
|
||||||
#
|
|
||||||
###############################################################################
|
|
||||||
|
|
||||||
automation:
|
|
||||||
# Animate Master Bedroom Lights
|
|
||||||
###############################################################################
|
|
||||||
- alias: Animate Master Bedroom Lights
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: time_pattern
|
|
||||||
seconds: "/5"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.animate_upstairs_lights
|
|
||||||
state: "on"
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: group.master_bedroom_lights
|
|
||||||
transition: 5
|
|
||||||
brightness: 255
|
|
||||||
color_temp: 366
|
|
||||||
data_template:
|
|
||||||
rgb_color:
|
|
||||||
[
|
|
||||||
'{{ "{0:d}".format(range(0, 255)|random) }}',
|
|
||||||
'{{ "{0:d}".format(range(0, 255)|random) }}',
|
|
||||||
'{{ "{0:d}".format(range(0, 255)|random) }}',
|
|
||||||
]
|
|
||||||
|
|
||||||
# Restore Master Bedroom Lights
|
|
||||||
###############################################################################
|
|
||||||
- alias: Restore Masterbedroom Lights
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: input_boolean.animate_upstairs_lights
|
|
||||||
to: "off"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: group.master_bedroom_lights
|
|
||||||
transition: 5
|
|
||||||
rgb_color: [224, 175, 102]
|
|
||||||
brightness: 10
|
|
||||||
color_temp: 366
|
|
||||||
|
|
||||||
# Animate Familyroom Lights
|
|
||||||
###############################################################################
|
|
||||||
- alias: Animate Familyroom Lights
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: time_pattern
|
|
||||||
seconds: "/5"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.animate_downstairs_lights
|
|
||||||
state: "on"
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: group.family_room_lights
|
|
||||||
transition: 5
|
|
||||||
brightness: 255
|
|
||||||
color_temp: 366
|
|
||||||
data_template:
|
|
||||||
rgb_color:
|
|
||||||
[
|
|
||||||
'{{ "{0:d}".format(range(0, 255)|random) }}',
|
|
||||||
'{{ "{0:d}".format(range(0, 255)|random) }}',
|
|
||||||
'{{ "{0:d}".format(range(0, 255)|random) }}',
|
|
||||||
]
|
|
||||||
|
|
||||||
# Restore Familyroom Lights
|
|
||||||
###############################################################################
|
|
||||||
- alias: Restore Familyroom Lights
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: input_boolean.animate_downstairs_lights
|
|
||||||
to: "off"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: group.family_room_lights
|
|
||||||
transition: 5
|
|
||||||
rgb_color: [255, 251, 245]
|
|
||||||
brightness: 255
|
|
||||||
color_temp: 162
|
|
||||||
|
|
||||||
# Animate Kitchen Lights ON
|
|
||||||
###############################################################################
|
|
||||||
# - alias: Animate Kitchen Lights ON
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: time_pattern
|
|
||||||
# seconds: '/3'
|
|
||||||
# condition:
|
|
||||||
# - condition: state
|
|
||||||
# entity_id: input_boolean.animate_kitchen_lights
|
|
||||||
# state: 'on'
|
|
||||||
# action:
|
|
||||||
# - service: light.turn_on
|
|
||||||
# entity_id: light.dinette
|
|
||||||
# data_template:
|
|
||||||
# rgb_color: ['{{ (range(0, 255)|random) }}',
|
|
||||||
# '{{ (range(0, 255)|random) }}',
|
|
||||||
# '{{ (range(0, 255)|random) }}']
|
|
||||||
# brightness: 255
|
|
||||||
# transition: '{{ (range(1, 2)|random) }}'
|
|
||||||
|
|
||||||
# Animate Kitchen Lights OFF
|
|
||||||
###############################################################################
|
|
||||||
# - alias: Animate Kitchen Lights OFF
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: input_boolean.animate_kitchen_lights
|
|
||||||
# to: 'off'
|
|
||||||
# action:
|
|
||||||
# - service: light.turn_on
|
|
||||||
# entity_id: light.dinette
|
|
||||||
# data:
|
|
||||||
# rgb_color: [255, 255, 255]
|
|
||||||
# brightness: 255
|
|
||||||
# color_temp: 155
|
|
||||||
|
|
||||||
# Long Flash All Lights
|
|
||||||
###############################################################################
|
|
||||||
- alias: Long Flash All Lights
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: state
|
|
||||||
entity_id: input_boolean.long_flash
|
|
||||||
to: "on"
|
|
||||||
from: "off"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
entity_id:
|
|
||||||
- group.all_lights
|
|
||||||
data:
|
|
||||||
flash: long
|
|
||||||
- service: input_boolean.turn_off
|
|
||||||
entity_id: input_boolean.long_flash
|
|
||||||
|
|
||||||
# Short Flash All Lights
|
|
||||||
###############################################################################
|
|
||||||
- alias: Short Flash All Lights
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: state
|
|
||||||
entity_id: input_boolean.short_flash
|
|
||||||
to: "on"
|
|
||||||
from: "off"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
entity_id:
|
|
||||||
- group.all_lights
|
|
||||||
data:
|
|
||||||
flash: short
|
|
||||||
- service: input_boolean.turn_off
|
|
||||||
entity_id: input_boolean.short_flash
|
|
|
@ -0,0 +1,179 @@
|
||||||
|
##############################################################################
|
||||||
|
# @author : Mahasri Kalavala
|
||||||
|
# @date : 04/15/2017
|
||||||
|
# @package : Lights
|
||||||
|
# @description : Lights, Lights, Lights! All the Lights are here!
|
||||||
|
###############################################################################
|
||||||
|
homeassistant:
|
||||||
|
customize:
|
||||||
|
switch.frontyard:
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
friendly_name: Front Porch Lights
|
||||||
|
emulated_hue_name: Front Yard Lights
|
||||||
|
homebridge_name: Front Yard Lights
|
||||||
|
|
||||||
|
switch.wemoswitch1:
|
||||||
|
icon: mdi:lamp
|
||||||
|
friendly_name: Wemo Outlet
|
||||||
|
emulated_hue_name: Wemo Outlet
|
||||||
|
homebridge_name: Wemo Outlet
|
||||||
|
|
||||||
|
switch.backyard:
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
friendly_name: Backyard Lights
|
||||||
|
emulated_hue_name: Backyard Lights
|
||||||
|
homebridge_name: Backyard Lights
|
||||||
|
|
||||||
|
switch.guest_bedroom:
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
friendly_name: Guest Bedroom 1
|
||||||
|
emulated_hue_name: Guest Bedroom 1
|
||||||
|
homebridge_name: Guest Bedroom 1
|
||||||
|
|
||||||
|
switch.prayer_room:
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
friendly_name: Guest Bedroom 2
|
||||||
|
emulated_hue_name: Guest Bedroom 2
|
||||||
|
homebridge_name: Guest Bedroom 2
|
||||||
|
|
||||||
|
switch.kids_bed_accent:
|
||||||
|
friendly_name: Hasika's Bed Accent Lights
|
||||||
|
assumed_state: false
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.front_room:
|
||||||
|
friendly_name: Front Room Light
|
||||||
|
assumed_state: false
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.basement_left:
|
||||||
|
friendly_name: Basement Theater Lights
|
||||||
|
assumed_state: false
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.basement_right:
|
||||||
|
friendly_name: Basement Right Side Lights
|
||||||
|
assumed_state: false
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.kitchen:
|
||||||
|
friendly_name: Kitchen Light
|
||||||
|
assumed_state: false
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.office_room:
|
||||||
|
friendly_name: Office Room Lights
|
||||||
|
assumed_state: false
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.kids_bedroom:
|
||||||
|
friendly_name: Kids Bedroom
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
switch.garage:
|
||||||
|
friendly_name: Garage Lights
|
||||||
|
icon: mdi:lightbulb
|
||||||
|
|
||||||
|
light.hue_color_lamp_1:
|
||||||
|
friendly_name: Family Room Light 1
|
||||||
|
color_set: false
|
||||||
|
light.hue_color_lamp_2:
|
||||||
|
friendly_name: Family Room Light 2
|
||||||
|
color_set: false
|
||||||
|
light.hue_color_lamp_3:
|
||||||
|
friendly_name: Family Room Light 3
|
||||||
|
color_set: false
|
||||||
|
input_boolean.short_flash:
|
||||||
|
icon: mdi:flash
|
||||||
|
friendly_name: Short Flash
|
||||||
|
input_boolean.long_flash:
|
||||||
|
icon: mdi:flash
|
||||||
|
friendly_name: Long Flash
|
||||||
|
input_boolean.animate_downstairs_lights:
|
||||||
|
icon: mdi:flash-outline
|
||||||
|
friendly_name: Animate Family Room Lights
|
||||||
|
input_boolean.animate_upstairs_lights:
|
||||||
|
icon: mdi:flash-outline
|
||||||
|
friendly_name: Animate Master Bedroom Lights
|
||||||
|
|
||||||
|
tplink:
|
||||||
|
discovery: false
|
||||||
|
switch:
|
||||||
|
# In-wall switches
|
||||||
|
- host: !secret tplink_kids_bedroom
|
||||||
|
- host: !secret tplink_guest_bedroom_1
|
||||||
|
- host: !secret tplink_guest_bedroom_2
|
||||||
|
- host: !secret tplink_garage
|
||||||
|
- host: !secret tplink_garage_shoplights
|
||||||
|
- host: !secret tplink_basement_left
|
||||||
|
- host: !secret tplink_basement_right
|
||||||
|
- host: !secret tplink_kitchen
|
||||||
|
- host: !secret tplink_office_room
|
||||||
|
- host: !secret tplink_front_room
|
||||||
|
# Smart Outlets
|
||||||
|
- host: !secret tplink_smart_outlet1
|
||||||
|
#name: Downstairs Fragrance Outlet
|
||||||
|
- host: !secret tplink_smart_outlet2
|
||||||
|
#name: Downstairs 3d printer Outlet
|
||||||
|
- host: !secret tplink_smart_outlet3
|
||||||
|
#name: Upstairs Fragrance Outlet
|
||||||
|
- host: !secret tplink_kids_bed_accent_light
|
||||||
|
#name: Kids Bed Accent Light
|
||||||
|
dimmer:
|
||||||
|
- host: !secret tplink_bathroom_lights
|
||||||
|
strip:
|
||||||
|
- host: !secret tplink_smart_strip
|
||||||
|
|
||||||
|
wemo:
|
||||||
|
discovery: false
|
||||||
|
static:
|
||||||
|
- !secret wemo_switch_1
|
||||||
|
- !secret wemo_switch_2
|
||||||
|
- !secret wemo_switch_3
|
||||||
|
- !secret wemo_sharp_tv
|
||||||
|
|
||||||
|
input_boolean:
|
||||||
|
animate_upstairs_lights:
|
||||||
|
name: Animate Master Bedroom Lights
|
||||||
|
initial: off
|
||||||
|
animate_downstairs_lights:
|
||||||
|
name: Animate Family Room Lights
|
||||||
|
initial: off
|
||||||
|
long_flash:
|
||||||
|
name: Long Flash Lights
|
||||||
|
initial: off
|
||||||
|
short_flash:
|
||||||
|
name: Long Flash Lights
|
||||||
|
initial: off
|
||||||
|
|
||||||
|
light:
|
||||||
|
- platform: group
|
||||||
|
name: Family Room Lights
|
||||||
|
entities:
|
||||||
|
- light.hue_color_lamp_1
|
||||||
|
- light.hue_color_lamp_2
|
||||||
|
- light.hue_color_lamp_3
|
||||||
|
|
||||||
|
- platform: group
|
||||||
|
name: Master Bedroom Lights
|
||||||
|
entities:
|
||||||
|
- light.master_bedroom_1
|
||||||
|
- light.master_bedroom_2
|
||||||
|
|
||||||
|
switch:
|
||||||
|
- platform: rest
|
||||||
|
resource: "http://localhost:8126/container/mqtt/"
|
||||||
|
name: MQTT
|
||||||
|
body_on: '{"state": "start"}'
|
||||||
|
body_off: '{"state": "stop"}'
|
||||||
|
is_on_template: '{{ value_json is not none and value_json.state == "running" }}'
|
||||||
|
verify_ssl: true
|
||||||
|
|
||||||
|
- platform: rest
|
||||||
|
resource: "http://localhost:8126/container/home-assistant/"
|
||||||
|
name: Home Assistant
|
||||||
|
body_on: '{"state": "unpause"}'
|
||||||
|
body_off: '{"state": "pause"}'
|
||||||
|
is_on_template: '{{ value_json is not none and value_json.state == "running" }}'
|
||||||
|
verify_ssl: true
|
||||||
|
|
||||||
|
- platform: rest
|
||||||
|
resource: "http://localhost:8126/container/camera_streamer/"
|
||||||
|
name: Camera Streamer
|
||||||
|
body_on: '{"state": "unpause"}'
|
||||||
|
body_off: '{"state": "pause"}'
|
||||||
|
is_on_template: '{{ value_json is not none and value_json.state == "running" }}'
|
||||||
|
verify_ssl: true
|
|
@ -1,100 +0,0 @@
|
||||||
# ###############################################################################
|
|
||||||
# # @Description : Logger Package to set log level on the fly at runtime
|
|
||||||
# ###############################################################################
|
|
||||||
|
|
||||||
# homeassistant:
|
|
||||||
# customize:
|
|
||||||
# sensor.current_log_level:
|
|
||||||
# friendly_name: Current Log Level
|
|
||||||
# hidden: true
|
|
||||||
|
|
||||||
# logger:
|
|
||||||
# default: warning
|
|
||||||
# logs:
|
|
||||||
# gsp: critical
|
|
||||||
# aiohttp.server: critical
|
|
||||||
# simplipy.system: critical
|
|
||||||
# homeassistant.components.light: critical
|
|
||||||
# openzwave: debug
|
|
||||||
# pywemo.ssdp: error
|
|
||||||
# libopenzwave: error
|
|
||||||
# netdisco.ssdp: error
|
|
||||||
# homeassistant.core: error
|
|
||||||
# homeassistant.setup: error
|
|
||||||
# homeassistant.loader: error
|
|
||||||
# homeassistant.components.api: error
|
|
||||||
# homeassistant.helpers.script: error
|
|
||||||
# homeassistant.components.mqtt: error
|
|
||||||
# homeassistant.components.http: error
|
|
||||||
# homeassistant.helpers.entity: error
|
|
||||||
# homeassistant.components.zwave: error
|
|
||||||
# homeassistant.components.sensor: error
|
|
||||||
# homeassistant.helpers.condition: error
|
|
||||||
# homeassistant.components.recorder: error
|
|
||||||
# homeassistant.components.discovery: error
|
|
||||||
# homeassistant.components.automation: error
|
|
||||||
# homeassistant.components.light.lifx: error
|
|
||||||
# homeassistant.components.emulated_hue: error
|
|
||||||
# homeassistant.components.media_player: error
|
|
||||||
# homeassistant.components.device_tracker: error
|
|
||||||
# custom_components.sensor.life360: error
|
|
||||||
# custom_components.sensor.command_line: error
|
|
||||||
# custom_components.media_player.sharptv: error
|
|
||||||
|
|
||||||
# ###############################################################################
|
|
||||||
# # Logger level
|
|
||||||
# input_select:
|
|
||||||
# log_level:
|
|
||||||
# name: Log Level
|
|
||||||
# options:
|
|
||||||
# - critical
|
|
||||||
# - fatal
|
|
||||||
# - error
|
|
||||||
# - warning
|
|
||||||
# - warn
|
|
||||||
# - info
|
|
||||||
# - debug
|
|
||||||
# - notset
|
|
||||||
# initial: warning
|
|
||||||
|
|
||||||
# sensor:
|
|
||||||
# - platform: mqtt
|
|
||||||
# state_topic: '/homeassistant/log_level'
|
|
||||||
# name: "Current Log Level"
|
|
||||||
# value_template: "{{ value }}"
|
|
||||||
|
|
||||||
# automation:
|
|
||||||
# ###############################################################################
|
|
||||||
# # Sets Logging Level
|
|
||||||
# ###############################################################################
|
|
||||||
# - alias: Log Level
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: input_select.log_level
|
|
||||||
# action:
|
|
||||||
# - service: logger.set_level
|
|
||||||
# data_template:
|
|
||||||
# homeassistant.components: "{{ trigger.to_state.state }}"
|
|
||||||
# - service: mqtt.publish
|
|
||||||
# data_template:
|
|
||||||
# topic: '/homeassistant/log_level'
|
|
||||||
# payload: '{{ trigger.to_state.state }}'
|
|
||||||
# retain: true
|
|
||||||
|
|
||||||
# ###############################################################################
|
|
||||||
# # Restore Log Level
|
|
||||||
# ###############################################################################
|
|
||||||
# - alias: Restore Log Level on Startup
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# platform: homeassistant
|
|
||||||
# event: start
|
|
||||||
# action:
|
|
||||||
# - delay:
|
|
||||||
# minutes: 0
|
|
||||||
# seconds: 15
|
|
||||||
# - service: input_select.select_option
|
|
||||||
# data_template:
|
|
||||||
# entity_id: input_select.log_level
|
|
||||||
# option: '{{ states('sensor.current_log_level') | default("warning") }}'
|
|
|
@ -58,6 +58,8 @@ homeassistant:
|
||||||
unit_of_measurement: "count"
|
unit_of_measurement: "count"
|
||||||
input_label.door_window_sensor_158d00040ad8fc:
|
input_label.door_window_sensor_158d00040ad8fc:
|
||||||
unit_of_measurement: "count"
|
unit_of_measurement: "count"
|
||||||
|
input_label.door_window_sensor_158d0004880f30:
|
||||||
|
unit_of_measurement: "count"
|
||||||
input_label.door_window_sensor_158d000424a6d6:
|
input_label.door_window_sensor_158d000424a6d6:
|
||||||
unit_of_measurement: "count"
|
unit_of_measurement: "count"
|
||||||
|
|
||||||
|
@ -68,6 +70,9 @@ input_label:
|
||||||
door_window_sensor_158d00040ad8fc:
|
door_window_sensor_158d00040ad8fc:
|
||||||
name: Back Door
|
name: Back Door
|
||||||
icon: mdi:run-fast
|
icon: mdi:run-fast
|
||||||
|
door_window_sensor_158d0004880f30:
|
||||||
|
name: Garage Entry Door
|
||||||
|
icon: mdi:run-fast
|
||||||
basement_door_sensor_sensor:
|
basement_door_sensor_sensor:
|
||||||
name: Basement Door
|
name: Basement Door
|
||||||
icon: mdi:run-fast
|
icon: mdi:run-fast
|
||||||
|
@ -152,6 +157,7 @@ automation:
|
||||||
entity_id:
|
entity_id:
|
||||||
- binary_sensor.door_window_sensor_158d000424a6d6
|
- binary_sensor.door_window_sensor_158d000424a6d6
|
||||||
- binary_sensor.door_window_sensor_158d00040ad8fc
|
- binary_sensor.door_window_sensor_158d00040ad8fc
|
||||||
|
- binary_sensor.door_window_sensor_158d0004880f30 # garage entry door
|
||||||
- binary_sensor.basement_door_sensor_sensor
|
- binary_sensor.basement_door_sensor_sensor
|
||||||
- binary_sensor.downstairs_multi_sensor_sensor
|
- binary_sensor.downstairs_multi_sensor_sensor
|
||||||
- binary_sensor.front_room_multi_sensor_sensor
|
- binary_sensor.front_room_multi_sensor_sensor
|
||||||
|
@ -215,3 +221,4 @@ automation:
|
||||||
- input_label.motion_sensor_158d000272bfd7
|
- input_label.motion_sensor_158d000272bfd7
|
||||||
- input_label.door_window_sensor_158d000424a6d6
|
- input_label.door_window_sensor_158d000424a6d6
|
||||||
- input_label.door_window_sensor_158d00040ad8fc
|
- input_label.door_window_sensor_158d00040ad8fc
|
||||||
|
- input_label.door_window_sensor_158d0004880f30
|
||||||
|
|
|
@ -20,6 +20,8 @@ homeassistant:
|
||||||
hidden: true
|
hidden: true
|
||||||
timer.timer_masterbedroom:
|
timer.timer_masterbedroom:
|
||||||
hidden: true
|
hidden: true
|
||||||
|
timer.timer_masterbathroom:
|
||||||
|
hidden: true
|
||||||
timer.timer_officeroom:
|
timer.timer_officeroom:
|
||||||
hidden: true
|
hidden: true
|
||||||
|
|
||||||
|
@ -34,6 +36,8 @@ timer:
|
||||||
duration: "00:05:00"
|
duration: "00:05:00"
|
||||||
timer_masterbedroom:
|
timer_masterbedroom:
|
||||||
duration: "00:05:00"
|
duration: "00:05:00"
|
||||||
|
timer_masterbathroom:
|
||||||
|
duration: "00:05:00"
|
||||||
timer_officeroom:
|
timer_officeroom:
|
||||||
duration: "00:05:00"
|
duration: "00:05:00"
|
||||||
|
|
||||||
|
@ -48,6 +52,42 @@ timer:
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
automation:
|
automation:
|
||||||
|
# Master Bathroom:
|
||||||
|
# Motion Detected - Turn ON the light and extend timer
|
||||||
|
###############################################################################
|
||||||
|
- alias: Master Bathroom Motion & Timer
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
- platform: state
|
||||||
|
entity_id: binary_sensor.motion_sensor_158d000464c25a
|
||||||
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service: timer.start
|
||||||
|
entity_id: timer.timer_masterbathroom
|
||||||
|
- service: light.turn_on
|
||||||
|
entity_id: light.master_bathroom_lights
|
||||||
|
|
||||||
|
- alias: Master Bathroom Timer Elapsed
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
- platform: event
|
||||||
|
event_type: timer.finished
|
||||||
|
event_data:
|
||||||
|
entity_id: timer.timer_masterbathroom
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service_template: >
|
||||||
|
{{ 'light.turn_off' if states('binary_sensor.motion_sensor_158d000464c25a') != 'on' else 'timer.start' }}
|
||||||
|
data:
|
||||||
|
entity_id: "{{ 'light.master_bathroom_lights' if states('binary_sensor.motion_sensor_158d000464c25a') != 'on' else 'timer.timer_masterbathroom' }}"
|
||||||
|
|
||||||
# Office Room:
|
# Office Room:
|
||||||
# Motion Detected - Turn ON the light and extend timer
|
# Motion Detected - Turn ON the light and extend timer
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -57,13 +97,15 @@ automation:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id: binary_sensor.motion_sensor_158d000272bfd7
|
entity_id: binary_sensor.motion_sensor_158d000272bfd7
|
||||||
to: "on"
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: timer.start
|
- service: timer.start
|
||||||
entity_id: timer.timer_officeroom
|
entity_id: timer.timer_officeroom
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.office_room
|
entity_id: switch.office_room
|
||||||
- condition: template
|
|
||||||
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
|
||||||
|
|
||||||
- alias: Officeroom Timer Elapsed
|
- alias: Officeroom Timer Elapsed
|
||||||
initial_state: true
|
initial_state: true
|
||||||
|
@ -72,9 +114,15 @@ automation:
|
||||||
event_type: timer.finished
|
event_type: timer.finished
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: timer.timer_officeroom
|
entity_id: timer.timer_officeroom
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_off
|
- service_template: >
|
||||||
entity_id: switch.office_room
|
{{ 'switch.turn_off' if states('binary_sensor.motion_sensor_158d000272bfd7') != 'on' else 'timer.start' }}
|
||||||
|
data:
|
||||||
|
entity_id: "{{ 'switch.office_room' if states('binary_sensor.motion_sensor_158d000272bfd7') != 'on' else 'timer.timer_officeroom' }}"
|
||||||
|
|
||||||
# # Front Room:
|
# # Front Room:
|
||||||
# # Motion Detected - Turn ON the light and extend timer
|
# # Motion Detected - Turn ON the light and extend timer
|
||||||
|
@ -86,6 +134,10 @@ automation:
|
||||||
entity_id: binary_sensor.motion_sensor_158d00016db6d2
|
entity_id: binary_sensor.motion_sensor_158d00016db6d2
|
||||||
from: "off"
|
from: "off"
|
||||||
to: "on"
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: timer.start
|
- service: timer.start
|
||||||
entity_id: timer.timer_frontroom
|
entity_id: timer.timer_frontroom
|
||||||
|
@ -111,6 +163,9 @@ automation:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: sun.sun
|
entity_id: sun.sun
|
||||||
state: "below_horizon"
|
state: "below_horizon"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_on
|
- service: switch.turn_on
|
||||||
entity_id: switch.kitchen
|
entity_id: switch.kitchen
|
||||||
|
@ -130,6 +185,9 @@ automation:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: sun.sun
|
entity_id: sun.sun
|
||||||
state: "below_horizon"
|
state: "below_horizon"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service_template: >
|
- service_template: >
|
||||||
{% if now().hour|int >= states('sensor.bedtime_hour') |int and
|
{% if now().hour|int >= states('sensor.bedtime_hour') |int and
|
||||||
|
@ -147,7 +205,7 @@ automation:
|
||||||
trigger:
|
trigger:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id:
|
entity_id:
|
||||||
- binary_sensor.tv_multi_sensor_sensor
|
# - binary_sensor.tv_multi_sensor_sensor
|
||||||
- binary_sensor.motion_sensor_158d0001a25041
|
- binary_sensor.motion_sensor_158d0001a25041
|
||||||
from: "off"
|
from: "off"
|
||||||
to: "on"
|
to: "on"
|
||||||
|
@ -157,6 +215,9 @@ automation:
|
||||||
state: "below_horizon"
|
state: "below_horizon"
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ states('input_boolean.movie_time') != 'on' }}"
|
value_template: "{{ states('input_boolean.movie_time') != 'on' }}"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_on
|
- service: light.turn_on
|
||||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||||
|
@ -181,6 +242,10 @@ automation:
|
||||||
entity_id: timer.timer_familyroom
|
entity_id: timer.timer_familyroom
|
||||||
from: "active"
|
from: "active"
|
||||||
to: "idle"
|
to: "idle"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_off
|
- service: light.turn_off
|
||||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||||
|
@ -201,6 +266,9 @@ automation:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: sun.sun
|
entity_id: sun.sun
|
||||||
state: "below_horizon"
|
state: "below_horizon"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_on
|
- service: light.turn_on
|
||||||
data:
|
data:
|
||||||
|
@ -225,34 +293,16 @@ automation:
|
||||||
entity_id: timer.timer_masterbedroom
|
entity_id: timer.timer_masterbedroom
|
||||||
from: "active"
|
from: "active"
|
||||||
to: "idle"
|
to: "idle"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_off
|
- service: light.turn_off
|
||||||
entity_id: light.master_bedroom_1
|
entity_id: light.master_bedroom_1
|
||||||
- service: light.turn_off
|
- service: light.turn_off
|
||||||
entity_id: light.master_bedroom_2
|
entity_id: light.master_bedroom_2
|
||||||
|
|
||||||
# # Garage:
|
|
||||||
# # Motion Detected - Turn ON the light and extend timer
|
|
||||||
# #
|
|
||||||
# # Added a condition - if the lights were just turn off in the last 30 seconds,
|
|
||||||
# # do not turn ON the lights again
|
|
||||||
# ###############################################################################
|
|
||||||
# - alias: Garage Motion & Timer
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: binary_sensor.garage_motion
|
|
||||||
# from: "off"
|
|
||||||
# to: "on"
|
|
||||||
# condition:
|
|
||||||
# - condition: template
|
|
||||||
# value_template: "{{ states('input_boolean.working_in_garage') | lower == 'on' }}"
|
|
||||||
# - condition: template
|
|
||||||
# value_template: "{{ (as_timestamp(now()) - as_timestamp(states.switch.garage.last_updated)) | int > 30 }}"
|
|
||||||
# action:
|
|
||||||
# - service: switch.turn_on
|
|
||||||
# entity_id: switch.garage
|
|
||||||
|
|
||||||
# Start the timer when the lights are ON
|
# Start the timer when the lights are ON
|
||||||
###############################################################################
|
###############################################################################
|
||||||
- alias: Garage Timer Start When Garage Lights ON
|
- alias: Garage Timer Start When Garage Lights ON
|
||||||
|
@ -262,6 +312,10 @@ automation:
|
||||||
entity_id: switch.garage
|
entity_id: switch.garage
|
||||||
from: "off"
|
from: "off"
|
||||||
to: "on"
|
to: "on"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: timer.start
|
- service: timer.start
|
||||||
entity_id: timer.timer_garage
|
entity_id: timer.timer_garage
|
||||||
|
@ -280,6 +334,9 @@ automation:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: input_boolean.working_in_garage
|
entity_id: input_boolean.working_in_garage
|
||||||
state: "off"
|
state: "off"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_off
|
- service: switch.turn_off
|
||||||
entity_id: switch.garage
|
entity_id: switch.garage
|
||||||
|
|
|
@ -63,6 +63,22 @@ sensor:
|
||||||
- drive_smart_status
|
- drive_smart_status
|
||||||
- drive_temp
|
- drive_temp
|
||||||
|
|
||||||
|
- platform: qnap
|
||||||
|
host: !secret qnap_hostname2
|
||||||
|
username: !secret qnap_username
|
||||||
|
password: !secret qnap_password
|
||||||
|
monitored_conditions:
|
||||||
|
- status
|
||||||
|
- cpu_usage
|
||||||
|
- memory_percent_used
|
||||||
|
- network_tx
|
||||||
|
- volume_percentage_used
|
||||||
|
- system_temp
|
||||||
|
- cpu_temp
|
||||||
|
- drive_smart_status
|
||||||
|
- drive_temp
|
||||||
|
|
||||||
|
|
||||||
# The following sensors are required, as the automations with trigger platform `numeric_state`,
|
# The following sensors are required, as the automations with trigger platform `numeric_state`,
|
||||||
# above a certain value using `above: x` AND `for: 00:05:00` combination is not supported.
|
# above a certain value using `above: x` AND `for: 00:05:00` combination is not supported.
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
# # ##############################################################################
|
|
||||||
# # @author : Mahasri Kalavala
|
|
||||||
# # @date : 01/05/2018
|
|
||||||
# # @package : Random Quote at Startup
|
|
||||||
# # @description : Daily quotes
|
|
||||||
# # ##############################################################################
|
|
||||||
# homeassistant:
|
|
||||||
# customize:
|
|
||||||
# sensor.quote_of_the_day:
|
|
||||||
# hidden: true
|
|
||||||
|
|
||||||
# sensor:
|
|
||||||
# - platform: rest
|
|
||||||
# name: quote_of_the_day
|
|
||||||
# resource: http://api.forismatic.com/api/1.0/?method=getQuote&format=json&lang=en
|
|
||||||
# value_template: '{{ value_json.quoteText }} - By {{ value_json.quoteAuthor }}'
|
|
||||||
# scan_interval: 86400
|
|
||||||
|
|
||||||
# automation:
|
|
||||||
|
|
||||||
# - alias: Quote At Startup
|
|
||||||
# initial_state: true
|
|
||||||
# trigger:
|
|
||||||
# - platform: homeassistant
|
|
||||||
# event: start
|
|
||||||
# action:
|
|
||||||
# - delay:
|
|
||||||
# seconds: 15
|
|
||||||
# - service: persistent_notification.create
|
|
||||||
# data:
|
|
||||||
# title: 'Quote:'
|
|
||||||
# message: '{{ states('sensor.quote_of_the_day') }}'
|
|
|
@ -88,22 +88,6 @@ script:
|
||||||
data:
|
data:
|
||||||
message: >
|
message: >
|
||||||
No one is at home. Cameras rolling, Indoor lights OFF, Thermostat is set to 'away' and your home is secured!
|
No one is at home. Cameras rolling, Indoor lights OFF, Thermostat is set to 'away' and your home is secured!
|
||||||
- service: camera.snapshot
|
|
||||||
data_template:
|
|
||||||
entity_id: "camera.kitchen_camera"
|
|
||||||
filename: "/home/homeassistant/.homeassistant/www/downloads/camera/kitchen/kitchen_away.jpg"
|
|
||||||
- service: camera.snapshot
|
|
||||||
data_template:
|
|
||||||
entity_id: "camera.frontroom_camera"
|
|
||||||
filename: "/home/homeassistant/.homeassistant/www/downloads/camera/frontroom/frontroom_away.jpg"
|
|
||||||
- service: notify.notify_smtp
|
|
||||||
data_template:
|
|
||||||
title: 'Indoor Pictures {{ now().strftime("%d %h %Y, %I:%M:%S %p") }}'
|
|
||||||
message: "No one seem to be home at the moment... Please see the images and make sure everything is okay."
|
|
||||||
data:
|
|
||||||
images:
|
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/kitchen/kitchen_away.jpg"
|
|
||||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/frontroom/frontroom_away.jpg"
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# The following script runs when no one is home. It excludes some lights
|
# The following script runs when no one is home. It excludes some lights
|
||||||
|
@ -113,26 +97,32 @@ script:
|
||||||
sequence:
|
sequence:
|
||||||
- service: light.turn_off
|
- service: light.turn_off
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: >
|
entity_id:
|
||||||
{%- for state in states.light if state.entity_id != 'light.gateway_light_34ce008ad65d' -%}
|
- light.family_room_lights
|
||||||
{{- "," if not loop.first-}}{{ state.entity_id }}{{-endif-}}
|
- light.hue_color_lamp_1
|
||||||
{%- endfor -%}
|
- light.hue_color_lamp_2
|
||||||
|
- light.hue_color_lamp_3
|
||||||
|
- light.master_bedroom_1
|
||||||
|
- light.master_bedroom_2
|
||||||
|
- light.master_bedroom_lights
|
||||||
|
|
||||||
- service: switch.turn_off
|
- service: switch.turn_off
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: >
|
entity_id:
|
||||||
{%- for state in states.switch if
|
- switch.basement_left
|
||||||
state.entity_id != 'switch.3d_printer' and
|
- switch.basement_right
|
||||||
state.entity_id != 'switch.tesla_model_3_charger_switch' and
|
- switch.downstairs_fragrance
|
||||||
state.entity_id != 'switch.tesla_model_3_maxrange_switch' and
|
- switch.front_room
|
||||||
state.entity_id != 'switch.tesla_model_3_update_switch' and
|
- switch.garage
|
||||||
state.entity_id != 'switch.mahasri_tesla_sentry_mode_switch' and
|
- switch.garage_shop_lights
|
||||||
state.entity_id != 'switch.wemoswitch1' and
|
- switch.guest_bedroom
|
||||||
state.entity_id != 'switch.wallmote_switch' and
|
- switch.kids_bed_accent
|
||||||
state.entity_id != 'switch.wemobackyardlightswitch' and
|
- switch.kids_bedroom
|
||||||
state.entity_id != 'switch.frontyard_light' and
|
- switch.kitchen
|
||||||
not 'ecolink' in state.entity_id -%}
|
- switch.office_room
|
||||||
{{- "," if not loop.first-}}{{ state.entity_id }}{{-endif-}}
|
- switch.prayer_room
|
||||||
{%- endfor -%}
|
- switch.upstairs_fragrance
|
||||||
|
- switch.officeroom_accent_lights
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# _____ ____ _
|
# _____ ____ _
|
||||||
|
|
|
@ -148,42 +148,34 @@ input_boolean:
|
||||||
|
|
||||||
movie_time:
|
movie_time:
|
||||||
name: "Movie Time"
|
name: "Movie Time"
|
||||||
initial: off
|
|
||||||
icon: mdi:movie-roll
|
icon: mdi:movie-roll
|
||||||
|
|
||||||
stream_camera2chromecast:
|
stream_camera2chromecast:
|
||||||
name: Stream Cameras to Chromecast
|
name: Stream Cameras to Chromecast
|
||||||
icon: mdi:cctv
|
icon: mdi:cctv
|
||||||
initial: on
|
|
||||||
|
|
||||||
home_security:
|
home_security:
|
||||||
name: Home Security System
|
name: Home Security System
|
||||||
initial: off
|
|
||||||
icon: mdi:verified
|
icon: mdi:verified
|
||||||
|
|
||||||
home_assistant_status:
|
home_assistant_status:
|
||||||
name: Home Status
|
name: Home Status
|
||||||
initial: off
|
|
||||||
icon: mdi:home-assistant
|
icon: mdi:home-assistant
|
||||||
|
|
||||||
working_in_garage:
|
working_in_garage:
|
||||||
name: Working in Garage
|
name: Working in Garage
|
||||||
initial: off
|
|
||||||
icon: mdi:worker
|
icon: mdi:worker
|
||||||
|
|
||||||
working_in_office_room:
|
working_in_office_room:
|
||||||
name: Working in Office Room
|
name: Working in Office Room
|
||||||
initial: off
|
|
||||||
icon: mdi:worker
|
icon: mdi:worker
|
||||||
|
|
||||||
hourly_report:
|
hourly_report:
|
||||||
name: Hourly Report
|
name: Hourly Report
|
||||||
initial: on
|
|
||||||
icon: mdi:file-chart
|
icon: mdi:file-chart
|
||||||
|
|
||||||
nightly_report:
|
nightly_report:
|
||||||
name: Nightly Report
|
name: Nightly Report
|
||||||
initial: on
|
|
||||||
icon: mdi:file-chart
|
icon: mdi:file-chart
|
||||||
|
|
||||||
notify_camera_alerts:
|
notify_camera_alerts:
|
||||||
|
@ -192,32 +184,22 @@ input_boolean:
|
||||||
|
|
||||||
trash_reminders:
|
trash_reminders:
|
||||||
name: Remind Trash Notifications
|
name: Remind Trash Notifications
|
||||||
initial: on
|
|
||||||
icon: mdi:recycle
|
icon: mdi:recycle
|
||||||
|
|
||||||
enjoyable_weather_reminders:
|
enjoyable_weather_reminders:
|
||||||
name: Remind me to enjoy Good Weather
|
name: Remind me to enjoy Good Weather
|
||||||
initial: on
|
|
||||||
icon: mdi:weather-sunny
|
icon: mdi:weather-sunny
|
||||||
|
|
||||||
security_system_alerts:
|
security_system_alerts:
|
||||||
name: Notify Security System Status Change
|
name: Notify Security System Status Change
|
||||||
initial: on
|
|
||||||
icon: mdi:verified
|
icon: mdi:verified
|
||||||
|
|
||||||
zone_alerts:
|
zone_alerts:
|
||||||
name: Zone Alerts
|
name: Zone Alerts
|
||||||
initial: on
|
|
||||||
icon: mdi:map-marker
|
icon: mdi:map-marker
|
||||||
|
|
||||||
alarm_clock:
|
|
||||||
name: Alarm Clock
|
|
||||||
initial: on
|
|
||||||
icon: mdi:calendar-check
|
|
||||||
|
|
||||||
battery_notifications:
|
battery_notifications:
|
||||||
name: Battery Notifications
|
name: Battery Notifications
|
||||||
initial: on
|
|
||||||
icon: mdi:battery
|
icon: mdi:battery
|
||||||
|
|
||||||
sharp_tv:
|
sharp_tv:
|
||||||
|
@ -233,16 +215,13 @@ input_boolean:
|
||||||
light_automations:
|
light_automations:
|
||||||
name: Light Automations
|
name: Light Automations
|
||||||
icon: mdi:lightbulb-on
|
icon: mdi:lightbulb-on
|
||||||
initial: on
|
|
||||||
|
|
||||||
text_alerts:
|
text_alerts:
|
||||||
name: Text Alerts
|
name: Text Alerts
|
||||||
initial: on
|
|
||||||
icon: mdi:map-marker
|
icon: mdi:map-marker
|
||||||
|
|
||||||
garage_door_notifications:
|
garage_door_notifications:
|
||||||
name: Garage Door Notifications
|
name: Garage Door Notifications
|
||||||
initial: on
|
|
||||||
icon: mdi:garage
|
icon: mdi:garage
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
|
@ -1089,3 +1089,12 @@
|
||||||
# data_template:
|
# data_template:
|
||||||
# entity_id: "input_label.file_2"
|
# entity_id: "input_label.file_2"
|
||||||
# value: "/tmp/{{- trigger.entity_id.split('.')[1] -}}_{{- states.input_boolean.dummy.last_updated.strftime('%Y%m%d-%H%M%S') -}}.mp4"
|
# value: "/tmp/{{- trigger.entity_id.split('.')[1] -}}_{{- states.input_boolean.dummy.last_updated.strftime('%Y%m%d-%H%M%S') -}}.mp4"
|
||||||
|
|
||||||
|
|
||||||
|
# {% for x in states if 'sensor.illumination_' in x.entity_id %}
|
||||||
|
# {{ x.name}} - {{ x.attributes.battery_level }}
|
||||||
|
# {%- endfor %}
|
||||||
|
|
||||||
|
# {% for x in states if 'sensor.battery_' in x.entity_id %}
|
||||||
|
# {{ x.name}} - {{ x.state }}
|
||||||
|
# {%- endfor %}
|
|
@ -29,6 +29,27 @@ binary_sensor:
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
automation:
|
automation:
|
||||||
|
# Restore Familyroom Lights
|
||||||
|
###############################################################################
|
||||||
|
- alias: Restore Familyroom Lights
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: input_boolean.animate_downstairs_lights
|
||||||
|
to: "off"
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
|
action:
|
||||||
|
- service: light.turn_on
|
||||||
|
data:
|
||||||
|
entity_id: group.family_room_lights
|
||||||
|
transition: 5
|
||||||
|
rgb_color: [255, 251, 245]
|
||||||
|
brightness: 255
|
||||||
|
color_temp: 162
|
||||||
|
|
||||||
# Dim Family Room Lights When TV is Turned ON
|
# Dim Family Room Lights When TV is Turned ON
|
||||||
###############################################################################
|
###############################################################################
|
||||||
- alias: TV Dim Indoor Lights when TV is ON
|
- alias: TV Dim Indoor Lights when TV is ON
|
||||||
|
@ -61,77 +82,6 @@ automation:
|
||||||
entity_id: light.hue_color_lamp_3
|
entity_id: light.hue_color_lamp_3
|
||||||
brightness: 5
|
brightness: 5
|
||||||
color_temp: 154
|
color_temp: 154
|
||||||
- service: mqtt.publish
|
|
||||||
data:
|
|
||||||
topic: /home/tv/backlight
|
|
||||||
payload: "on"
|
|
||||||
retain: true
|
|
||||||
|
|
||||||
# Restore Family Room Lights to TV mode
|
|
||||||
###############################################################################
|
|
||||||
- alias: TV Restore Family Room Lights To TV Mode
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: state
|
|
||||||
entity_id: group.family_room_lights
|
|
||||||
from: "off"
|
|
||||||
to: "on"
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: binary_sensor.sharp_tv
|
|
||||||
state: "on"
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.light_automations
|
|
||||||
state: "on"
|
|
||||||
action:
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: light.hue_color_lamp_1
|
|
||||||
brightness: 5
|
|
||||||
color_temp: 154
|
|
||||||
transition: 5
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: light.hue_color_lamp_2
|
|
||||||
brightness: 5
|
|
||||||
color_temp: 154
|
|
||||||
transition: 5
|
|
||||||
- service: light.turn_on
|
|
||||||
data:
|
|
||||||
entity_id: light.hue_color_lamp_3
|
|
||||||
brightness: 5
|
|
||||||
color_temp: 154
|
|
||||||
transition: 5
|
|
||||||
|
|
||||||
# Turn Backlights Off when TV is turned OFF
|
|
||||||
###############################################################################
|
|
||||||
- alias: TV Backlight OFF when TV is OFF
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: binary_sensor.sharp_tv
|
|
||||||
to: "off"
|
|
||||||
action:
|
|
||||||
- service: mqtt.publish
|
|
||||||
data:
|
|
||||||
topic: /home/tv/backlight
|
|
||||||
payload: "off"
|
|
||||||
retain: true
|
|
||||||
|
|
||||||
# Turn TV backlights when TV is turned ON
|
|
||||||
###############################################################################
|
|
||||||
- alias: TV Backlight is ON when TV is ON
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
platform: state
|
|
||||||
entity_id: binary_sensor.sharp_tv
|
|
||||||
to: "on"
|
|
||||||
action:
|
|
||||||
- service: mqtt.publish
|
|
||||||
data:
|
|
||||||
topic: /home/tv/backlight
|
|
||||||
payload: "on"
|
|
||||||
retain: true
|
|
||||||
|
|
||||||
# Turn back Family room lights when TV is switched OFF
|
# Turn back Family room lights when TV is switched OFF
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -167,8 +117,3 @@ automation:
|
||||||
brightness: 255
|
brightness: 255
|
||||||
color_temp: 154
|
color_temp: 154
|
||||||
transition: 5
|
transition: 5
|
||||||
- service: mqtt.publish
|
|
||||||
data:
|
|
||||||
topic: /home/tv/backlight
|
|
||||||
payload: "off"
|
|
||||||
retain: true
|
|
||||||
|
|
|
@ -27,6 +27,10 @@ automation:
|
||||||
to: "on"
|
to: "on"
|
||||||
for:
|
for:
|
||||||
hours: 2
|
hours: 2
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.notify_me
|
- service: script.notify_me
|
||||||
data:
|
data:
|
||||||
|
@ -53,6 +57,9 @@ automation:
|
||||||
state: "off"
|
state: "off"
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ states('input_boolean.garage_door_notifications') == 'on' }}"
|
value_template: "{{ states('input_boolean.garage_door_notifications') == 'on' }}"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.notify_me
|
- service: script.notify_me
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -75,8 +82,8 @@ automation:
|
||||||
trigger:
|
trigger:
|
||||||
- platform: state
|
- platform: state
|
||||||
entity_id:
|
entity_id:
|
||||||
- switch.wemobackyardlightswitch
|
- switch.backyard
|
||||||
- switch.frontyard_light
|
- switch.frontyard
|
||||||
to: "on"
|
to: "on"
|
||||||
for:
|
for:
|
||||||
minutes: 5
|
minutes: 5
|
||||||
|
@ -84,6 +91,9 @@ automation:
|
||||||
- condition: state
|
- condition: state
|
||||||
entity_id: sun.sun
|
entity_id: sun.sun
|
||||||
state: "above_horizon"
|
state: "above_horizon"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.turn_off
|
- service: switch.turn_off
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -103,7 +113,6 @@ automation:
|
||||||
entity_id:
|
entity_id:
|
||||||
- switch.basement_left
|
- switch.basement_left
|
||||||
- switch.basement_right
|
- switch.basement_right
|
||||||
- switch.downstairs_fragrance
|
|
||||||
- switch.front_room
|
- switch.front_room
|
||||||
- switch.guest_bedroom
|
- switch.guest_bedroom
|
||||||
- switch.kids_bed_accent
|
- switch.kids_bed_accent
|
||||||
|
@ -123,6 +132,9 @@ automation:
|
||||||
condition:
|
condition:
|
||||||
- condition: template
|
- condition: template
|
||||||
value_template: "{{ now().hour |int > 22 }}"
|
value_template: "{{ now().hour |int > 22 }}"
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: homeassistant.turn_off
|
- service: homeassistant.turn_off
|
||||||
data_template:
|
data_template:
|
||||||
|
|
|
@ -208,8 +208,30 @@ automation:
|
||||||
{% endif %}
|
{% endif %}
|
||||||
- service: input_boolean.turn_on
|
- service: input_boolean.turn_on
|
||||||
data_template:
|
data_template:
|
||||||
entity_id: >
|
entity_id: >-
|
||||||
{% set windspeed = states.sensor.dark_sky_wind_speed.state | round %}
|
{%- set windspeed = states.sensor.dark_sky_wind_speed.state | round -%}
|
||||||
|
{%- if ( windspeed > 7 and ( windspeed <= 15 ) ) -%}
|
||||||
|
input_boolean.nice_breeze_alert
|
||||||
|
{%- elif ( windspeed > 15 ) and ( windspeed <= 25 ) %}
|
||||||
|
input_boolean.moderate_wind_alert
|
||||||
|
{%- elif ( windspeed > 25 ) and ( windspeed <= 40 ) %}
|
||||||
|
input_boolean.heavy_wind_alert
|
||||||
|
{%- elif ( windspeed > 40 ) and ( windspeed <= 60 ) %}
|
||||||
|
input_boolean.super_heavy_wind_alert
|
||||||
|
{%- elif ( windspeed > 60 ) %}
|
||||||
|
input_boolean.hurricane_wind_alert
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
|
- alias: Set Wind Speed Input Booleans
|
||||||
|
initial_state: true
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: sensor.dark_sky_wind_speed
|
||||||
|
action:
|
||||||
|
- service: input_boolean.turn_on
|
||||||
|
data_template:
|
||||||
|
entity_id: >-
|
||||||
|
{%- set windspeed = states.sensor.dark_sky_wind_speed.state | round -%}
|
||||||
{%- if ( windspeed > 7 and ( windspeed <= 15 ) ) -%}
|
{%- if ( windspeed > 7 and ( windspeed <= 15 ) ) -%}
|
||||||
input_boolean.nice_breeze_alert
|
input_boolean.nice_breeze_alert
|
||||||
{%- elif ( windspeed > 15 ) and ( windspeed <= 25 ) %}
|
{%- elif ( windspeed > 15 ) and ( windspeed <= 25 ) %}
|
||||||
|
|
|
@ -31,6 +31,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d0002794cd6
|
entity_id: binary_sensor.cube_158d0002794cd6
|
||||||
action_type: flip90
|
action_type: flip90
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service_template: light.toggle
|
- service_template: light.toggle
|
||||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||||
|
@ -44,6 +48,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d0002794cd6
|
entity_id: binary_sensor.cube_158d0002794cd6
|
||||||
action_type: flip180
|
action_type: flip180
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_on
|
- service: light.turn_on
|
||||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||||
|
@ -61,6 +69,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d0002794cd6
|
entity_id: binary_sensor.cube_158d0002794cd6
|
||||||
action_type: move
|
action_type: move
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.toggle
|
- service: switch.toggle
|
||||||
entity_id: switch.kitchen
|
entity_id: switch.kitchen
|
||||||
|
@ -74,6 +86,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d0002794cd6
|
entity_id: binary_sensor.cube_158d0002794cd6
|
||||||
action_type: tap_twice
|
action_type: tap_twice
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_on
|
- service: light.turn_on
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -92,13 +108,12 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d0002794cd6
|
entity_id: binary_sensor.cube_158d0002794cd6
|
||||||
action_type: shake_air
|
action_type: shake_air
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.toggle_do_not_disturb
|
- service: script.toggle_do_not_disturb
|
||||||
- service: switch.turn_off
|
|
||||||
entity_id: switch.wemoswitch1
|
|
||||||
- delay: "00:00:02"
|
|
||||||
- service: switch.turn_on
|
|
||||||
entity_id: switch.wemoswitch1
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# ______ _ _____
|
# ______ _ _____
|
||||||
|
@ -117,6 +132,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027c0276
|
entity_id: binary_sensor.cube_158d00027c0276
|
||||||
action_type: flip90
|
action_type: flip90
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service_template: switch.toggle
|
- service_template: switch.toggle
|
||||||
entity_id: switch.front_room
|
entity_id: switch.front_room
|
||||||
|
@ -130,6 +149,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027c0276
|
entity_id: binary_sensor.cube_158d00027c0276
|
||||||
action_type: move
|
action_type: move
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.toggle
|
- service: switch.toggle
|
||||||
entity_id: switch.office_room
|
entity_id: switch.office_room
|
||||||
|
@ -143,6 +166,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027c0276
|
entity_id: binary_sensor.cube_158d00027c0276
|
||||||
action_type: shake_air
|
action_type: shake_air
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.toggle_do_not_disturb
|
- service: script.toggle_do_not_disturb
|
||||||
|
|
||||||
|
@ -163,6 +190,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027cf60d
|
entity_id: binary_sensor.cube_158d00027cf60d
|
||||||
action_type: flip90
|
action_type: flip90
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service_template: switch.toggle
|
- service_template: switch.toggle
|
||||||
entity_id: switch.guest_bedroom
|
entity_id: switch.guest_bedroom
|
||||||
|
@ -176,6 +207,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027cf60d
|
entity_id: binary_sensor.cube_158d00027cf60d
|
||||||
action_type: shake_air
|
action_type: shake_air
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.toggle_do_not_disturb
|
- service: script.toggle_do_not_disturb
|
||||||
|
|
||||||
|
@ -196,6 +231,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027ce15c
|
entity_id: binary_sensor.cube_158d00027ce15c
|
||||||
action_type: flip90
|
action_type: flip90
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service_template: switch.toggle
|
- service_template: switch.toggle
|
||||||
entity_id: switch.kids_bedroom
|
entity_id: switch.kids_bedroom
|
||||||
|
@ -209,6 +248,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d00027ce15c
|
entity_id: binary_sensor.cube_158d00027ce15c
|
||||||
action_type: shake_air
|
action_type: shake_air
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.toggle_do_not_disturb
|
- service: script.toggle_do_not_disturb
|
||||||
|
|
||||||
|
@ -231,6 +274,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000276e3e8
|
entity_id: binary_sensor.cube_158d000276e3e8
|
||||||
action_type: flip90
|
action_type: flip90
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: switch.toggle
|
- service: switch.toggle
|
||||||
entity_id: switch.prayer_room
|
entity_id: switch.prayer_room
|
||||||
|
@ -244,6 +291,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000276e3e8
|
entity_id: binary_sensor.cube_158d000276e3e8
|
||||||
action_type: shake_air
|
action_type: shake_air
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.toggle_do_not_disturb
|
- service: script.toggle_do_not_disturb
|
||||||
|
|
||||||
|
@ -264,6 +315,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000278eb6a
|
entity_id: binary_sensor.cube_158d000278eb6a
|
||||||
action_type: flip90
|
action_type: flip90
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: homeassistant.turn_off
|
- service: homeassistant.turn_off
|
||||||
entity_id: group.downstairs_lights
|
entity_id: group.downstairs_lights
|
||||||
|
@ -279,6 +334,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000278eb6a
|
entity_id: binary_sensor.cube_158d000278eb6a
|
||||||
action_type: flip180
|
action_type: flip180
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.toggle
|
- service: light.toggle
|
||||||
entity_id: light.master_bedroom_1
|
entity_id: light.master_bedroom_1
|
||||||
|
@ -294,6 +353,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000278eb6a
|
entity_id: binary_sensor.cube_158d000278eb6a
|
||||||
action_type: move
|
action_type: move
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_on
|
- service: light.turn_on
|
||||||
entity_id: light.master_bedroom_1
|
entity_id: light.master_bedroom_1
|
||||||
|
@ -309,6 +372,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000278eb6a
|
entity_id: binary_sensor.cube_158d000278eb6a
|
||||||
action_type: tap_twice
|
action_type: tap_twice
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: light.turn_on
|
- service: light.turn_on
|
||||||
data_template:
|
data_template:
|
||||||
|
@ -334,6 +401,10 @@ automation:
|
||||||
event_data:
|
event_data:
|
||||||
entity_id: binary_sensor.cube_158d000278eb6a
|
entity_id: binary_sensor.cube_158d000278eb6a
|
||||||
action_type: shake_air
|
action_type: shake_air
|
||||||
|
condition:
|
||||||
|
- condition: state
|
||||||
|
entity_id: input_boolean.light_automations
|
||||||
|
state: "on"
|
||||||
action:
|
action:
|
||||||
- service: script.toggle_do_not_disturb
|
- service: script.toggle_do_not_disturb
|
||||||
|
|
||||||
|
|
|
@ -1,133 +1,209 @@
|
||||||
###############################################################################
|
# ###############################################################################
|
||||||
# @author : Mahasri Kalavala
|
# # @author : Mahasri Kalavala
|
||||||
# @date : 04/20/2018
|
# # @date : 04/20/2018
|
||||||
# @package : zwave batteries
|
# # @package : zwave batteries
|
||||||
# @description : Zwave batteries using input_label & MQTT
|
# # @description : Zwave batteries using input_label & MQTT
|
||||||
###############################################################################
|
# ###############################################################################
|
||||||
|
|
||||||
input_label:
|
# input_label:
|
||||||
audio_detector:
|
# audio_detector:
|
||||||
back_door_sensor:
|
# back_door_sensor:
|
||||||
basement_door_sensor:
|
# basement_door_sensor:
|
||||||
downstairs_multi_sensor:
|
# downstairs_multi_sensor:
|
||||||
zwave_front_door_sensor:
|
# zwave_front_door_sensor:
|
||||||
front_room_multi_sensor:
|
# front_room_multi_sensor:
|
||||||
garage_door_sensor:
|
# garage_door_sensor:
|
||||||
guest_bedroom_multi_sensor:
|
# guest_bedroom_multi_sensor:
|
||||||
kitchen_motion_sensor:
|
# kitchen_motion_sensor:
|
||||||
single_car_garage_door_tilt_sensor:
|
# single_car_garage_door_tilt_sensor:
|
||||||
stairs_motion_sensor:
|
# stairs_motion_sensor:
|
||||||
tv_multi_sensor:
|
# tv_multi_sensor:
|
||||||
two_car_garage_door_tilt_sensor:
|
# two_car_garage_door_tilt_sensor:
|
||||||
upstairs_multi_sensor:
|
# upstairs_multi_sensor:
|
||||||
wallmote:
|
# wallmote:
|
||||||
ecolink_motion_detector:
|
# ecolink_motion_detector:
|
||||||
ecolink_firefighter:
|
# ecolink_firefighter:
|
||||||
ecolink_door_window_sensor_2:
|
# ecolink_door_window_sensor_2:
|
||||||
aeon_labs_zw100_multisensor_6_2:
|
# aeon_labs_zw100_multisensor_6_2:
|
||||||
aeon_labs_zw100_multisensor_6:
|
# aeon_labs_zw100_multisensor_6:
|
||||||
ecolink_door_window_sensor:
|
# ecolink_door_window_sensor:
|
||||||
ecolink_garage_door_tilt_sensor:
|
# ecolink_garage_door_tilt_sensor:
|
||||||
|
|
||||||
suresh_battery:
|
# suresh_battery:
|
||||||
mallika_battery:
|
# mallika_battery:
|
||||||
srinika_battery:
|
# srinika_battery:
|
||||||
hasika_battery:
|
# hasika_battery:
|
||||||
|
|
||||||
suresh_charging:
|
# suresh_charging:
|
||||||
mallika_charging:
|
# mallika_charging:
|
||||||
srinika_charging:
|
# srinika_charging:
|
||||||
hasika_charging:
|
# hasika_charging:
|
||||||
|
|
||||||
suresh_wifi:
|
# suresh_wifi:
|
||||||
mallika_wifi:
|
# mallika_wifi:
|
||||||
srinika_wifi:
|
# srinika_wifi:
|
||||||
hasika_wifi:
|
# hasika_wifi:
|
||||||
|
|
||||||
###############################################################################
|
# ###############################################################################
|
||||||
# _ _ _
|
# # _ _ _
|
||||||
# /\ | | | | (_)
|
# # /\ | | | | (_)
|
||||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
# # / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
# # / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
# # / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
# # /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||||
#
|
# #
|
||||||
###############################################################################
|
# ###############################################################################
|
||||||
|
|
||||||
automation:
|
# automation:
|
||||||
- alias: Update ZWave Battery Levels
|
# - alias: Update ZWave Battery Levels
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: event
|
|
||||||
event_type: state_changed
|
|
||||||
condition:
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.entity_id is not none }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.entity_id.split('.')[0] == 'zwave' }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.new_state.attributes is not none }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.new_state.attributes.battery_level | trim != '' }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.new_state.attributes.battery_level | default(999) | int != 999 }}"
|
|
||||||
action:
|
|
||||||
- service: input_label.set_value
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1] -}}"
|
|
||||||
value: "{{ trigger.event.data.new_state.attributes.battery_level }}"
|
|
||||||
- service: input_label.set_name
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1] -}}"
|
|
||||||
value: "{{ trigger.event.data.new_state.attributes.friendly_name }}'s Battery"
|
|
||||||
- service: input_label.set_icon
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1] -}}"
|
|
||||||
value: >
|
|
||||||
{% set battery_level = trigger.event.data.new_state.attributes.battery_level | int %}
|
|
||||||
{% set battery_round = (battery_level / 10)|int * 10 %}
|
|
||||||
{% if battery_round >= 100 %}
|
|
||||||
mdi:battery
|
|
||||||
{% elif battery_round > 0 %}
|
|
||||||
mdi:battery-{{ battery_round }}
|
|
||||||
{% else %}
|
|
||||||
mdi:battery-alert
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
# - alias: Update Phone Battery Levels
|
|
||||||
# initial_state: true
|
# initial_state: true
|
||||||
# trigger:
|
# trigger:
|
||||||
# platform: mqtt
|
# - platform: event
|
||||||
# topic: "owntracks/+/+"
|
# event_type: state_changed
|
||||||
|
# condition:
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.entity_id is not none }}"
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.entity_id.split('.')[0] == 'zwave' }}"
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.new_state.attributes is not none }}"
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.new_state.attributes.battery_level | trim != '' }}"
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.new_state.attributes.battery_level | default(999) | int != 999 }}"
|
||||||
# action:
|
# action:
|
||||||
# - service: input_label.set_value
|
# - service: input_label.set_value
|
||||||
# data_template:
|
# data_template:
|
||||||
# entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_wifi"
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1] -}}"
|
||||||
# value: "{{ 'Yes' if trigger.payload_json.conn == 'w' else 'No' }}"
|
# value: "{{ trigger.event.data.new_state.attributes.battery_level }}"
|
||||||
# - service: input_label.set_icon
|
|
||||||
# data_template:
|
|
||||||
# entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_wifi"
|
|
||||||
# value: "{{ 'mdi:wifi' if trigger.payload_json.conn == 'w' else 'mdi:wifi-off' }}"
|
|
||||||
# - service: input_label.set_name
|
# - service: input_label.set_name
|
||||||
# data_template:
|
# data_template:
|
||||||
# entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_wifi"
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1] -}}"
|
||||||
# value: "{{trigger.topic.split('/')[-1] | title }}'s phone wifi enabled?"
|
# value: "{{ trigger.event.data.new_state.attributes.friendly_name }}'s Battery"
|
||||||
|
# - service: input_label.set_icon
|
||||||
|
# data_template:
|
||||||
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1] -}}"
|
||||||
|
# value: >
|
||||||
|
# {% set battery_level = trigger.event.data.new_state.attributes.battery_level | int %}
|
||||||
|
# {% set battery_round = (battery_level / 10)|int * 10 %}
|
||||||
|
# {% if battery_round >= 100 %}
|
||||||
|
# mdi:battery
|
||||||
|
# {% elif battery_round > 0 %}
|
||||||
|
# mdi:battery-{{ battery_round }}
|
||||||
|
# {% else %}
|
||||||
|
# mdi:battery-alert
|
||||||
|
# {% endif %}
|
||||||
|
|
||||||
|
# # - alias: Update Phone Battery Levels
|
||||||
|
# # initial_state: true
|
||||||
|
# # trigger:
|
||||||
|
# # platform: mqtt
|
||||||
|
# # topic: "owntracks/+/+"
|
||||||
|
# # action:
|
||||||
|
# # - service: input_label.set_value
|
||||||
|
# # data_template:
|
||||||
|
# # entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_wifi"
|
||||||
|
# # value: "{{ 'Yes' if trigger.payload_json.conn == 'w' else 'No' }}"
|
||||||
|
# # - service: input_label.set_icon
|
||||||
|
# # data_template:
|
||||||
|
# # entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_wifi"
|
||||||
|
# # value: "{{ 'mdi:wifi' if trigger.payload_json.conn == 'w' else 'mdi:wifi-off' }}"
|
||||||
|
# # - service: input_label.set_name
|
||||||
|
# # data_template:
|
||||||
|
# # entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_wifi"
|
||||||
|
# # value: "{{trigger.topic.split('/')[-1] | title }}'s phone wifi enabled?"
|
||||||
|
|
||||||
|
# # - service: input_label.set_value
|
||||||
|
# # data_template:
|
||||||
|
# # entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_battery"
|
||||||
|
# # value: "{{ trigger.payload_json.batt | int }}"
|
||||||
|
# # - service: input_label.set_name
|
||||||
|
# # data_template:
|
||||||
|
# # entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_battery"
|
||||||
|
# # value: "{{trigger.topic.split('/')[-1] | title }}'s Battery"
|
||||||
|
# # - service: input_label.set_icon
|
||||||
|
# # data_template:
|
||||||
|
# # entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_battery"
|
||||||
|
# # value: >
|
||||||
|
# # {% set battery_level = trigger.payload_json.batt | int %}
|
||||||
|
# # {% set battery_round = (battery_level / 10)|int * 10 %}
|
||||||
|
# # {% if trigger.payload_json.charging == 1 %}
|
||||||
|
# # {% if battery_round >= 100 %}
|
||||||
|
# # mdi:battery-charging-100
|
||||||
|
# # {% elif battery_round > 0 %}
|
||||||
|
# # mdi:battery-charging-{{ battery_round }}
|
||||||
|
# # {% else %}
|
||||||
|
# # mdi:battery-alert
|
||||||
|
# # {% endif %}
|
||||||
|
# # {% else %}
|
||||||
|
# # {% if battery_round >= 100 %}
|
||||||
|
# # mdi:battery
|
||||||
|
# # {% elif battery_round > 0 %}
|
||||||
|
# # mdi:battery-{{ battery_round }}
|
||||||
|
# # {% else %}
|
||||||
|
# # mdi:battery-alert
|
||||||
|
# # {% endif %}
|
||||||
|
# # {% endif %}
|
||||||
|
|
||||||
|
# - alias: Update Phone Battery Levels From Life360
|
||||||
|
# initial_state: true
|
||||||
|
# trigger:
|
||||||
|
# - platform: event
|
||||||
|
# event_type: state_changed
|
||||||
|
# condition:
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.entity_id is not none }}"
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ 'life360_' in trigger.event.data.entity_id }}"
|
||||||
|
# - condition: template
|
||||||
|
# value_template: "{{ trigger.event.data.new_state.attributes is not none }}"
|
||||||
|
# action:
|
||||||
|
# - service: input_label.set_name
|
||||||
|
# data_template:
|
||||||
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_battery"
|
||||||
|
# value: "{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] |title -}}'s Battery"
|
||||||
# - service: input_label.set_value
|
# - service: input_label.set_value
|
||||||
# data_template:
|
# data_template:
|
||||||
# entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_battery"
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_battery"
|
||||||
# value: "{{ trigger.payload_json.batt | int }}"
|
# value: "{{ trigger.event.data.new_state.attributes.battery }}"
|
||||||
# - service: input_label.set_name
|
|
||||||
# data_template:
|
|
||||||
# entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_battery"
|
|
||||||
# value: "{{trigger.topic.split('/')[-1] | title }}'s Battery"
|
|
||||||
# - service: input_label.set_icon
|
# - service: input_label.set_icon
|
||||||
# data_template:
|
# data_template:
|
||||||
# entity_id: "input_label.{{trigger.topic.split('/')[-1]}}_battery"
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_battery"
|
||||||
# value: >
|
# value: >
|
||||||
# {% set battery_level = trigger.payload_json.batt | int %}
|
# {% set battery_level = trigger.event.data.new_state.attributes.battery | int %}
|
||||||
# {% set battery_round = (battery_level / 10)|int * 10 %}
|
# {% set battery_round = (battery_level / 10)|int * 10 %}
|
||||||
# {% if trigger.payload_json.charging == 1 %}
|
# {% if trigger.event.data.new_state.attributes.battery_charging == "true" %}
|
||||||
|
# {% if battery_round >= 100 %}
|
||||||
|
# mdi:battery-charging-100
|
||||||
|
# {% elif battery_round > 0 %}
|
||||||
|
# mdi:battery-charging-{{ battery_round }}
|
||||||
|
# {% else %}
|
||||||
|
# mdi:battery-alert
|
||||||
|
# {% endif %}
|
||||||
|
# {% else %}
|
||||||
|
# {% if battery_round >= 100 %}
|
||||||
|
# mdi:battery
|
||||||
|
# {% elif battery_round > 0 %}
|
||||||
|
# mdi:battery-{{ battery_round }}
|
||||||
|
# {% else %}
|
||||||
|
# mdi:battery-alert
|
||||||
|
# {% endif %}
|
||||||
|
# {% endif %}
|
||||||
|
# - service: input_label.set_value
|
||||||
|
# data_template:
|
||||||
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_wifi"
|
||||||
|
# value: "{{ 'WiFi' if trigger.event.data.new_state.attributes.wifi_on |string |lower == 'true' else 'LTE' }}"
|
||||||
|
# - service: input_label.set_value
|
||||||
|
# data_template:
|
||||||
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_charging"
|
||||||
|
# value: "{{ 'Charging' if trigger.event.data.new_state.attributes.battery_charging |string |lower == 'true' else 'Not Charging' }}"
|
||||||
|
# - service: input_label.set_icon
|
||||||
|
# data_template:
|
||||||
|
# entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_charging"
|
||||||
|
# value: >
|
||||||
|
# {% set battery_level = trigger.event.data.new_state.attributes.battery | int %}
|
||||||
|
# {% set battery_round = (battery_level / 10)|int * 10 %}
|
||||||
|
# {% if trigger.event.data.new_state.attributes.battery_charging == "true" %}
|
||||||
# {% if battery_round >= 100 %}
|
# {% if battery_round >= 100 %}
|
||||||
# mdi:battery-charging-100
|
# mdi:battery-charging-100
|
||||||
# {% elif battery_round > 0 %}
|
# {% elif battery_round > 0 %}
|
||||||
|
@ -144,79 +220,3 @@ automation:
|
||||||
# mdi:battery-alert
|
# mdi:battery-alert
|
||||||
# {% endif %}
|
# {% endif %}
|
||||||
# {% endif %}
|
# {% endif %}
|
||||||
|
|
||||||
- alias: Update Phone Battery Levels From Life360
|
|
||||||
initial_state: true
|
|
||||||
trigger:
|
|
||||||
- platform: event
|
|
||||||
event_type: state_changed
|
|
||||||
condition:
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.entity_id is not none }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ 'life360_' in trigger.event.data.entity_id }}"
|
|
||||||
- condition: template
|
|
||||||
value_template: "{{ trigger.event.data.new_state.attributes is not none }}"
|
|
||||||
action:
|
|
||||||
- service: input_label.set_name
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_battery"
|
|
||||||
value: "{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] |title -}}'s Battery"
|
|
||||||
- service: input_label.set_value
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_battery"
|
|
||||||
value: "{{ trigger.event.data.new_state.attributes.battery }}"
|
|
||||||
- service: input_label.set_icon
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_battery"
|
|
||||||
value: >
|
|
||||||
{% set battery_level = trigger.event.data.new_state.attributes.battery | int %}
|
|
||||||
{% set battery_round = (battery_level / 10)|int * 10 %}
|
|
||||||
{% if trigger.event.data.new_state.attributes.battery_charging == "true" %}
|
|
||||||
{% if battery_round >= 100 %}
|
|
||||||
mdi:battery-charging-100
|
|
||||||
{% elif battery_round > 0 %}
|
|
||||||
mdi:battery-charging-{{ battery_round }}
|
|
||||||
{% else %}
|
|
||||||
mdi:battery-alert
|
|
||||||
{% endif %}
|
|
||||||
{% else %}
|
|
||||||
{% if battery_round >= 100 %}
|
|
||||||
mdi:battery
|
|
||||||
{% elif battery_round > 0 %}
|
|
||||||
mdi:battery-{{ battery_round }}
|
|
||||||
{% else %}
|
|
||||||
mdi:battery-alert
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
- service: input_label.set_value
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_wifi"
|
|
||||||
value: "{{ 'WiFi' if trigger.event.data.new_state.attributes.wifi_on |string |lower == 'true' else 'LTE' }}"
|
|
||||||
- service: input_label.set_value
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_charging"
|
|
||||||
value: "{{ 'Charging' if trigger.event.data.new_state.attributes.battery_charging |string |lower == 'true' else 'Not Charging' }}"
|
|
||||||
- service: input_label.set_icon
|
|
||||||
data_template:
|
|
||||||
entity_id: "input_label.{{- trigger.event.data.entity_id.split('.')[1].split('_')[1] -}}_charging"
|
|
||||||
value: >
|
|
||||||
{% set battery_level = trigger.event.data.new_state.attributes.battery | int %}
|
|
||||||
{% set battery_round = (battery_level / 10)|int * 10 %}
|
|
||||||
{% if trigger.event.data.new_state.attributes.battery_charging == "true" %}
|
|
||||||
{% if battery_round >= 100 %}
|
|
||||||
mdi:battery-charging-100
|
|
||||||
{% elif battery_round > 0 %}
|
|
||||||
mdi:battery-charging-{{ battery_round }}
|
|
||||||
{% else %}
|
|
||||||
mdi:battery-alert
|
|
||||||
{% endif %}
|
|
||||||
{% else %}
|
|
||||||
{% if battery_round >= 100 %}
|
|
||||||
mdi:battery
|
|
||||||
{% elif battery_round > 0 %}
|
|
||||||
mdi:battery-{{ battery_round }}
|
|
||||||
{% else %}
|
|
||||||
mdi:battery-alert
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
|
|
|
@ -1,318 +1,318 @@
|
||||||
#################################################################
|
# #################################################################
|
||||||
# @author : Mahasri Kalavala
|
# # @author : Mahasri Kalavala
|
||||||
# @date : 09/18/17
|
# # @date : 09/18/17
|
||||||
# @package : Z-Wave package
|
# # @package : Z-Wave package
|
||||||
# @description : Z-Wave Still and it's configuration stuff
|
# # @description : Z-Wave Still and it's configuration stuff
|
||||||
#
|
# #
|
||||||
# This entire page is auto generated by the script (link below):
|
# # This entire page is auto generated by the script (link below):
|
||||||
# https://github.com/skalavala/mysmarthome/blob/master/jinja_helpers/zwave_auto_gen.md
|
# # https://github.com/skalavala/mysmarthome/blob/master/jinja_helpers/zwave_auto_gen.md
|
||||||
#################################################################
|
# #################################################################
|
||||||
|
|
||||||
homeassistant:
|
# homeassistant:
|
||||||
customize:
|
# customize:
|
||||||
# ZWave Binary Sensors
|
# # ZWave Binary Sensors
|
||||||
binary_sensor.audio_detector_sensor:
|
# binary_sensor.audio_detector_sensor:
|
||||||
friendly_name: Audio Detector Sensor
|
# friendly_name: Audio Detector Sensor
|
||||||
binary_sensor.basement_door_sensor_sensor:
|
# binary_sensor.basement_door_sensor_sensor:
|
||||||
friendly_name: Basement Door Sensor
|
# friendly_name: Basement Door Sensor
|
||||||
binary_sensor.downstairs_multi_sensor_sensor:
|
# binary_sensor.downstairs_multi_sensor_sensor:
|
||||||
friendly_name: Downstairs Multi Sensor
|
# friendly_name: Downstairs Multi Sensor
|
||||||
binary_sensor.front_door_sensor_sensor:
|
# binary_sensor.front_door_sensor_sensor:
|
||||||
friendly_name: Front Door Sensor
|
# friendly_name: Front Door Sensor
|
||||||
binary_sensor.front_room_multi_sensor_sensor:
|
# binary_sensor.front_room_multi_sensor_sensor:
|
||||||
friendly_name: Front Room Multi Sensor
|
# friendly_name: Front Room Multi Sensor
|
||||||
binary_sensor.garage_door_sensor_sensor:
|
# binary_sensor.garage_door_sensor_sensor:
|
||||||
friendly_name: Garage Door Sensor
|
# friendly_name: Garage Door Sensor
|
||||||
binary_sensor.guest_bedroom_multi_sensor_sensor:
|
# binary_sensor.guest_bedroom_multi_sensor_sensor:
|
||||||
friendly_name: Guest Bedroom Multi Sensor
|
# friendly_name: Guest Bedroom Multi Sensor
|
||||||
binary_sensor.kitchen_motion_sensor_sensor:
|
# binary_sensor.kitchen_motion_sensor_sensor:
|
||||||
friendly_name: Kitchen Motion Sensor
|
# friendly_name: Kitchen Motion Sensor
|
||||||
binary_sensor.door_window_sensor_158d0004248d5b:
|
# binary_sensor.door_window_sensor_158d0004248d5b:
|
||||||
friendly_name: Single Car Garage Door
|
# friendly_name: Single Car Garage Door
|
||||||
binary_sensor.stairs_motion_sensor_sensor:
|
# binary_sensor.stairs_motion_sensor_sensor:
|
||||||
friendly_name: Stairs Motion Sensor
|
# friendly_name: Stairs Motion Sensor
|
||||||
binary_sensor.tv_multi_sensor_sensor:
|
# binary_sensor.tv_multi_sensor_sensor:
|
||||||
friendly_name: TV Multi Sensor
|
# friendly_name: TV Multi Sensor
|
||||||
binary_sensor.door_window_sensor_158d0004231f7b:
|
# binary_sensor.door_window_sensor_158d0004231f7b:
|
||||||
friendly_name: Double Car Garage Door
|
# friendly_name: Double Car Garage Door
|
||||||
binary_sensor.upstairs_multi_sensor_sensor:
|
# binary_sensor.upstairs_multi_sensor_sensor:
|
||||||
friendly_name: Upstairs Multi Sensor
|
# friendly_name: Upstairs Multi Sensor
|
||||||
|
|
||||||
# ZWave Sensors
|
# # ZWave Sensors
|
||||||
sensor.audio_detector_alarm_level:
|
# sensor.audio_detector_alarm_level:
|
||||||
friendly_name: Audio Detector Alarm Level
|
# friendly_name: Audio Detector Alarm Level
|
||||||
sensor.audio_detector_alarm_type:
|
# sensor.audio_detector_alarm_type:
|
||||||
friendly_name: Audio Detector Alarm Type
|
# friendly_name: Audio Detector Alarm Type
|
||||||
sensor.audio_detector_burglar:
|
# sensor.audio_detector_burglar:
|
||||||
friendly_name: Audio Detector Burglar
|
# friendly_name: Audio Detector Burglar
|
||||||
sensor.audio_detector_carbon_monoxide:
|
# sensor.audio_detector_carbon_monoxide:
|
||||||
friendly_name: Audio Detector Carbon Monoxide
|
# friendly_name: Audio Detector Carbon Monoxide
|
||||||
sensor.audio_detector_power_management:
|
# sensor.audio_detector_power_management:
|
||||||
friendly_name: Audio Detector Power Management
|
# friendly_name: Audio Detector Power Management
|
||||||
sensor.audio_detector_smoke:
|
# sensor.audio_detector_smoke:
|
||||||
friendly_name: Audio Detector Smoke
|
# friendly_name: Audio Detector Smoke
|
||||||
sensor.audio_detector_sourcenodeid:
|
# sensor.audio_detector_sourcenodeid:
|
||||||
friendly_name: Audio Detector SourceNodeId
|
# friendly_name: Audio Detector SourceNodeId
|
||||||
sensor.audio_detector_temperature:
|
# sensor.audio_detector_temperature:
|
||||||
friendly_name: Audio Detector Temperature
|
# friendly_name: Audio Detector Temperature
|
||||||
sensor.back_door_sensor_access_control:
|
# sensor.back_door_sensor_access_control:
|
||||||
friendly_name: Back Door Sensor Access Control
|
# friendly_name: Back Door Sensor Access Control
|
||||||
sensor.back_door_sensor_alarm_level:
|
# sensor.back_door_sensor_alarm_level:
|
||||||
friendly_name: Back Door Sensor Alarm Level
|
# friendly_name: Back Door Sensor Alarm Level
|
||||||
sensor.back_door_sensor_alarm_type:
|
# sensor.back_door_sensor_alarm_type:
|
||||||
friendly_name: Back Door Sensor Alarm Type
|
# friendly_name: Back Door Sensor Alarm Type
|
||||||
sensor.back_door_sensor_burglar:
|
# sensor.back_door_sensor_burglar:
|
||||||
friendly_name: Back Door Sensor Burglar
|
# friendly_name: Back Door Sensor Burglar
|
||||||
sensor.back_door_sensor_power_management:
|
# sensor.back_door_sensor_power_management:
|
||||||
friendly_name: Back Door Sensor Power Management
|
# friendly_name: Back Door Sensor Power Management
|
||||||
sensor.back_door_sensor_sourcenodeid:
|
# sensor.back_door_sensor_sourcenodeid:
|
||||||
friendly_name: Back Door Sensor SourceNodeId
|
# friendly_name: Back Door Sensor SourceNodeId
|
||||||
sensor.basement_door_sensor_access_control:
|
# sensor.basement_door_sensor_access_control:
|
||||||
friendly_name: Basement Door Sensor Access Control
|
# friendly_name: Basement Door Sensor Access Control
|
||||||
sensor.basement_door_sensor_alarm_level:
|
# sensor.basement_door_sensor_alarm_level:
|
||||||
friendly_name: Basement Door Sensor Alarm Level
|
# friendly_name: Basement Door Sensor Alarm Level
|
||||||
sensor.basement_door_sensor_alarm_type:
|
# sensor.basement_door_sensor_alarm_type:
|
||||||
friendly_name: Basement Door Sensor Alarm Type
|
# friendly_name: Basement Door Sensor Alarm Type
|
||||||
sensor.basement_door_sensor_burglar:
|
# sensor.basement_door_sensor_burglar:
|
||||||
friendly_name: Basement Door Sensor Burglar
|
# friendly_name: Basement Door Sensor Burglar
|
||||||
sensor.basement_door_sensor_power_management:
|
# sensor.basement_door_sensor_power_management:
|
||||||
friendly_name: Basement Door Sensor Power Management
|
# friendly_name: Basement Door Sensor Power Management
|
||||||
sensor.basement_door_sensor_sourcenodeid:
|
# sensor.basement_door_sensor_sourcenodeid:
|
||||||
friendly_name: Basement Door Sensor SourceNodeId
|
# friendly_name: Basement Door Sensor SourceNodeId
|
||||||
sensor.downstairs_multi_sensor_alarm_level:
|
# sensor.downstairs_multi_sensor_alarm_level:
|
||||||
friendly_name: Downstairs Multi Sensor Alarm Level
|
# friendly_name: Downstairs Multi Sensor Alarm Level
|
||||||
sensor.downstairs_multi_sensor_alarm_type:
|
# sensor.downstairs_multi_sensor_alarm_type:
|
||||||
friendly_name: Downstairs Multi Sensor Alarm Type
|
# friendly_name: Downstairs Multi Sensor Alarm Type
|
||||||
sensor.downstairs_multi_sensor_burglar:
|
# sensor.downstairs_multi_sensor_burglar:
|
||||||
friendly_name: Downstairs Multi Sensor Burglar
|
# friendly_name: Downstairs Multi Sensor Burglar
|
||||||
sensor.downstairs_multi_sensor_luminance:
|
# sensor.downstairs_multi_sensor_luminance:
|
||||||
friendly_name: Downstairs Multi Sensor Luminance
|
# friendly_name: Downstairs Multi Sensor Luminance
|
||||||
sensor.downstairs_multi_sensor_power:
|
# sensor.downstairs_multi_sensor_power:
|
||||||
friendly_name: Downstairs Multi Sensor Power
|
# friendly_name: Downstairs Multi Sensor Power
|
||||||
sensor.downstairs_multi_sensor_relative_humidity:
|
# sensor.downstairs_multi_sensor_relative_humidity:
|
||||||
friendly_name: Downstairs Multi Sensor Relative Humidity
|
# friendly_name: Downstairs Multi Sensor Relative Humidity
|
||||||
sensor.downstairs_multi_sensor_sourcenodeid:
|
# sensor.downstairs_multi_sensor_sourcenodeid:
|
||||||
friendly_name: Downstairs Multi Sensor SourceNodeId
|
# friendly_name: Downstairs Multi Sensor SourceNodeId
|
||||||
sensor.downstairs_multi_sensor_temperature:
|
# sensor.downstairs_multi_sensor_temperature:
|
||||||
friendly_name: Downstairs Multi Sensor Temperature
|
# friendly_name: Downstairs Multi Sensor Temperature
|
||||||
sensor.front_room_multi_sensor_alarm_level:
|
# sensor.front_room_multi_sensor_alarm_level:
|
||||||
friendly_name: Front Room Multi Sensor Alarm Level
|
# friendly_name: Front Room Multi Sensor Alarm Level
|
||||||
sensor.front_room_multi_sensor_alarm_type:
|
# sensor.front_room_multi_sensor_alarm_type:
|
||||||
friendly_name: Front Room Multi Sensor Alarm Type
|
# friendly_name: Front Room Multi Sensor Alarm Type
|
||||||
sensor.front_room_multi_sensor_burglar:
|
# sensor.front_room_multi_sensor_burglar:
|
||||||
friendly_name: Front Room Multi Sensor Burglar
|
# friendly_name: Front Room Multi Sensor Burglar
|
||||||
sensor.front_room_multi_sensor_luminance:
|
# sensor.front_room_multi_sensor_luminance:
|
||||||
friendly_name: Front Room Multi Sensor Luminance
|
# friendly_name: Front Room Multi Sensor Luminance
|
||||||
sensor.front_room_multi_sensor_relative_humidity:
|
# sensor.front_room_multi_sensor_relative_humidity:
|
||||||
friendly_name: Front Room Multi Sensor Relative Humidity
|
# friendly_name: Front Room Multi Sensor Relative Humidity
|
||||||
sensor.front_room_multi_sensor_sourcenodeid:
|
# sensor.front_room_multi_sensor_sourcenodeid:
|
||||||
friendly_name: Front Room Multi Sensor SourceNodeId
|
# friendly_name: Front Room Multi Sensor SourceNodeId
|
||||||
sensor.front_room_multi_sensor_temperature:
|
# sensor.front_room_multi_sensor_temperature:
|
||||||
friendly_name: Front Room Multi Sensor Temperature
|
# friendly_name: Front Room Multi Sensor Temperature
|
||||||
sensor.front_room_multi_sensor_ultraviolet:
|
# sensor.front_room_multi_sensor_ultraviolet:
|
||||||
friendly_name: Front Room Multi Sensor Ultraviolet
|
# friendly_name: Front Room Multi Sensor Ultraviolet
|
||||||
sensor.garage_door_sensor_access_control:
|
# sensor.garage_door_sensor_access_control:
|
||||||
friendly_name: Garage Door Sensor Access Control
|
# friendly_name: Garage Door Sensor Access Control
|
||||||
sensor.garage_door_sensor_alarm_level:
|
# sensor.garage_door_sensor_alarm_level:
|
||||||
friendly_name: Garage Door Sensor Alarm Level
|
# friendly_name: Garage Door Sensor Alarm Level
|
||||||
sensor.garage_door_sensor_alarm_type:
|
# sensor.garage_door_sensor_alarm_type:
|
||||||
friendly_name: Garage Door Sensor Alarm Type
|
# friendly_name: Garage Door Sensor Alarm Type
|
||||||
sensor.garage_door_sensor_burglar:
|
# sensor.garage_door_sensor_burglar:
|
||||||
friendly_name: Garage Door Sensor Burglar
|
# friendly_name: Garage Door Sensor Burglar
|
||||||
sensor.garage_door_sensor_power_management:
|
# sensor.garage_door_sensor_power_management:
|
||||||
friendly_name: Garage Door Sensor Power Management
|
# friendly_name: Garage Door Sensor Power Management
|
||||||
sensor.garage_door_sensor_sourcenodeid:
|
# sensor.garage_door_sensor_sourcenodeid:
|
||||||
friendly_name: Garage Door Sensor SourceNodeId
|
# friendly_name: Garage Door Sensor SourceNodeId
|
||||||
sensor.single_car_garage_door_sensor_status:
|
# sensor.single_car_garage_door_sensor_status:
|
||||||
friendly_name: Single Car Garage Door Sensor Status
|
# friendly_name: Single Car Garage Door Sensor Status
|
||||||
sensor.two_car_garage_door_sensor_status:
|
# sensor.two_car_garage_door_sensor_status:
|
||||||
friendly_name: Double Car Garage Door Sensor Status
|
# friendly_name: Double Car Garage Door Sensor Status
|
||||||
sensor.guest_bedroom_multi_sensor_alarm_level:
|
# sensor.guest_bedroom_multi_sensor_alarm_level:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Alarm Level
|
# friendly_name: Guest Bedroom Multi Sensor Alarm Level
|
||||||
sensor.guest_bedroom_multi_sensor_alarm_type:
|
# sensor.guest_bedroom_multi_sensor_alarm_type:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Alarm Type
|
# friendly_name: Guest Bedroom Multi Sensor Alarm Type
|
||||||
sensor.guest_bedroom_multi_sensor_burglar:
|
# sensor.guest_bedroom_multi_sensor_burglar:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Burglar
|
# friendly_name: Guest Bedroom Multi Sensor Burglar
|
||||||
sensor.guest_bedroom_multi_sensor_luminance:
|
# sensor.guest_bedroom_multi_sensor_luminance:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Luminance
|
# friendly_name: Guest Bedroom Multi Sensor Luminance
|
||||||
sensor.guest_bedroom_multi_sensor_relative_humidity:
|
# sensor.guest_bedroom_multi_sensor_relative_humidity:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Relative Humidity
|
# friendly_name: Guest Bedroom Multi Sensor Relative Humidity
|
||||||
sensor.guest_bedroom_multi_sensor_sourcenodeid:
|
# sensor.guest_bedroom_multi_sensor_sourcenodeid:
|
||||||
friendly_name: Guest Bedroom Multi Sensor SourceNodeId
|
# friendly_name: Guest Bedroom Multi Sensor SourceNodeId
|
||||||
sensor.guest_bedroom_multi_sensor_temperature:
|
# sensor.guest_bedroom_multi_sensor_temperature:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Temperature
|
# friendly_name: Guest Bedroom Multi Sensor Temperature
|
||||||
sensor.guest_bedroom_multi_sensor_ultraviolet:
|
# sensor.guest_bedroom_multi_sensor_ultraviolet:
|
||||||
friendly_name: Guest Bedroom Multi Sensor Ultraviolet
|
# friendly_name: Guest Bedroom Multi Sensor Ultraviolet
|
||||||
sensor.kitchen_motion_sensor_alarm_level:
|
# sensor.kitchen_motion_sensor_alarm_level:
|
||||||
friendly_name: Kitchen Motion Sensor Alarm Level
|
# friendly_name: Kitchen Motion Sensor Alarm Level
|
||||||
sensor.kitchen_motion_sensor_alarm_type:
|
# sensor.kitchen_motion_sensor_alarm_type:
|
||||||
friendly_name: Kitchen Motion Sensor Alarm Type
|
# friendly_name: Kitchen Motion Sensor Alarm Type
|
||||||
sensor.kitchen_motion_sensor_burglar:
|
# sensor.kitchen_motion_sensor_burglar:
|
||||||
friendly_name: Kitchen Motion Sensor Burglar
|
# friendly_name: Kitchen Motion Sensor Burglar
|
||||||
sensor.kitchen_motion_sensor_power_management:
|
# sensor.kitchen_motion_sensor_power_management:
|
||||||
friendly_name: Kitchen Motion Sensor Power Management
|
# friendly_name: Kitchen Motion Sensor Power Management
|
||||||
sensor.kitchen_motion_sensor_sourcenodeid:
|
# sensor.kitchen_motion_sensor_sourcenodeid:
|
||||||
friendly_name: Kitchen Motion Sensor SourceNodeId
|
# friendly_name: Kitchen Motion Sensor SourceNodeId
|
||||||
sensor.single_car_garage_door_tilt_sensor_access_control:
|
# sensor.single_car_garage_door_tilt_sensor_access_control:
|
||||||
friendly_name: Single Car Garage Door Tilt Sensor Access Control
|
# friendly_name: Single Car Garage Door Tilt Sensor Access Control
|
||||||
sensor.single_car_garage_door_tilt_sensor_alarm_level:
|
# sensor.single_car_garage_door_tilt_sensor_alarm_level:
|
||||||
friendly_name: Single Car Garage Door Tilt Sensor Alarm Level
|
# friendly_name: Single Car Garage Door Tilt Sensor Alarm Level
|
||||||
sensor.single_car_garage_door_tilt_sensor_alarm_type:
|
# sensor.single_car_garage_door_tilt_sensor_alarm_type:
|
||||||
friendly_name: Single Car Garage Door Tilt Sensor Alarm Type
|
# friendly_name: Single Car Garage Door Tilt Sensor Alarm Type
|
||||||
sensor.single_car_garage_door_tilt_sensor_burglar:
|
# sensor.single_car_garage_door_tilt_sensor_burglar:
|
||||||
friendly_name: Single Car Garage Door Tilt Sensor Burglar
|
# friendly_name: Single Car Garage Door Tilt Sensor Burglar
|
||||||
sensor.single_car_garage_door_tilt_sensor_power_management:
|
# sensor.single_car_garage_door_tilt_sensor_power_management:
|
||||||
friendly_name: Single Car Garage Door Tilt Sensor Power Management
|
# friendly_name: Single Car Garage Door Tilt Sensor Power Management
|
||||||
sensor.single_car_garage_door_tilt_sensor_sourcenodeid:
|
# sensor.single_car_garage_door_tilt_sensor_sourcenodeid:
|
||||||
friendly_name: Single Car Garage Door Tilt Sensor SourceNodeId
|
# friendly_name: Single Car Garage Door Tilt Sensor SourceNodeId
|
||||||
sensor.stairs_motion_sensor_alarm_level:
|
# sensor.stairs_motion_sensor_alarm_level:
|
||||||
friendly_name: Stairs Motion Sensor Alarm Level
|
# friendly_name: Stairs Motion Sensor Alarm Level
|
||||||
sensor.stairs_motion_sensor_alarm_type:
|
# sensor.stairs_motion_sensor_alarm_type:
|
||||||
friendly_name: Stairs Motion Sensor Alarm Type
|
# friendly_name: Stairs Motion Sensor Alarm Type
|
||||||
sensor.stairs_motion_sensor_burglar:
|
# sensor.stairs_motion_sensor_burglar:
|
||||||
friendly_name: Stairs Motion Sensor Burglar
|
# friendly_name: Stairs Motion Sensor Burglar
|
||||||
sensor.stairs_motion_sensor_power_management:
|
# sensor.stairs_motion_sensor_power_management:
|
||||||
friendly_name: Stairs Motion Sensor Power Management
|
# friendly_name: Stairs Motion Sensor Power Management
|
||||||
sensor.stairs_motion_sensor_sourcenodeid:
|
# sensor.stairs_motion_sensor_sourcenodeid:
|
||||||
friendly_name: Stairs Motion Sensor SourceNodeId
|
# friendly_name: Stairs Motion Sensor SourceNodeId
|
||||||
sensor.tv_multi_sensor_alarm_level:
|
# sensor.tv_multi_sensor_alarm_level:
|
||||||
friendly_name: TV Multi Sensor Alarm Level
|
# friendly_name: TV Multi Sensor Alarm Level
|
||||||
sensor.tv_multi_sensor_alarm_type:
|
# sensor.tv_multi_sensor_alarm_type:
|
||||||
friendly_name: TV Multi Sensor Alarm Type
|
# friendly_name: TV Multi Sensor Alarm Type
|
||||||
sensor.tv_multi_sensor_burglar:
|
# sensor.tv_multi_sensor_burglar:
|
||||||
friendly_name: TV Multi Sensor Burglar
|
# friendly_name: TV Multi Sensor Burglar
|
||||||
sensor.tv_multi_sensor_luminance:
|
# sensor.tv_multi_sensor_luminance:
|
||||||
friendly_name: TV Multi Sensor Luminance
|
# friendly_name: TV Multi Sensor Luminance
|
||||||
sensor.tv_multi_sensor_relative_humidity:
|
# sensor.tv_multi_sensor_relative_humidity:
|
||||||
friendly_name: TV Multi Sensor Relative Humidity
|
# friendly_name: TV Multi Sensor Relative Humidity
|
||||||
sensor.tv_multi_sensor_sourcenodeid:
|
# sensor.tv_multi_sensor_sourcenodeid:
|
||||||
friendly_name: TV Multi Sensor SourceNodeId
|
# friendly_name: TV Multi Sensor SourceNodeId
|
||||||
sensor.tv_multi_sensor_temperature:
|
# sensor.tv_multi_sensor_temperature:
|
||||||
friendly_name: TV Multi Sensor Temperature
|
# friendly_name: TV Multi Sensor Temperature
|
||||||
sensor.tv_multi_sensor_ultraviolet:
|
# sensor.tv_multi_sensor_ultraviolet:
|
||||||
friendly_name: TV Multi Sensor Ultraviolet
|
# friendly_name: TV Multi Sensor Ultraviolet
|
||||||
sensor.two_car_garage_door_tilt_sensor_access_control:
|
# sensor.two_car_garage_door_tilt_sensor_access_control:
|
||||||
friendly_name: Two Car Garage Door Tilt Sensor Access Control
|
# friendly_name: Two Car Garage Door Tilt Sensor Access Control
|
||||||
sensor.two_car_garage_door_tilt_sensor_alarm_level:
|
# sensor.two_car_garage_door_tilt_sensor_alarm_level:
|
||||||
friendly_name: Two Car Garage Door Tilt Sensor Alarm Level
|
# friendly_name: Two Car Garage Door Tilt Sensor Alarm Level
|
||||||
sensor.two_car_garage_door_tilt_sensor_alarm_type:
|
# sensor.two_car_garage_door_tilt_sensor_alarm_type:
|
||||||
friendly_name: Two Car Garage Door Tilt Sensor Alarm Type
|
# friendly_name: Two Car Garage Door Tilt Sensor Alarm Type
|
||||||
sensor.two_car_garage_door_tilt_sensor_burglar:
|
# sensor.two_car_garage_door_tilt_sensor_burglar:
|
||||||
friendly_name: Two Car Garage Door Tilt Sensor Burglar
|
# friendly_name: Two Car Garage Door Tilt Sensor Burglar
|
||||||
sensor.two_car_garage_door_tilt_sensor_power_management:
|
# sensor.two_car_garage_door_tilt_sensor_power_management:
|
||||||
friendly_name: Two Car Garage Door Tilt Sensor Power Management
|
# friendly_name: Two Car Garage Door Tilt Sensor Power Management
|
||||||
sensor.two_car_garage_door_tilt_sensor_sourcenodeid:
|
# sensor.two_car_garage_door_tilt_sensor_sourcenodeid:
|
||||||
friendly_name: Two Car Garage Door Tilt Sensor SourceNodeId
|
# friendly_name: Two Car Garage Door Tilt Sensor SourceNodeId
|
||||||
sensor.upstairs_multi_sensor_alarm_level:
|
# sensor.upstairs_multi_sensor_alarm_level:
|
||||||
friendly_name: Upstairs Multi Sensor Alarm Level
|
# friendly_name: Upstairs Multi Sensor Alarm Level
|
||||||
sensor.upstairs_multi_sensor_alarm_type:
|
# sensor.upstairs_multi_sensor_alarm_type:
|
||||||
friendly_name: Upstairs Multi Sensor Alarm Type
|
# friendly_name: Upstairs Multi Sensor Alarm Type
|
||||||
sensor.upstairs_multi_sensor_burglar:
|
# sensor.upstairs_multi_sensor_burglar:
|
||||||
friendly_name: Upstairs Multi Sensor Burglar
|
# friendly_name: Upstairs Multi Sensor Burglar
|
||||||
sensor.upstairs_multi_sensor_luminance:
|
# sensor.upstairs_multi_sensor_luminance:
|
||||||
friendly_name: Upstairs Multi Sensor Luminance
|
# friendly_name: Upstairs Multi Sensor Luminance
|
||||||
sensor.upstairs_multi_sensor_relative_humidity:
|
# sensor.upstairs_multi_sensor_relative_humidity:
|
||||||
friendly_name: Upstairs Multi Sensor Relative Humidity
|
# friendly_name: Upstairs Multi Sensor Relative Humidity
|
||||||
sensor.upstairs_multi_sensor_sourcenodeid:
|
# sensor.upstairs_multi_sensor_sourcenodeid:
|
||||||
friendly_name: Upstairs Multi Sensor SourceNodeId
|
# friendly_name: Upstairs Multi Sensor SourceNodeId
|
||||||
sensor.upstairs_multi_sensor_temperature:
|
# sensor.upstairs_multi_sensor_temperature:
|
||||||
friendly_name: Upstairs Multi Sensor Temperature
|
# friendly_name: Upstairs Multi Sensor Temperature
|
||||||
sensor.upstairs_multi_sensor_ultraviolet:
|
# sensor.upstairs_multi_sensor_ultraviolet:
|
||||||
friendly_name: Upstairs Multi Sensor Ultraviolet
|
# friendly_name: Upstairs Multi Sensor Ultraviolet
|
||||||
sensor.wallmote_alarm_level:
|
# sensor.wallmote_alarm_level:
|
||||||
friendly_name: Wallmote Alarm Level
|
# friendly_name: Wallmote Alarm Level
|
||||||
sensor.wallmote_alarm_type:
|
# sensor.wallmote_alarm_type:
|
||||||
friendly_name: Wallmote Alarm Type
|
# friendly_name: Wallmote Alarm Type
|
||||||
sensor.wallmote_power_management:
|
# sensor.wallmote_power_management:
|
||||||
friendly_name: Wallmote Power Management
|
# friendly_name: Wallmote Power Management
|
||||||
sensor.wallmote_sourcenodeid:
|
# sensor.wallmote_sourcenodeid:
|
||||||
friendly_name: Wallmote SourceNodeId
|
# friendly_name: Wallmote SourceNodeId
|
||||||
sensor.zwave_smart_switch_current:
|
# sensor.zwave_smart_switch_current:
|
||||||
friendly_name: ZWave Smart Switch Current
|
# friendly_name: ZWave Smart Switch Current
|
||||||
sensor.zwave_smart_switch_energy:
|
# sensor.zwave_smart_switch_energy:
|
||||||
friendly_name: ZWave Smart Switch Energy
|
# friendly_name: ZWave Smart Switch Energy
|
||||||
sensor.zwave_smart_switch_power:
|
# sensor.zwave_smart_switch_power:
|
||||||
friendly_name: ZWave Smart Switch Power
|
# friendly_name: ZWave Smart Switch Power
|
||||||
sensor.zwave_smart_switch_previous_reading:
|
# sensor.zwave_smart_switch_previous_reading:
|
||||||
friendly_name: ZWave Smart Switch Previous Reading
|
# friendly_name: ZWave Smart Switch Previous Reading
|
||||||
sensor.zwave_smart_switch_voltage:
|
# sensor.zwave_smart_switch_voltage:
|
||||||
friendly_name: ZWave Smart Switch Voltage
|
# friendly_name: ZWave Smart Switch Voltage
|
||||||
|
|
||||||
# ZWave Switches
|
# # ZWave Switches
|
||||||
|
|
||||||
switch.kitchen_siren_switch:
|
# switch.kitchen_siren_switch:
|
||||||
friendly_name: Kitchen Siren Switch 1
|
# friendly_name: Kitchen Siren Switch 1
|
||||||
switch.kitchen_siren_switch_2:
|
# switch.kitchen_siren_switch_2:
|
||||||
friendly_name: Kitchen Siren Switch 2
|
# friendly_name: Kitchen Siren Switch 2
|
||||||
switch.kitchen_siren_switch_3:
|
# switch.kitchen_siren_switch_3:
|
||||||
friendly_name: Kitchen Siren Switch 3
|
# friendly_name: Kitchen Siren Switch 3
|
||||||
switch.kitchen_siren_switch_4:
|
# switch.kitchen_siren_switch_4:
|
||||||
friendly_name: Kitchen Siren Switch 4
|
# friendly_name: Kitchen Siren Switch 4
|
||||||
switch.kitchen_siren_switch_5:
|
# switch.kitchen_siren_switch_5:
|
||||||
friendly_name: Kitchen Siren Switch 5
|
# friendly_name: Kitchen Siren Switch 5
|
||||||
switch.wallmote_switch:
|
# switch.wallmote_switch:
|
||||||
friendly_name: Wallmote Switch
|
# friendly_name: Wallmote Switch
|
||||||
|
|
||||||
zwave:
|
# zwave:
|
||||||
usb_path: /dev/ttyACM0
|
# usb_path: /dev/ttyACM0
|
||||||
network_key: !secret zwave_network_key
|
# network_key: !secret zwave_network_key
|
||||||
|
|
||||||
###############################################################################
|
# ###############################################################################
|
||||||
# _ _ _
|
# # _ _ _
|
||||||
# /\ | | | | (_)
|
# # /\ | | | | (_)
|
||||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
# # / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
# # / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
# # / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
# # /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||||
#
|
# #
|
||||||
###############################################################################
|
# ###############################################################################
|
||||||
automation:
|
# automation:
|
||||||
- alias: WallMote Button 1 Pressed
|
# - alias: WallMote Button 1 Pressed
|
||||||
trigger:
|
# trigger:
|
||||||
- platform: event
|
# - platform: event
|
||||||
event_type: zwave.scene_activated
|
# event_type: zwave.scene_activated
|
||||||
event_data:
|
# event_data:
|
||||||
entity_id: zwave.wallmote
|
# entity_id: zwave.wallmote
|
||||||
scene_id: 1
|
# scene_id: 1
|
||||||
action:
|
# action:
|
||||||
- service: light.toggle
|
# - service: light.toggle
|
||||||
entity_id: light.master_bedroom_1
|
# entity_id: light.master_bedroom_1
|
||||||
- service: light.toggle
|
# - service: light.toggle
|
||||||
entity_id: light.master_bedroom_2
|
# entity_id: light.master_bedroom_2
|
||||||
|
|
||||||
- alias: WallMote Button 2 Pressed
|
# - alias: WallMote Button 2 Pressed
|
||||||
trigger:
|
# trigger:
|
||||||
- platform: event
|
# - platform: event
|
||||||
event_type: zwave.scene_activated
|
# event_type: zwave.scene_activated
|
||||||
event_data:
|
# event_data:
|
||||||
entity_id: zwave.wallmote
|
# entity_id: zwave.wallmote
|
||||||
scene_id: 2
|
# scene_id: 2
|
||||||
action:
|
# action:
|
||||||
- service: homeassistant.turn_off
|
# - service: homeassistant.turn_off
|
||||||
entity_id: group.upstairs_lights
|
# entity_id: group.upstairs_lights
|
||||||
|
|
||||||
- alias: WallMote Button 3 Pressed
|
# - alias: WallMote Button 3 Pressed
|
||||||
trigger:
|
# trigger:
|
||||||
- platform: event
|
# - platform: event
|
||||||
event_type: zwave.scene_activated
|
# event_type: zwave.scene_activated
|
||||||
event_data:
|
# event_data:
|
||||||
entity_id: zwave.wallmote
|
# entity_id: zwave.wallmote
|
||||||
scene_id: 3
|
# scene_id: 3
|
||||||
action:
|
# action:
|
||||||
- service: climate.set_away_mode
|
# - service: climate.set_away_mode
|
||||||
data_template:
|
# data_template:
|
||||||
entity_id: climate.dining_room
|
# entity_id: climate.dining_room
|
||||||
away_mode: "false"
|
# away_mode: "false"
|
||||||
|
|
||||||
- alias: WallMote Button 4 Pressed
|
# - alias: WallMote Button 4 Pressed
|
||||||
trigger:
|
# trigger:
|
||||||
- platform: event
|
# - platform: event
|
||||||
event_type: zwave.scene_activated
|
# event_type: zwave.scene_activated
|
||||||
event_data:
|
# event_data:
|
||||||
entity_id: zwave.wallmote
|
# entity_id: zwave.wallmote
|
||||||
scene_id: 4
|
# scene_id: 4
|
||||||
action:
|
# action:
|
||||||
- service: climate.set_away_mode
|
# - service: climate.set_away_mode
|
||||||
data_template:
|
# data_template:
|
||||||
entity_id: climate.dining_room
|
# entity_id: climate.dining_room
|
||||||
away_mode: "true"
|
# away_mode: "true"
|
||||||
|
|
Loading…
Reference in New Issue