updated to latest version + dockerized!
This commit is contained in:
parent
2de4d7cc56
commit
dab0d91303
|
@ -54,3 +54,4 @@ docs/_site
|
|||
private/*
|
||||
apps/__pycache__/*.pyc
|
||||
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
|
||||
###############################################################################
|
||||
homeassistant:
|
||||
name: Home
|
||||
name: MyHome
|
||||
temperature_unit: F
|
||||
latitude: !secret home_latitude
|
||||
longitude: !secret home_longitude
|
||||
|
@ -16,14 +16,14 @@ homeassistant:
|
|||
packages: !include_dir_named packages
|
||||
|
||||
allowlist_external_dirs:
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/patio/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/garage/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/playarea/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/driveway/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/kitchen/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/frontroom/
|
||||
- /home/homeassistant/.homeassistant/www/downloads/camera/3dprinter/
|
||||
- /config/www/downloads/camera/patio/
|
||||
- /config/www/downloads/camera/garage/
|
||||
- /config/www/downloads/camera/playarea/
|
||||
- /config/www/downloads/camera/driveway/
|
||||
- /config/www/downloads/camera/frontdoor/
|
||||
- /config/www/downloads/camera/kitchen/
|
||||
- /config/www/downloads/camera/frontroom/
|
||||
- /config/www/downloads/camera/3dprinter/
|
||||
|
||||
sun:
|
||||
alexa:
|
||||
|
@ -32,6 +32,8 @@ discovery:
|
|||
ignore:
|
||||
- homekit
|
||||
|
||||
frontend:
|
||||
|
||||
octoprint:
|
||||
host: !secret octoprint_ip
|
||||
api_key: !secret octoprint_key
|
||||
|
@ -50,9 +52,10 @@ homekit:
|
|||
- binary_sensor.door_window_sensor_158d000424a6d6 # Front Door
|
||||
- binary_sensor.door_window_sensor_158d0004248d5b # Single Car Garage
|
||||
- binary_sensor.door_window_sensor_158d0004231f7b # Double Car Garage
|
||||
- binary_sensor.door_window_sensor_158d0004880f30 # Garage Entry Door
|
||||
|
||||
mobile_app:
|
||||
|
||||
# default_config:
|
||||
websocket_api:
|
||||
python_script:
|
||||
logger: !include logging.yaml
|
||||
|
@ -72,7 +75,7 @@ mqtt:
|
|||
username: !secret mqtt_username
|
||||
password: !secret mqtt_password
|
||||
keepalive: 60
|
||||
client_id: pi_ha
|
||||
client_id: HA_SERVER
|
||||
|
||||
sonos:
|
||||
media_player:
|
||||
|
@ -94,13 +97,12 @@ lovelace:
|
|||
google:
|
||||
client_id: !secret google_client_id
|
||||
client_secret: !secret google_client_secret
|
||||
|
||||
emulated_hue:
|
||||
expose_by_default: false
|
||||
host_ip: !secret ha_ip_address
|
||||
listen_port: 8300
|
||||
exposed_domains:
|
||||
- light
|
||||
- switch
|
||||
- input_boolean
|
||||
- group
|
||||
#emulated_hue:
|
||||
# expose_by_default: false
|
||||
# host_ip: !secret ha_ip_address
|
||||
# listen_port: 8300
|
||||
# exposed_domains:
|
||||
# - light
|
||||
# - switch
|
||||
# - input_boolean
|
||||
# - 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."""
|
||||
import logging
|
||||
import time
|
||||
|
|
|
@ -20,9 +20,9 @@ logs:
|
|||
homeassistant.components.wemo: critical
|
||||
homeassistant.components.sensor: critical
|
||||
homeassistant.components.cloud.iot: warning
|
||||
homeassistant.components.http: warning
|
||||
# homeassistant.components.http: warning
|
||||
homeassistant.components.camera: warning
|
||||
homeassistant.components.zwave: warning
|
||||
homeassistant.components.zwave: critical
|
||||
homeassistant.components.image_processing: warning
|
||||
homeassistant.components.homekit: warning
|
||||
custom_components.sensor.life360: warning
|
||||
|
|
|
@ -78,12 +78,8 @@ cards:
|
|||
- sensor.octoprint_file
|
||||
- binary_sensor.octoprint_printing
|
||||
- binary_sensor.octoprint_printing_error
|
||||
- sensor.octoprint_actual_bed_temp
|
||||
- sensor.octoprint_actual_tool0_temp
|
||||
- sensor.octoprint_current_state
|
||||
- sensor.octoprint_job_percentage
|
||||
- sensor.octoprint_target_bed_temp
|
||||
- sensor.octoprint_target_tool0_temp
|
||||
- sensor.octoprint_time_elapsed
|
||||
- sensor.octoprint_time_remaining
|
||||
|
||||
|
@ -179,6 +175,8 @@ cards:
|
|||
name: Basement Door
|
||||
- entity: binary_sensor.garage_door_sensor_sensor
|
||||
name: Garage Door
|
||||
- entity: binary_sensor.door_window_sensor_158d0004880f30
|
||||
name: Garage Entry Door
|
||||
- entity: sensor.single_car_garage_door_sensor_status
|
||||
name: Single Car Garage Door
|
||||
- entity: binary_sensor.two_car_garage_door_tilt_sensor_sensor
|
||||
|
@ -191,45 +189,6 @@ cards:
|
|||
type: glance
|
||||
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
|
||||
entity: weather.dark_sky
|
||||
|
||||
|
@ -272,6 +231,8 @@ cards:
|
|||
name: Front Door
|
||||
- entity: binary_sensor.door_window_sensor_158d00040ad8fc
|
||||
name: Back Door
|
||||
- entity: binary_sensor.door_window_sensor_158d0004880f30
|
||||
name: Garage Entry Door
|
||||
- entity: binary_sensor.door_window_sensor_158d000424718f
|
||||
name: Master Bathroom Door
|
||||
- entity: binary_sensor.door_window_sensor_158d00040ad8ec
|
||||
|
@ -281,6 +242,63 @@ cards:
|
|||
- entity: binary_sensor.door_window_sensor_158d0004248d5b
|
||||
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
|
||||
title: Motion Sensors
|
||||
show_empty: false
|
||||
|
@ -302,6 +320,7 @@ cards:
|
|||
- binary_sensor.garage_door_sensor_sensor
|
||||
- binary_sensor.kitchen_motion_sensor_sensor
|
||||
- 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.tv_multi_sensor_sensor
|
||||
- binary_sensor.door_window_sensor_158d0004248d5b
|
||||
|
@ -383,4 +402,5 @@ cards:
|
|||
- input_label.door_window_sensor_158d0004231f7b
|
||||
- input_label.door_window_sensor_158d0004248d5b
|
||||
- input_label.door_window_sensor_158d00040ad8fc
|
||||
- input_label.door_window_sensor_158d0004880f30 # garage entry door
|
||||
- input_label.door_window_sensor_158d000424a6d6
|
||||
|
|
|
@ -18,6 +18,8 @@ cards:
|
|||
name: Srinika's Bedroom
|
||||
- entity: switch.prayer_room
|
||||
name: Study Room
|
||||
- entity: light.master_bathroom_lights
|
||||
name: Master Bathroom Lights
|
||||
|
||||
- type: entities
|
||||
title: Downstairs
|
||||
|
@ -32,6 +34,28 @@ cards:
|
|||
- light.hue_color_lamp_1
|
||||
- light.hue_color_lamp_2
|
||||
- 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
|
||||
title: Fragrance Outlets
|
||||
|
@ -45,17 +69,13 @@ cards:
|
|||
show_header_toggle: false
|
||||
entities:
|
||||
- switch.garage
|
||||
- entity: switch.tesla_model_3_charger_switch
|
||||
name: Tesla Charger Switch
|
||||
- entity: switch.tesla_model_3_maxrange_switch
|
||||
name: Tesla Max Range Switch
|
||||
- switch.garage_shop_lights
|
||||
|
||||
- type: entities
|
||||
title: Always On
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- light.gateway_light_34ce008ad65d
|
||||
- switch.wemoswitch1
|
||||
|
||||
- type: entities
|
||||
title: Outdoor Lights
|
||||
|
|
|
@ -67,12 +67,28 @@ cards:
|
|||
domain: script
|
||||
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
|
||||
id: camera_frontdoor_camera
|
||||
title: Frontdoor Camera
|
||||
entity: camera.frontdoor_camera
|
||||
camera_image: camera.frontdoor_camera
|
||||
camera_view: live
|
||||
# camera_view: live
|
||||
show_info: true
|
||||
tap_action:
|
||||
action: more-info
|
||||
|
@ -138,3 +154,15 @@ cards:
|
|||
entities:
|
||||
- binary_sensor.motion_sensor_158d00016c2d0e
|
||||
- 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:
|
||||
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
|
||||
title: Image Processing
|
||||
show_header_toggle: false
|
||||
|
@ -71,3 +80,5 @@ cards:
|
|||
name: Playarea Camera
|
||||
- entity: image_processing.tensorflow_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.memory_free
|
||||
- binary_sensor.workday_sensor
|
||||
- sensor.ha_installed_version
|
||||
- sensor.ha_current_version
|
||||
- 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
|
||||
cards:
|
||||
- type: gauge
|
||||
|
|
|
@ -204,7 +204,6 @@ cards:
|
|||
- input_boolean.led_alerts
|
||||
- input_boolean.security_system_alerts
|
||||
- input_boolean.notify_camera_alerts
|
||||
- input_boolean.alarm_clock
|
||||
- input_boolean.trash_reminders
|
||||
- automation.family_room_motion_timer
|
||||
- automation.family_room_timer_elapsed
|
||||
|
|
|
@ -87,6 +87,8 @@ cards:
|
|||
title: RPi Scripts
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- script.query_disk_info
|
||||
- script.query_wifi_info
|
||||
- script.restart_all_raspberrypis
|
||||
- script.restart_all_snapclients
|
||||
- script.shutdown_all_raspberrypis
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
title: Scripts
|
||||
icon: mdi:script
|
||||
cards:
|
||||
|
||||
- type: horizontal-stack
|
||||
cards:
|
||||
- type: "custom:button-card"
|
||||
|
@ -31,9 +30,50 @@ cards:
|
|||
action: restart_hass
|
||||
|
||||
- type: entities
|
||||
title: Scripts
|
||||
title: Notification Scripts
|
||||
show_header_toggle: false
|
||||
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
|
||||
- entity: script.xiaomi_blue
|
||||
name: Xiaomi Gateway Blue Light
|
||||
|
@ -43,10 +83,52 @@ cards:
|
|||
name: Xiaomi Gateway Red Light
|
||||
|
||||
- type: entities
|
||||
title: Home Status/Report
|
||||
title: Pill Scripts
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- entity: script.good_night_tts
|
||||
name: Bedtime Report
|
||||
- entity: script.home_status
|
||||
name: Hourly Report
|
||||
- entity: script.pill_taken
|
||||
name: Pill Taken
|
||||
- entity: script.remind_pill
|
||||
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_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
|
||||
title: Zone Based Alerts
|
||||
show_header_toggle: false
|
||||
|
@ -50,7 +34,6 @@ cards:
|
|||
- automation.alert_when_someone_enters_a_zone
|
||||
- automation.alert_when_someone_leaves_a_zone
|
||||
- automation.send_a_message_as_i_get_closer_to_home
|
||||
- automation.update_phone_battery_levels_from_life360
|
||||
- automation.welcome_family
|
||||
|
||||
- type: entities
|
||||
|
@ -63,7 +46,6 @@ cards:
|
|||
- automation.notify_holiday_state_change
|
||||
- automation.notify_indian_holidays
|
||||
- automation.notify_low_battery
|
||||
- automation.notify_of_new_external_ip
|
||||
- automation.notify_thermostat_state_change
|
||||
- automation.notify_usps_mail
|
||||
- automation.notify_usps_packages
|
||||
|
@ -73,9 +55,6 @@ cards:
|
|||
show_header_toggle: false
|
||||
entities:
|
||||
- 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_timer_elapsed
|
||||
- automation.frontroom_motion_timer
|
||||
|
@ -128,7 +107,6 @@ cards:
|
|||
title: Home Security Automations
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- automation.home_security_status_leeo_color
|
||||
- automation.home_security_system_watchdog_10_minutes
|
||||
- automation.home_security_system_watchdog_30_minutes
|
||||
- automation.notify_home_security_status_change
|
||||
|
@ -143,33 +121,19 @@ cards:
|
|||
title: Light Automations
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- automation.animate_familyroom_lights
|
||||
- automation.restore_familyroom_lights
|
||||
- automation.animate_master_bedroom_lights
|
||||
- automation.restore_masterbedroom_lights
|
||||
- automation.evening_indoor_lights_on_before_sunset
|
||||
- automation.evening_outdoor_lights_on_at_sunset
|
||||
- automation.garage_lights_on_when_door_is_opened
|
||||
- automation.long_flash_all_lights
|
||||
- automation.morning_indoor_lights_on
|
||||
- automation.morning_master_bedroom_lights_off_mallika
|
||||
- automation.morning_master_bedroom_lights_on_mallika
|
||||
- automation.morning_outdoor_lights_off
|
||||
- automation.night_dim_tv_lights
|
||||
- automation.night_turn_lights_off
|
||||
- automation.short_flash_all_lights
|
||||
- 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
|
||||
|
||||
- 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
|
||||
- automation.outdoor_light_watchdog
|
||||
|
||||
- type: entities
|
||||
title: Trash & Recycle Automations
|
||||
|
@ -201,10 +165,7 @@ cards:
|
|||
show_header_toggle: false
|
||||
entities:
|
||||
- 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_restore_family_room_lights_to_tv_mode
|
||||
- automation.tv_turn_lights_on_when_tv_is_turned_off
|
||||
- automation.reset_movie_time_after_3_hours
|
||||
|
||||
|
@ -257,14 +218,8 @@ cards:
|
|||
title: Home Assistant Automations
|
||||
show_header_toggle: false
|
||||
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.turn_off_ac_after_3_hours_of_cooling
|
||||
- automation.update_available_notification
|
||||
- automation.update_zwave_battery_levels
|
||||
|
||||
- type: entities
|
||||
title: Misc Automations
|
||||
|
|
|
@ -1,17 +1,8 @@
|
|||
title: QNAP NAS
|
||||
icon: mdi:harddisk
|
||||
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
|
||||
title: KALAVALA-NAS
|
||||
cards:
|
||||
- type: horizontal-stack
|
||||
cards:
|
||||
|
@ -101,10 +92,156 @@ cards:
|
|||
yellow: 70
|
||||
red: 85
|
||||
- type: entities
|
||||
title: QNAP Drives
|
||||
title: KALAVALA-NAS Drives
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- sensor.kalavala_nas_temperature_drive_0_1
|
||||
- sensor.kalavala_nas_temperature_drive_0_2
|
||||
- sensor.kalavala_nas_temperature_drive_0_3
|
||||
- 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:
|
||||
value_template: >
|
||||
{% 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") %}
|
||||
Today at {{- (now().strftime('%s')|int + seconds) | timestamp_custom("%l:%M %p") }}
|
||||
{% if utcnow().strftime('%s')|int | timestamp_custom("%A %D") == (utcnow().strftime('%s') |int + seconds) | timestamp_custom("%A %D") %}
|
||||
Today at {{ (utcnow().strftime('%s')|int + seconds) | timestamp_custom("%I:%M %p") }}
|
||||
{% 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 %}
|
||||
|
||||
- platform: template
|
||||
|
@ -263,12 +263,12 @@ automation:
|
|||
- service: camera.snapshot
|
||||
data:
|
||||
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
|
||||
data_template:
|
||||
title: "3D Printer"
|
||||
message: "Print Progress"
|
||||
data:
|
||||
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') }}%"
|
||||
|
|
|
@ -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:
|
||||
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
|
||||
initial_state: true
|
||||
trigger:
|
||||
|
|
|
@ -45,36 +45,55 @@ camera:
|
|||
username: !secret camera_username
|
||||
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
|
||||
mjpeg_url: !secret garage_camera_url
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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:
|
||||
- platform: hikvision
|
||||
|
@ -105,6 +124,14 @@ binary_sensor:
|
|||
username: !secret camera_username
|
||||
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:
|
||||
- platform: tensorflow
|
||||
scan_interval: 10000
|
||||
|
@ -115,11 +142,12 @@ image_processing:
|
|||
- entity_id: camera.playarea_camera
|
||||
- entity_id: camera.garage_camera
|
||||
- entity_id: camera.3d_printer_camera
|
||||
- entity_id: camera.porch_camera
|
||||
file_out:
|
||||
- "/home/homeassistant/.homeassistant/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] }}_latest.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:
|
||||
graph: /home/homeassistant/.homeassistant/tensorflow/models/efficientdet_d0_coco17_tpu-32/
|
||||
graph: /config/tensorflow/models/efficientdet_d0_coco17_tpu-32/
|
||||
|
||||
input_label:
|
||||
current_stream:
|
||||
|
@ -194,6 +222,26 @@ rest_command:
|
|||
###############################################################################
|
||||
|
||||
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
|
||||
# if the garage doors are open, scan garage cameras as well
|
||||
|
@ -260,7 +308,7 @@ automation:
|
|||
{%- endif -%}
|
||||
data:
|
||||
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
|
||||
data_template:
|
||||
|
@ -277,7 +325,7 @@ automation:
|
|||
{% else %}
|
||||
Motion detected at the front door on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- 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"
|
||||
|
||||
- condition: template
|
||||
|
@ -357,7 +405,7 @@ automation:
|
|||
{% else %}
|
||||
Motion detected at the driveway on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif -%}
|
||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||
file: "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||
caption: "Driveway Motion"
|
||||
|
||||
- service: notify.notify_smtp
|
||||
|
@ -377,7 +425,7 @@ automation:
|
|||
{%- endif -%}
|
||||
data:
|
||||
images:
|
||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||
- "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||
|
||||
- condition: template
|
||||
value_template: >
|
||||
|
@ -466,7 +514,7 @@ automation:
|
|||
{% else %}
|
||||
Motion detected in the garage on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif -%}
|
||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_latest.jpg"
|
||||
file: "/config/www/downloads/camera/garage/garage_latest.jpg"
|
||||
caption: "Garage Motion"
|
||||
|
||||
- service: notify.notify_smtp
|
||||
|
@ -486,7 +534,7 @@ automation:
|
|||
{%- endif -%}
|
||||
data:
|
||||
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
|
||||
#
|
||||
|
@ -552,7 +600,7 @@ automation:
|
|||
{% else %}
|
||||
Motion detected in the backyard on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif -%}
|
||||
file: "/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_latest.jpg"
|
||||
file: "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||
caption: "Backyard Motion"
|
||||
|
||||
- service: notify.notify_smtp
|
||||
|
@ -572,8 +620,8 @@ automation:
|
|||
{%- endif -%}
|
||||
data:
|
||||
images:
|
||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_latest.jpg"
|
||||
- "/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_latest.jpg"
|
||||
- "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||
- "/config/www/downloads/camera/playarea/playarea_latest.jpg"
|
||||
|
||||
# Before you think this code is crazy, here is an explanation.
|
||||
#
|
||||
|
@ -626,21 +674,28 @@ automation:
|
|||
data_template:
|
||||
entity_id: "camera.frontdoor_camera"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
entity_id: "camera.driveway_camera"
|
||||
filename:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
||||
"{{ '/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:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
||||
"{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -650,15 +705,15 @@ automation:
|
|||
message: "Motion Detected At Front Door, Check images:"
|
||||
data:
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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.'
|
||||
data:
|
||||
images:
|
||||
- "{{ '/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' }}"
|
||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
||||
- "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||
.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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -718,21 +773,21 @@ automation:
|
|||
data_template:
|
||||
entity_id: "camera.frontdoor_camera"
|
||||
filename:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||
"{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
entity_id: "camera.driveway_camera"
|
||||
filename:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
||||
"{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
entity_id: "camera.garage_camera"
|
||||
filename:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
|
||||
"{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -742,15 +797,15 @@ automation:
|
|||
message: "Motion Detected At Driveway, Check images:"
|
||||
data:
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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.'
|
||||
data:
|
||||
images:
|
||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
|
||||
- "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||
.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('-','_')
|
||||
.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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -821,7 +876,7 @@ automation:
|
|||
data_template:
|
||||
entity_id: "camera.patio_camera"
|
||||
filename:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
|
||||
"{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -829,7 +884,7 @@ automation:
|
|||
data_template:
|
||||
entity_id: "camera.playarea_camera"
|
||||
filename:
|
||||
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_' ~
|
||||
"{{ '/config/www/downloads/camera/playarea/playarea_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -839,11 +894,11 @@ automation:
|
|||
message: "Motion Detected in the Backyard, Check images:"
|
||||
data:
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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.'
|
||||
data:
|
||||
images:
|
||||
- "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
|
||||
- "{{ '/config/www/downloads/camera/patio/patio_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
|
||||
.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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
|
@ -1023,3 +1078,8 @@ script:
|
|||
data_template:
|
||||
url: !secret playarea_camera_stream_url
|
||||
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"
|
||||
action:
|
||||
- service: switch.turn_off
|
||||
entity_id: switch.frontyard_light
|
||||
entity_id: switch.frontyard
|
||||
- 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
|
||||
|
@ -162,9 +162,9 @@ automation:
|
|||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.frontyard_light
|
||||
entity_id: switch.frontyard
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.wemobackyardlightswitch
|
||||
entity_id: switch.backyard
|
||||
|
||||
###############################################################################
|
||||
# Turn indoor lights on 30 minutes before sunset
|
||||
|
@ -218,6 +218,8 @@ automation:
|
|||
entity_id: switch.kids_bed_accent
|
||||
- service: switch.turn_on
|
||||
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" %}
|
||||
{% set doors = "Both Garage Doors are now CLOSED" %}
|
||||
{% 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!
|
||||
{% 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!
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
@ -77,13 +77,6 @@ binary_sensor:
|
|||
payload_off: "off"
|
||||
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"
|
||||
retain: false
|
||||
|
||||
- alias: Turn Garage Lights On When Motion Detected
|
||||
- alias: Turn Garage Lights On When Motion Detected or Door Opened
|
||||
initial_state: true
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000272bf48
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
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
|
||||
###############################################################################
|
||||
|
@ -177,7 +159,7 @@ automation:
|
|||
data_template:
|
||||
entity_id: "camera.garage_camera"
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
||||
|
||||
|
@ -200,7 +182,7 @@ automation:
|
|||
{%- endif %}
|
||||
Your {{doors}} on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please check the garage snapshot below.
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}
|
||||
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.
|
||||
data:
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
||||
|
||||
|
@ -241,9 +223,12 @@ automation:
|
|||
entity_id:
|
||||
- binary_sensor.door_window_sensor_158d000424a6d6 # Front Door
|
||||
- binary_sensor.door_window_sensor_158d00040ad8fc # Back Door
|
||||
- binary_sensor.door_window_sensor_158d0004880f30 # Garage Entry Door
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: "{{ trigger.from_state.state not in ['unavailable', 'unknown'] }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
||||
action:
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
|
@ -280,12 +265,15 @@ automation:
|
|||
entity_id: binary_sensor.door_window_sensor_158d000424a6d6
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.frontdoor_cam
|
||||
- condition: template
|
||||
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.front_room
|
||||
- service: script.frontdoor_cam
|
||||
|
||||
- alias: When Back Door Opens Turn Kitchen Lights ON
|
||||
initial_state: true
|
||||
|
@ -294,12 +282,15 @@ automation:
|
|||
entity_id: binary_sensor.door_window_sensor_158d00040ad8fc
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service_template: "script.{{ ['patio_cam', 'playarea_cam'] | random }}"
|
||||
- condition: template
|
||||
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.kitchen
|
||||
- service_template: "script.{{ ['patio_cam', 'playarea_cam'] | random }}"
|
||||
|
||||
################################################################################
|
||||
# When I open the garage door
|
||||
|
@ -311,7 +302,7 @@ automation:
|
|||
initial_state: true
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.garage_door_sensor_sensor
|
||||
entity_id: binary_sensor.door_window_sensor_158d0004880f30
|
||||
to: "on"
|
||||
condition:
|
||||
condition: or
|
||||
|
@ -324,8 +315,52 @@ automation:
|
|||
value_template: "{{ states('binary_sensor.door_window_sensor_158d0004248d5b') == 'off' }}"
|
||||
- condition: template
|
||||
value_template: "{{ states('binary_sensor.door_window_sensor_158d0004231f7b') == 'off' }}"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.garage
|
||||
- service: timer.start
|
||||
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
|
||||
- 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
|
||||
state_topic: "iotlink/domain/winsvr2016/lwt"
|
||||
name: "Windows Server"
|
||||
|
@ -79,57 +69,3 @@ sensor:
|
|||
state_topic: "iotlink/domain/winsvr2016/windows-monitor/stats/system/idle-time"
|
||||
name: "Windows Server Idle Time"
|
||||
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
|
||||
icon: mdi:security
|
||||
|
||||
simplisafe:
|
||||
accounts:
|
||||
- username: !secret simplisafe_username
|
||||
password: !secret simplisafe_password
|
||||
# simplisafe:
|
||||
# accounts:
|
||||
# - username: !secret simplisafe_username
|
||||
# password: !secret simplisafe_password
|
||||
|
||||
###############################################################################
|
||||
# _ _ _
|
||||
|
@ -36,7 +36,7 @@ automation:
|
|||
# Leeo light - color indication of Home Security System
|
||||
# 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
|
||||
trigger:
|
||||
platform: state
|
||||
|
@ -60,6 +60,104 @@ automation:
|
|||
script.xiaomi_red
|
||||
{% 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
|
||||
###############################################################################
|
||||
|
@ -229,7 +327,7 @@ automation:
|
|||
- service: camera.snapshot
|
||||
data_template:
|
||||
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
|
||||
data_template:
|
||||
|
@ -237,7 +335,7 @@ automation:
|
|||
message: "Home Security System is ON, but Garage Doors are OPEN!"
|
||||
data:
|
||||
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('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
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"
|
||||
input_label.door_window_sensor_158d00040ad8fc:
|
||||
unit_of_measurement: "count"
|
||||
input_label.door_window_sensor_158d0004880f30:
|
||||
unit_of_measurement: "count"
|
||||
input_label.door_window_sensor_158d000424a6d6:
|
||||
unit_of_measurement: "count"
|
||||
|
||||
|
@ -68,6 +70,9 @@ input_label:
|
|||
door_window_sensor_158d00040ad8fc:
|
||||
name: Back Door
|
||||
icon: mdi:run-fast
|
||||
door_window_sensor_158d0004880f30:
|
||||
name: Garage Entry Door
|
||||
icon: mdi:run-fast
|
||||
basement_door_sensor_sensor:
|
||||
name: Basement Door
|
||||
icon: mdi:run-fast
|
||||
|
@ -152,6 +157,7 @@ automation:
|
|||
entity_id:
|
||||
- binary_sensor.door_window_sensor_158d000424a6d6
|
||||
- binary_sensor.door_window_sensor_158d00040ad8fc
|
||||
- binary_sensor.door_window_sensor_158d0004880f30 # garage entry door
|
||||
- binary_sensor.basement_door_sensor_sensor
|
||||
- binary_sensor.downstairs_multi_sensor_sensor
|
||||
- binary_sensor.front_room_multi_sensor_sensor
|
||||
|
@ -215,3 +221,4 @@ automation:
|
|||
- input_label.motion_sensor_158d000272bfd7
|
||||
- input_label.door_window_sensor_158d000424a6d6
|
||||
- input_label.door_window_sensor_158d00040ad8fc
|
||||
- input_label.door_window_sensor_158d0004880f30
|
||||
|
|
|
@ -20,6 +20,8 @@ homeassistant:
|
|||
hidden: true
|
||||
timer.timer_masterbedroom:
|
||||
hidden: true
|
||||
timer.timer_masterbathroom:
|
||||
hidden: true
|
||||
timer.timer_officeroom:
|
||||
hidden: true
|
||||
|
||||
|
@ -34,6 +36,8 @@ timer:
|
|||
duration: "00:05:00"
|
||||
timer_masterbedroom:
|
||||
duration: "00:05:00"
|
||||
timer_masterbathroom:
|
||||
duration: "00:05:00"
|
||||
timer_officeroom:
|
||||
duration: "00:05:00"
|
||||
|
||||
|
@ -48,6 +52,42 @@ timer:
|
|||
###############################################################################
|
||||
|
||||
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:
|
||||
# Motion Detected - Turn ON the light and extend timer
|
||||
###############################################################################
|
||||
|
@ -57,13 +97,15 @@ automation:
|
|||
- platform: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000272bfd7
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: timer.start
|
||||
entity_id: timer.timer_officeroom
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.office_room
|
||||
- condition: template
|
||||
value_template: "{{ states('sun.sun') == 'below_horizon' }}"
|
||||
|
||||
- alias: Officeroom Timer Elapsed
|
||||
initial_state: true
|
||||
|
@ -72,9 +114,15 @@ automation:
|
|||
event_type: timer.finished
|
||||
event_data:
|
||||
entity_id: timer.timer_officeroom
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_off
|
||||
entity_id: switch.office_room
|
||||
- service_template: >
|
||||
{{ '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:
|
||||
# # Motion Detected - Turn ON the light and extend timer
|
||||
|
@ -86,6 +134,10 @@ automation:
|
|||
entity_id: binary_sensor.motion_sensor_158d00016db6d2
|
||||
from: "off"
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: timer.start
|
||||
entity_id: timer.timer_frontroom
|
||||
|
@ -111,6 +163,9 @@ automation:
|
|||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: "below_horizon"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.kitchen
|
||||
|
@ -130,6 +185,9 @@ automation:
|
|||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: "below_horizon"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service_template: >
|
||||
{% if now().hour|int >= states('sensor.bedtime_hour') |int and
|
||||
|
@ -147,7 +205,7 @@ automation:
|
|||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.tv_multi_sensor_sensor
|
||||
# - binary_sensor.tv_multi_sensor_sensor
|
||||
- binary_sensor.motion_sensor_158d0001a25041
|
||||
from: "off"
|
||||
to: "on"
|
||||
|
@ -157,6 +215,9 @@ automation:
|
|||
state: "below_horizon"
|
||||
- condition: template
|
||||
value_template: "{{ states('input_boolean.movie_time') != 'on' }}"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_on
|
||||
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
|
||||
from: "active"
|
||||
to: "idle"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||
|
@ -201,6 +266,9 @@ automation:
|
|||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: "below_horizon"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data:
|
||||
|
@ -225,34 +293,16 @@ automation:
|
|||
entity_id: timer.timer_masterbedroom
|
||||
from: "active"
|
||||
to: "idle"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id: light.master_bedroom_1
|
||||
- service: light.turn_off
|
||||
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
|
||||
###############################################################################
|
||||
- alias: Garage Timer Start When Garage Lights ON
|
||||
|
@ -262,6 +312,10 @@ automation:
|
|||
entity_id: switch.garage
|
||||
from: "off"
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: timer.start
|
||||
entity_id: timer.timer_garage
|
||||
|
@ -280,6 +334,9 @@ automation:
|
|||
- condition: state
|
||||
entity_id: input_boolean.working_in_garage
|
||||
state: "off"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_off
|
||||
entity_id: switch.garage
|
||||
|
|
|
@ -63,6 +63,22 @@ sensor:
|
|||
- drive_smart_status
|
||||
- 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`,
|
||||
# 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:
|
||||
message: >
|
||||
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
|
||||
|
@ -113,26 +97,32 @@ script:
|
|||
sequence:
|
||||
- service: light.turn_off
|
||||
data_template:
|
||||
entity_id: >
|
||||
{%- for state in states.light if state.entity_id != 'light.gateway_light_34ce008ad65d' -%}
|
||||
{{- "," if not loop.first-}}{{ state.entity_id }}{{-endif-}}
|
||||
{%- endfor -%}
|
||||
entity_id:
|
||||
- light.family_room_lights
|
||||
- light.hue_color_lamp_1
|
||||
- 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
|
||||
data_template:
|
||||
entity_id: >
|
||||
{%- for state in states.switch if
|
||||
state.entity_id != 'switch.3d_printer' and
|
||||
state.entity_id != 'switch.tesla_model_3_charger_switch' and
|
||||
state.entity_id != 'switch.tesla_model_3_maxrange_switch' and
|
||||
state.entity_id != 'switch.tesla_model_3_update_switch' and
|
||||
state.entity_id != 'switch.mahasri_tesla_sentry_mode_switch' and
|
||||
state.entity_id != 'switch.wemoswitch1' and
|
||||
state.entity_id != 'switch.wallmote_switch' and
|
||||
state.entity_id != 'switch.wemobackyardlightswitch' and
|
||||
state.entity_id != 'switch.frontyard_light' and
|
||||
not 'ecolink' in state.entity_id -%}
|
||||
{{- "," if not loop.first-}}{{ state.entity_id }}{{-endif-}}
|
||||
{%- endfor -%}
|
||||
entity_id:
|
||||
- switch.basement_left
|
||||
- switch.basement_right
|
||||
- switch.downstairs_fragrance
|
||||
- switch.front_room
|
||||
- switch.garage
|
||||
- switch.garage_shop_lights
|
||||
- switch.guest_bedroom
|
||||
- switch.kids_bed_accent
|
||||
- switch.kids_bedroom
|
||||
- switch.kitchen
|
||||
- switch.office_room
|
||||
- switch.prayer_room
|
||||
- switch.upstairs_fragrance
|
||||
- switch.officeroom_accent_lights
|
||||
|
||||
###############################################################################
|
||||
# _____ ____ _
|
||||
|
|
|
@ -148,42 +148,34 @@ input_boolean:
|
|||
|
||||
movie_time:
|
||||
name: "Movie Time"
|
||||
initial: off
|
||||
icon: mdi:movie-roll
|
||||
|
||||
stream_camera2chromecast:
|
||||
name: Stream Cameras to Chromecast
|
||||
icon: mdi:cctv
|
||||
initial: on
|
||||
|
||||
home_security:
|
||||
name: Home Security System
|
||||
initial: off
|
||||
icon: mdi:verified
|
||||
|
||||
home_assistant_status:
|
||||
name: Home Status
|
||||
initial: off
|
||||
icon: mdi:home-assistant
|
||||
|
||||
working_in_garage:
|
||||
name: Working in Garage
|
||||
initial: off
|
||||
icon: mdi:worker
|
||||
|
||||
working_in_office_room:
|
||||
name: Working in Office Room
|
||||
initial: off
|
||||
icon: mdi:worker
|
||||
|
||||
hourly_report:
|
||||
name: Hourly Report
|
||||
initial: on
|
||||
icon: mdi:file-chart
|
||||
|
||||
nightly_report:
|
||||
name: Nightly Report
|
||||
initial: on
|
||||
icon: mdi:file-chart
|
||||
|
||||
notify_camera_alerts:
|
||||
|
@ -192,32 +184,22 @@ input_boolean:
|
|||
|
||||
trash_reminders:
|
||||
name: Remind Trash Notifications
|
||||
initial: on
|
||||
icon: mdi:recycle
|
||||
|
||||
enjoyable_weather_reminders:
|
||||
name: Remind me to enjoy Good Weather
|
||||
initial: on
|
||||
icon: mdi:weather-sunny
|
||||
|
||||
security_system_alerts:
|
||||
name: Notify Security System Status Change
|
||||
initial: on
|
||||
icon: mdi:verified
|
||||
|
||||
zone_alerts:
|
||||
name: Zone Alerts
|
||||
initial: on
|
||||
icon: mdi:map-marker
|
||||
|
||||
alarm_clock:
|
||||
name: Alarm Clock
|
||||
initial: on
|
||||
icon: mdi:calendar-check
|
||||
|
||||
battery_notifications:
|
||||
name: Battery Notifications
|
||||
initial: on
|
||||
icon: mdi:battery
|
||||
|
||||
sharp_tv:
|
||||
|
@ -233,16 +215,13 @@ input_boolean:
|
|||
light_automations:
|
||||
name: Light Automations
|
||||
icon: mdi:lightbulb-on
|
||||
initial: on
|
||||
|
||||
text_alerts:
|
||||
name: Text Alerts
|
||||
initial: on
|
||||
icon: mdi:map-marker
|
||||
|
||||
garage_door_notifications:
|
||||
name: Garage Door Notifications
|
||||
initial: on
|
||||
icon: mdi:garage
|
||||
|
||||
###############################################################################
|
||||
|
|
|
@ -1089,3 +1089,12 @@
|
|||
# data_template:
|
||||
# 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"
|
||||
|
||||
|
||||
# {% 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:
|
||||
# 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
|
||||
###############################################################################
|
||||
- alias: TV Dim Indoor Lights when TV is ON
|
||||
|
@ -61,77 +82,6 @@ automation:
|
|||
entity_id: light.hue_color_lamp_3
|
||||
brightness: 5
|
||||
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
|
||||
###############################################################################
|
||||
|
@ -167,8 +117,3 @@ automation:
|
|||
brightness: 255
|
||||
color_temp: 154
|
||||
transition: 5
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: /home/tv/backlight
|
||||
payload: "off"
|
||||
retain: true
|
||||
|
|
|
@ -27,6 +27,10 @@ automation:
|
|||
to: "on"
|
||||
for:
|
||||
hours: 2
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
data:
|
||||
|
@ -53,6 +57,9 @@ automation:
|
|||
state: "off"
|
||||
- condition: template
|
||||
value_template: "{{ states('input_boolean.garage_door_notifications') == 'on' }}"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
|
@ -75,8 +82,8 @@ automation:
|
|||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- switch.wemobackyardlightswitch
|
||||
- switch.frontyard_light
|
||||
- switch.backyard
|
||||
- switch.frontyard
|
||||
to: "on"
|
||||
for:
|
||||
minutes: 5
|
||||
|
@ -84,6 +91,9 @@ automation:
|
|||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: "above_horizon"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_off
|
||||
data_template:
|
||||
|
@ -103,7 +113,6 @@ automation:
|
|||
entity_id:
|
||||
- switch.basement_left
|
||||
- switch.basement_right
|
||||
- switch.downstairs_fragrance
|
||||
- switch.front_room
|
||||
- switch.guest_bedroom
|
||||
- switch.kids_bed_accent
|
||||
|
@ -123,6 +132,9 @@ automation:
|
|||
condition:
|
||||
- condition: template
|
||||
value_template: "{{ now().hour |int > 22 }}"
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: homeassistant.turn_off
|
||||
data_template:
|
||||
|
|
|
@ -208,8 +208,30 @@ automation:
|
|||
{% endif %}
|
||||
- service: input_boolean.turn_on
|
||||
data_template:
|
||||
entity_id: >
|
||||
{% set windspeed = states.sensor.dark_sky_wind_speed.state | round %}
|
||||
entity_id: >-
|
||||
{%- 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 ) ) -%}
|
||||
input_boolean.nice_breeze_alert
|
||||
{%- elif ( windspeed > 15 ) and ( windspeed <= 25 ) %}
|
||||
|
|
|
@ -31,6 +31,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d0002794cd6
|
||||
action_type: flip90
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service_template: light.toggle
|
||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||
|
@ -44,6 +48,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d0002794cd6
|
||||
action_type: flip180
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id: light.hue_color_lamp_1, light.hue_color_lamp_2, light.hue_color_lamp_3
|
||||
|
@ -61,6 +69,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d0002794cd6
|
||||
action_type: move
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.toggle
|
||||
entity_id: switch.kitchen
|
||||
|
@ -74,6 +86,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d0002794cd6
|
||||
action_type: tap_twice
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data_template:
|
||||
|
@ -92,13 +108,12 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d0002794cd6
|
||||
action_type: shake_air
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- 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:
|
||||
entity_id: binary_sensor.cube_158d00027c0276
|
||||
action_type: flip90
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service_template: switch.toggle
|
||||
entity_id: switch.front_room
|
||||
|
@ -130,6 +149,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d00027c0276
|
||||
action_type: move
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.toggle
|
||||
entity_id: switch.office_room
|
||||
|
@ -143,6 +166,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d00027c0276
|
||||
action_type: shake_air
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.toggle_do_not_disturb
|
||||
|
||||
|
@ -163,6 +190,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d00027cf60d
|
||||
action_type: flip90
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service_template: switch.toggle
|
||||
entity_id: switch.guest_bedroom
|
||||
|
@ -176,6 +207,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d00027cf60d
|
||||
action_type: shake_air
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.toggle_do_not_disturb
|
||||
|
||||
|
@ -196,6 +231,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d00027ce15c
|
||||
action_type: flip90
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service_template: switch.toggle
|
||||
entity_id: switch.kids_bedroom
|
||||
|
@ -209,6 +248,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d00027ce15c
|
||||
action_type: shake_air
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.toggle_do_not_disturb
|
||||
|
||||
|
@ -231,6 +274,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000276e3e8
|
||||
action_type: flip90
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: switch.toggle
|
||||
entity_id: switch.prayer_room
|
||||
|
@ -244,6 +291,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000276e3e8
|
||||
action_type: shake_air
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.toggle_do_not_disturb
|
||||
|
||||
|
@ -264,6 +315,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000278eb6a
|
||||
action_type: flip90
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: homeassistant.turn_off
|
||||
entity_id: group.downstairs_lights
|
||||
|
@ -279,6 +334,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000278eb6a
|
||||
action_type: flip180
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.toggle
|
||||
entity_id: light.master_bedroom_1
|
||||
|
@ -294,6 +353,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000278eb6a
|
||||
action_type: move
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id: light.master_bedroom_1
|
||||
|
@ -309,6 +372,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000278eb6a
|
||||
action_type: tap_twice
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data_template:
|
||||
|
@ -334,6 +401,10 @@ automation:
|
|||
event_data:
|
||||
entity_id: binary_sensor.cube_158d000278eb6a
|
||||
action_type: shake_air
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.toggle_do_not_disturb
|
||||
|
||||
|
|
|
@ -1,222 +1,222 @@
|
|||
###############################################################################
|
||||
# @author : Mahasri Kalavala
|
||||
# @date : 04/20/2018
|
||||
# @package : zwave batteries
|
||||
# @description : Zwave batteries using input_label & MQTT
|
||||
###############################################################################
|
||||
# ###############################################################################
|
||||
# # @author : Mahasri Kalavala
|
||||
# # @date : 04/20/2018
|
||||
# # @package : zwave batteries
|
||||
# # @description : Zwave batteries using input_label & MQTT
|
||||
# ###############################################################################
|
||||
|
||||
input_label:
|
||||
audio_detector:
|
||||
back_door_sensor:
|
||||
basement_door_sensor:
|
||||
downstairs_multi_sensor:
|
||||
zwave_front_door_sensor:
|
||||
front_room_multi_sensor:
|
||||
garage_door_sensor:
|
||||
guest_bedroom_multi_sensor:
|
||||
kitchen_motion_sensor:
|
||||
single_car_garage_door_tilt_sensor:
|
||||
stairs_motion_sensor:
|
||||
tv_multi_sensor:
|
||||
two_car_garage_door_tilt_sensor:
|
||||
upstairs_multi_sensor:
|
||||
wallmote:
|
||||
ecolink_motion_detector:
|
||||
ecolink_firefighter:
|
||||
ecolink_door_window_sensor_2:
|
||||
aeon_labs_zw100_multisensor_6_2:
|
||||
aeon_labs_zw100_multisensor_6:
|
||||
ecolink_door_window_sensor:
|
||||
ecolink_garage_door_tilt_sensor:
|
||||
# input_label:
|
||||
# audio_detector:
|
||||
# back_door_sensor:
|
||||
# basement_door_sensor:
|
||||
# downstairs_multi_sensor:
|
||||
# zwave_front_door_sensor:
|
||||
# front_room_multi_sensor:
|
||||
# garage_door_sensor:
|
||||
# guest_bedroom_multi_sensor:
|
||||
# kitchen_motion_sensor:
|
||||
# single_car_garage_door_tilt_sensor:
|
||||
# stairs_motion_sensor:
|
||||
# tv_multi_sensor:
|
||||
# two_car_garage_door_tilt_sensor:
|
||||
# upstairs_multi_sensor:
|
||||
# wallmote:
|
||||
# ecolink_motion_detector:
|
||||
# ecolink_firefighter:
|
||||
# ecolink_door_window_sensor_2:
|
||||
# aeon_labs_zw100_multisensor_6_2:
|
||||
# aeon_labs_zw100_multisensor_6:
|
||||
# ecolink_door_window_sensor:
|
||||
# ecolink_garage_door_tilt_sensor:
|
||||
|
||||
suresh_battery:
|
||||
mallika_battery:
|
||||
srinika_battery:
|
||||
hasika_battery:
|
||||
# suresh_battery:
|
||||
# mallika_battery:
|
||||
# srinika_battery:
|
||||
# hasika_battery:
|
||||
|
||||
suresh_charging:
|
||||
mallika_charging:
|
||||
srinika_charging:
|
||||
hasika_charging:
|
||||
# suresh_charging:
|
||||
# mallika_charging:
|
||||
# srinika_charging:
|
||||
# hasika_charging:
|
||||
|
||||
suresh_wifi:
|
||||
mallika_wifi:
|
||||
srinika_wifi:
|
||||
hasika_wifi:
|
||||
# suresh_wifi:
|
||||
# mallika_wifi:
|
||||
# srinika_wifi:
|
||||
# hasika_wifi:
|
||||
|
||||
###############################################################################
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||
#
|
||||
###############################################################################
|
||||
# ###############################################################################
|
||||
# # _ _ _
|
||||
# # /\ | | | | (_)
|
||||
# # / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# # / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||
# # / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||
# # /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||
# #
|
||||
# ###############################################################################
|
||||
|
||||
automation:
|
||||
- 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 %}
|
||||
# automation:
|
||||
# - 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
|
||||
# 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?"
|
||||
# # - 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 %}
|
||||
# # - 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
|
||||
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 %}
|
||||
# - 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
|
||||
# @date : 09/18/17
|
||||
# @package : Z-Wave package
|
||||
# @description : Z-Wave Still and it's configuration stuff
|
||||
#
|
||||
# This entire page is auto generated by the script (link below):
|
||||
# https://github.com/skalavala/mysmarthome/blob/master/jinja_helpers/zwave_auto_gen.md
|
||||
#################################################################
|
||||
# #################################################################
|
||||
# # @author : Mahasri Kalavala
|
||||
# # @date : 09/18/17
|
||||
# # @package : Z-Wave package
|
||||
# # @description : Z-Wave Still and it's configuration stuff
|
||||
# #
|
||||
# # This entire page is auto generated by the script (link below):
|
||||
# # https://github.com/skalavala/mysmarthome/blob/master/jinja_helpers/zwave_auto_gen.md
|
||||
# #################################################################
|
||||
|
||||
homeassistant:
|
||||
customize:
|
||||
# ZWave Binary Sensors
|
||||
binary_sensor.audio_detector_sensor:
|
||||
friendly_name: Audio Detector Sensor
|
||||
binary_sensor.basement_door_sensor_sensor:
|
||||
friendly_name: Basement Door Sensor
|
||||
binary_sensor.downstairs_multi_sensor_sensor:
|
||||
friendly_name: Downstairs Multi Sensor
|
||||
binary_sensor.front_door_sensor_sensor:
|
||||
friendly_name: Front Door Sensor
|
||||
binary_sensor.front_room_multi_sensor_sensor:
|
||||
friendly_name: Front Room Multi Sensor
|
||||
binary_sensor.garage_door_sensor_sensor:
|
||||
friendly_name: Garage Door Sensor
|
||||
binary_sensor.guest_bedroom_multi_sensor_sensor:
|
||||
friendly_name: Guest Bedroom Multi Sensor
|
||||
binary_sensor.kitchen_motion_sensor_sensor:
|
||||
friendly_name: Kitchen Motion Sensor
|
||||
binary_sensor.door_window_sensor_158d0004248d5b:
|
||||
friendly_name: Single Car Garage Door
|
||||
binary_sensor.stairs_motion_sensor_sensor:
|
||||
friendly_name: Stairs Motion Sensor
|
||||
binary_sensor.tv_multi_sensor_sensor:
|
||||
friendly_name: TV Multi Sensor
|
||||
binary_sensor.door_window_sensor_158d0004231f7b:
|
||||
friendly_name: Double Car Garage Door
|
||||
binary_sensor.upstairs_multi_sensor_sensor:
|
||||
friendly_name: Upstairs Multi Sensor
|
||||
# homeassistant:
|
||||
# customize:
|
||||
# # ZWave Binary Sensors
|
||||
# binary_sensor.audio_detector_sensor:
|
||||
# friendly_name: Audio Detector Sensor
|
||||
# binary_sensor.basement_door_sensor_sensor:
|
||||
# friendly_name: Basement Door Sensor
|
||||
# binary_sensor.downstairs_multi_sensor_sensor:
|
||||
# friendly_name: Downstairs Multi Sensor
|
||||
# binary_sensor.front_door_sensor_sensor:
|
||||
# friendly_name: Front Door Sensor
|
||||
# binary_sensor.front_room_multi_sensor_sensor:
|
||||
# friendly_name: Front Room Multi Sensor
|
||||
# binary_sensor.garage_door_sensor_sensor:
|
||||
# friendly_name: Garage Door Sensor
|
||||
# binary_sensor.guest_bedroom_multi_sensor_sensor:
|
||||
# friendly_name: Guest Bedroom Multi Sensor
|
||||
# binary_sensor.kitchen_motion_sensor_sensor:
|
||||
# friendly_name: Kitchen Motion Sensor
|
||||
# binary_sensor.door_window_sensor_158d0004248d5b:
|
||||
# friendly_name: Single Car Garage Door
|
||||
# binary_sensor.stairs_motion_sensor_sensor:
|
||||
# friendly_name: Stairs Motion Sensor
|
||||
# binary_sensor.tv_multi_sensor_sensor:
|
||||
# friendly_name: TV Multi Sensor
|
||||
# binary_sensor.door_window_sensor_158d0004231f7b:
|
||||
# friendly_name: Double Car Garage Door
|
||||
# binary_sensor.upstairs_multi_sensor_sensor:
|
||||
# friendly_name: Upstairs Multi Sensor
|
||||
|
||||
# ZWave Sensors
|
||||
sensor.audio_detector_alarm_level:
|
||||
friendly_name: Audio Detector Alarm Level
|
||||
sensor.audio_detector_alarm_type:
|
||||
friendly_name: Audio Detector Alarm Type
|
||||
sensor.audio_detector_burglar:
|
||||
friendly_name: Audio Detector Burglar
|
||||
sensor.audio_detector_carbon_monoxide:
|
||||
friendly_name: Audio Detector Carbon Monoxide
|
||||
sensor.audio_detector_power_management:
|
||||
friendly_name: Audio Detector Power Management
|
||||
sensor.audio_detector_smoke:
|
||||
friendly_name: Audio Detector Smoke
|
||||
sensor.audio_detector_sourcenodeid:
|
||||
friendly_name: Audio Detector SourceNodeId
|
||||
sensor.audio_detector_temperature:
|
||||
friendly_name: Audio Detector Temperature
|
||||
sensor.back_door_sensor_access_control:
|
||||
friendly_name: Back Door Sensor Access Control
|
||||
sensor.back_door_sensor_alarm_level:
|
||||
friendly_name: Back Door Sensor Alarm Level
|
||||
sensor.back_door_sensor_alarm_type:
|
||||
friendly_name: Back Door Sensor Alarm Type
|
||||
sensor.back_door_sensor_burglar:
|
||||
friendly_name: Back Door Sensor Burglar
|
||||
sensor.back_door_sensor_power_management:
|
||||
friendly_name: Back Door Sensor Power Management
|
||||
sensor.back_door_sensor_sourcenodeid:
|
||||
friendly_name: Back Door Sensor SourceNodeId
|
||||
sensor.basement_door_sensor_access_control:
|
||||
friendly_name: Basement Door Sensor Access Control
|
||||
sensor.basement_door_sensor_alarm_level:
|
||||
friendly_name: Basement Door Sensor Alarm Level
|
||||
sensor.basement_door_sensor_alarm_type:
|
||||
friendly_name: Basement Door Sensor Alarm Type
|
||||
sensor.basement_door_sensor_burglar:
|
||||
friendly_name: Basement Door Sensor Burglar
|
||||
sensor.basement_door_sensor_power_management:
|
||||
friendly_name: Basement Door Sensor Power Management
|
||||
sensor.basement_door_sensor_sourcenodeid:
|
||||
friendly_name: Basement Door Sensor SourceNodeId
|
||||
sensor.downstairs_multi_sensor_alarm_level:
|
||||
friendly_name: Downstairs Multi Sensor Alarm Level
|
||||
sensor.downstairs_multi_sensor_alarm_type:
|
||||
friendly_name: Downstairs Multi Sensor Alarm Type
|
||||
sensor.downstairs_multi_sensor_burglar:
|
||||
friendly_name: Downstairs Multi Sensor Burglar
|
||||
sensor.downstairs_multi_sensor_luminance:
|
||||
friendly_name: Downstairs Multi Sensor Luminance
|
||||
sensor.downstairs_multi_sensor_power:
|
||||
friendly_name: Downstairs Multi Sensor Power
|
||||
sensor.downstairs_multi_sensor_relative_humidity:
|
||||
friendly_name: Downstairs Multi Sensor Relative Humidity
|
||||
sensor.downstairs_multi_sensor_sourcenodeid:
|
||||
friendly_name: Downstairs Multi Sensor SourceNodeId
|
||||
sensor.downstairs_multi_sensor_temperature:
|
||||
friendly_name: Downstairs Multi Sensor Temperature
|
||||
sensor.front_room_multi_sensor_alarm_level:
|
||||
friendly_name: Front Room Multi Sensor Alarm Level
|
||||
sensor.front_room_multi_sensor_alarm_type:
|
||||
friendly_name: Front Room Multi Sensor Alarm Type
|
||||
sensor.front_room_multi_sensor_burglar:
|
||||
friendly_name: Front Room Multi Sensor Burglar
|
||||
sensor.front_room_multi_sensor_luminance:
|
||||
friendly_name: Front Room Multi Sensor Luminance
|
||||
sensor.front_room_multi_sensor_relative_humidity:
|
||||
friendly_name: Front Room Multi Sensor Relative Humidity
|
||||
sensor.front_room_multi_sensor_sourcenodeid:
|
||||
friendly_name: Front Room Multi Sensor SourceNodeId
|
||||
sensor.front_room_multi_sensor_temperature:
|
||||
friendly_name: Front Room Multi Sensor Temperature
|
||||
sensor.front_room_multi_sensor_ultraviolet:
|
||||
friendly_name: Front Room Multi Sensor Ultraviolet
|
||||
sensor.garage_door_sensor_access_control:
|
||||
friendly_name: Garage Door Sensor Access Control
|
||||
sensor.garage_door_sensor_alarm_level:
|
||||
friendly_name: Garage Door Sensor Alarm Level
|
||||
sensor.garage_door_sensor_alarm_type:
|
||||
friendly_name: Garage Door Sensor Alarm Type
|
||||
sensor.garage_door_sensor_burglar:
|
||||
friendly_name: Garage Door Sensor Burglar
|
||||
sensor.garage_door_sensor_power_management:
|
||||
friendly_name: Garage Door Sensor Power Management
|
||||
sensor.garage_door_sensor_sourcenodeid:
|
||||
friendly_name: Garage Door Sensor SourceNodeId
|
||||
sensor.single_car_garage_door_sensor_status:
|
||||
friendly_name: Single Car Garage Door Sensor Status
|
||||
sensor.two_car_garage_door_sensor_status:
|
||||
friendly_name: Double Car Garage Door Sensor Status
|
||||
sensor.guest_bedroom_multi_sensor_alarm_level:
|
||||
friendly_name: Guest Bedroom Multi Sensor Alarm Level
|
||||
sensor.guest_bedroom_multi_sensor_alarm_type:
|
||||
friendly_name: Guest Bedroom Multi Sensor Alarm Type
|
||||
sensor.guest_bedroom_multi_sensor_burglar:
|
||||
friendly_name: Guest Bedroom Multi Sensor Burglar
|
||||
sensor.guest_bedroom_multi_sensor_luminance:
|
||||
friendly_name: Guest Bedroom Multi Sensor Luminance
|
||||
sensor.guest_bedroom_multi_sensor_relative_humidity:
|
||||
friendly_name: Guest Bedroom Multi Sensor Relative Humidity
|
||||
sensor.guest_bedroom_multi_sensor_sourcenodeid:
|
||||
friendly_name: Guest Bedroom Multi Sensor SourceNodeId
|
||||
sensor.guest_bedroom_multi_sensor_temperature:
|
||||
friendly_name: Guest Bedroom Multi Sensor Temperature
|
||||
sensor.guest_bedroom_multi_sensor_ultraviolet:
|
||||
friendly_name: Guest Bedroom Multi Sensor Ultraviolet
|
||||
sensor.kitchen_motion_sensor_alarm_level:
|
||||
friendly_name: Kitchen Motion Sensor Alarm Level
|
||||
sensor.kitchen_motion_sensor_alarm_type:
|
||||
friendly_name: Kitchen Motion Sensor Alarm Type
|
||||
sensor.kitchen_motion_sensor_burglar:
|
||||
friendly_name: Kitchen Motion Sensor Burglar
|
||||
sensor.kitchen_motion_sensor_power_management:
|
||||
friendly_name: Kitchen Motion Sensor Power Management
|
||||
sensor.kitchen_motion_sensor_sourcenodeid:
|
||||
friendly_name: Kitchen Motion Sensor SourceNodeId
|
||||
sensor.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:
|
||||
friendly_name: Single Car Garage Door Tilt Sensor Alarm Level
|
||||
sensor.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:
|
||||
friendly_name: Single Car Garage Door Tilt Sensor Burglar
|
||||
sensor.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:
|
||||
friendly_name: Single Car Garage Door Tilt Sensor SourceNodeId
|
||||
sensor.stairs_motion_sensor_alarm_level:
|
||||
friendly_name: Stairs Motion Sensor Alarm Level
|
||||
sensor.stairs_motion_sensor_alarm_type:
|
||||
friendly_name: Stairs Motion Sensor Alarm Type
|
||||
sensor.stairs_motion_sensor_burglar:
|
||||
friendly_name: Stairs Motion Sensor Burglar
|
||||
sensor.stairs_motion_sensor_power_management:
|
||||
friendly_name: Stairs Motion Sensor Power Management
|
||||
sensor.stairs_motion_sensor_sourcenodeid:
|
||||
friendly_name: Stairs Motion Sensor SourceNodeId
|
||||
sensor.tv_multi_sensor_alarm_level:
|
||||
friendly_name: TV Multi Sensor Alarm Level
|
||||
sensor.tv_multi_sensor_alarm_type:
|
||||
friendly_name: TV Multi Sensor Alarm Type
|
||||
sensor.tv_multi_sensor_burglar:
|
||||
friendly_name: TV Multi Sensor Burglar
|
||||
sensor.tv_multi_sensor_luminance:
|
||||
friendly_name: TV Multi Sensor Luminance
|
||||
sensor.tv_multi_sensor_relative_humidity:
|
||||
friendly_name: TV Multi Sensor Relative Humidity
|
||||
sensor.tv_multi_sensor_sourcenodeid:
|
||||
friendly_name: TV Multi Sensor SourceNodeId
|
||||
sensor.tv_multi_sensor_temperature:
|
||||
friendly_name: TV Multi Sensor Temperature
|
||||
sensor.tv_multi_sensor_ultraviolet:
|
||||
friendly_name: TV Multi Sensor Ultraviolet
|
||||
sensor.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:
|
||||
friendly_name: Two Car Garage Door Tilt Sensor Alarm Level
|
||||
sensor.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:
|
||||
friendly_name: Two Car Garage Door Tilt Sensor Burglar
|
||||
sensor.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:
|
||||
friendly_name: Two Car Garage Door Tilt Sensor SourceNodeId
|
||||
sensor.upstairs_multi_sensor_alarm_level:
|
||||
friendly_name: Upstairs Multi Sensor Alarm Level
|
||||
sensor.upstairs_multi_sensor_alarm_type:
|
||||
friendly_name: Upstairs Multi Sensor Alarm Type
|
||||
sensor.upstairs_multi_sensor_burglar:
|
||||
friendly_name: Upstairs Multi Sensor Burglar
|
||||
sensor.upstairs_multi_sensor_luminance:
|
||||
friendly_name: Upstairs Multi Sensor Luminance
|
||||
sensor.upstairs_multi_sensor_relative_humidity:
|
||||
friendly_name: Upstairs Multi Sensor Relative Humidity
|
||||
sensor.upstairs_multi_sensor_sourcenodeid:
|
||||
friendly_name: Upstairs Multi Sensor SourceNodeId
|
||||
sensor.upstairs_multi_sensor_temperature:
|
||||
friendly_name: Upstairs Multi Sensor Temperature
|
||||
sensor.upstairs_multi_sensor_ultraviolet:
|
||||
friendly_name: Upstairs Multi Sensor Ultraviolet
|
||||
sensor.wallmote_alarm_level:
|
||||
friendly_name: Wallmote Alarm Level
|
||||
sensor.wallmote_alarm_type:
|
||||
friendly_name: Wallmote Alarm Type
|
||||
sensor.wallmote_power_management:
|
||||
friendly_name: Wallmote Power Management
|
||||
sensor.wallmote_sourcenodeid:
|
||||
friendly_name: Wallmote SourceNodeId
|
||||
sensor.zwave_smart_switch_current:
|
||||
friendly_name: ZWave Smart Switch Current
|
||||
sensor.zwave_smart_switch_energy:
|
||||
friendly_name: ZWave Smart Switch Energy
|
||||
sensor.zwave_smart_switch_power:
|
||||
friendly_name: ZWave Smart Switch Power
|
||||
sensor.zwave_smart_switch_previous_reading:
|
||||
friendly_name: ZWave Smart Switch Previous Reading
|
||||
sensor.zwave_smart_switch_voltage:
|
||||
friendly_name: ZWave Smart Switch Voltage
|
||||
# # ZWave Sensors
|
||||
# sensor.audio_detector_alarm_level:
|
||||
# friendly_name: Audio Detector Alarm Level
|
||||
# sensor.audio_detector_alarm_type:
|
||||
# friendly_name: Audio Detector Alarm Type
|
||||
# sensor.audio_detector_burglar:
|
||||
# friendly_name: Audio Detector Burglar
|
||||
# sensor.audio_detector_carbon_monoxide:
|
||||
# friendly_name: Audio Detector Carbon Monoxide
|
||||
# sensor.audio_detector_power_management:
|
||||
# friendly_name: Audio Detector Power Management
|
||||
# sensor.audio_detector_smoke:
|
||||
# friendly_name: Audio Detector Smoke
|
||||
# sensor.audio_detector_sourcenodeid:
|
||||
# friendly_name: Audio Detector SourceNodeId
|
||||
# sensor.audio_detector_temperature:
|
||||
# friendly_name: Audio Detector Temperature
|
||||
# sensor.back_door_sensor_access_control:
|
||||
# friendly_name: Back Door Sensor Access Control
|
||||
# sensor.back_door_sensor_alarm_level:
|
||||
# friendly_name: Back Door Sensor Alarm Level
|
||||
# sensor.back_door_sensor_alarm_type:
|
||||
# friendly_name: Back Door Sensor Alarm Type
|
||||
# sensor.back_door_sensor_burglar:
|
||||
# friendly_name: Back Door Sensor Burglar
|
||||
# sensor.back_door_sensor_power_management:
|
||||
# friendly_name: Back Door Sensor Power Management
|
||||
# sensor.back_door_sensor_sourcenodeid:
|
||||
# friendly_name: Back Door Sensor SourceNodeId
|
||||
# sensor.basement_door_sensor_access_control:
|
||||
# friendly_name: Basement Door Sensor Access Control
|
||||
# sensor.basement_door_sensor_alarm_level:
|
||||
# friendly_name: Basement Door Sensor Alarm Level
|
||||
# sensor.basement_door_sensor_alarm_type:
|
||||
# friendly_name: Basement Door Sensor Alarm Type
|
||||
# sensor.basement_door_sensor_burglar:
|
||||
# friendly_name: Basement Door Sensor Burglar
|
||||
# sensor.basement_door_sensor_power_management:
|
||||
# friendly_name: Basement Door Sensor Power Management
|
||||
# sensor.basement_door_sensor_sourcenodeid:
|
||||
# friendly_name: Basement Door Sensor SourceNodeId
|
||||
# sensor.downstairs_multi_sensor_alarm_level:
|
||||
# friendly_name: Downstairs Multi Sensor Alarm Level
|
||||
# sensor.downstairs_multi_sensor_alarm_type:
|
||||
# friendly_name: Downstairs Multi Sensor Alarm Type
|
||||
# sensor.downstairs_multi_sensor_burglar:
|
||||
# friendly_name: Downstairs Multi Sensor Burglar
|
||||
# sensor.downstairs_multi_sensor_luminance:
|
||||
# friendly_name: Downstairs Multi Sensor Luminance
|
||||
# sensor.downstairs_multi_sensor_power:
|
||||
# friendly_name: Downstairs Multi Sensor Power
|
||||
# sensor.downstairs_multi_sensor_relative_humidity:
|
||||
# friendly_name: Downstairs Multi Sensor Relative Humidity
|
||||
# sensor.downstairs_multi_sensor_sourcenodeid:
|
||||
# friendly_name: Downstairs Multi Sensor SourceNodeId
|
||||
# sensor.downstairs_multi_sensor_temperature:
|
||||
# friendly_name: Downstairs Multi Sensor Temperature
|
||||
# sensor.front_room_multi_sensor_alarm_level:
|
||||
# friendly_name: Front Room Multi Sensor Alarm Level
|
||||
# sensor.front_room_multi_sensor_alarm_type:
|
||||
# friendly_name: Front Room Multi Sensor Alarm Type
|
||||
# sensor.front_room_multi_sensor_burglar:
|
||||
# friendly_name: Front Room Multi Sensor Burglar
|
||||
# sensor.front_room_multi_sensor_luminance:
|
||||
# friendly_name: Front Room Multi Sensor Luminance
|
||||
# sensor.front_room_multi_sensor_relative_humidity:
|
||||
# friendly_name: Front Room Multi Sensor Relative Humidity
|
||||
# sensor.front_room_multi_sensor_sourcenodeid:
|
||||
# friendly_name: Front Room Multi Sensor SourceNodeId
|
||||
# sensor.front_room_multi_sensor_temperature:
|
||||
# friendly_name: Front Room Multi Sensor Temperature
|
||||
# sensor.front_room_multi_sensor_ultraviolet:
|
||||
# friendly_name: Front Room Multi Sensor Ultraviolet
|
||||
# sensor.garage_door_sensor_access_control:
|
||||
# friendly_name: Garage Door Sensor Access Control
|
||||
# sensor.garage_door_sensor_alarm_level:
|
||||
# friendly_name: Garage Door Sensor Alarm Level
|
||||
# sensor.garage_door_sensor_alarm_type:
|
||||
# friendly_name: Garage Door Sensor Alarm Type
|
||||
# sensor.garage_door_sensor_burglar:
|
||||
# friendly_name: Garage Door Sensor Burglar
|
||||
# sensor.garage_door_sensor_power_management:
|
||||
# friendly_name: Garage Door Sensor Power Management
|
||||
# sensor.garage_door_sensor_sourcenodeid:
|
||||
# friendly_name: Garage Door Sensor SourceNodeId
|
||||
# sensor.single_car_garage_door_sensor_status:
|
||||
# friendly_name: Single Car Garage Door Sensor Status
|
||||
# sensor.two_car_garage_door_sensor_status:
|
||||
# friendly_name: Double Car Garage Door Sensor Status
|
||||
# sensor.guest_bedroom_multi_sensor_alarm_level:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Alarm Level
|
||||
# sensor.guest_bedroom_multi_sensor_alarm_type:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Alarm Type
|
||||
# sensor.guest_bedroom_multi_sensor_burglar:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Burglar
|
||||
# sensor.guest_bedroom_multi_sensor_luminance:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Luminance
|
||||
# sensor.guest_bedroom_multi_sensor_relative_humidity:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Relative Humidity
|
||||
# sensor.guest_bedroom_multi_sensor_sourcenodeid:
|
||||
# friendly_name: Guest Bedroom Multi Sensor SourceNodeId
|
||||
# sensor.guest_bedroom_multi_sensor_temperature:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Temperature
|
||||
# sensor.guest_bedroom_multi_sensor_ultraviolet:
|
||||
# friendly_name: Guest Bedroom Multi Sensor Ultraviolet
|
||||
# sensor.kitchen_motion_sensor_alarm_level:
|
||||
# friendly_name: Kitchen Motion Sensor Alarm Level
|
||||
# sensor.kitchen_motion_sensor_alarm_type:
|
||||
# friendly_name: Kitchen Motion Sensor Alarm Type
|
||||
# sensor.kitchen_motion_sensor_burglar:
|
||||
# friendly_name: Kitchen Motion Sensor Burglar
|
||||
# sensor.kitchen_motion_sensor_power_management:
|
||||
# friendly_name: Kitchen Motion Sensor Power Management
|
||||
# sensor.kitchen_motion_sensor_sourcenodeid:
|
||||
# friendly_name: Kitchen Motion Sensor SourceNodeId
|
||||
# sensor.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:
|
||||
# friendly_name: Single Car Garage Door Tilt Sensor Alarm Level
|
||||
# sensor.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:
|
||||
# friendly_name: Single Car Garage Door Tilt Sensor Burglar
|
||||
# sensor.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:
|
||||
# friendly_name: Single Car Garage Door Tilt Sensor SourceNodeId
|
||||
# sensor.stairs_motion_sensor_alarm_level:
|
||||
# friendly_name: Stairs Motion Sensor Alarm Level
|
||||
# sensor.stairs_motion_sensor_alarm_type:
|
||||
# friendly_name: Stairs Motion Sensor Alarm Type
|
||||
# sensor.stairs_motion_sensor_burglar:
|
||||
# friendly_name: Stairs Motion Sensor Burglar
|
||||
# sensor.stairs_motion_sensor_power_management:
|
||||
# friendly_name: Stairs Motion Sensor Power Management
|
||||
# sensor.stairs_motion_sensor_sourcenodeid:
|
||||
# friendly_name: Stairs Motion Sensor SourceNodeId
|
||||
# sensor.tv_multi_sensor_alarm_level:
|
||||
# friendly_name: TV Multi Sensor Alarm Level
|
||||
# sensor.tv_multi_sensor_alarm_type:
|
||||
# friendly_name: TV Multi Sensor Alarm Type
|
||||
# sensor.tv_multi_sensor_burglar:
|
||||
# friendly_name: TV Multi Sensor Burglar
|
||||
# sensor.tv_multi_sensor_luminance:
|
||||
# friendly_name: TV Multi Sensor Luminance
|
||||
# sensor.tv_multi_sensor_relative_humidity:
|
||||
# friendly_name: TV Multi Sensor Relative Humidity
|
||||
# sensor.tv_multi_sensor_sourcenodeid:
|
||||
# friendly_name: TV Multi Sensor SourceNodeId
|
||||
# sensor.tv_multi_sensor_temperature:
|
||||
# friendly_name: TV Multi Sensor Temperature
|
||||
# sensor.tv_multi_sensor_ultraviolet:
|
||||
# friendly_name: TV Multi Sensor Ultraviolet
|
||||
# sensor.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:
|
||||
# friendly_name: Two Car Garage Door Tilt Sensor Alarm Level
|
||||
# sensor.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:
|
||||
# friendly_name: Two Car Garage Door Tilt Sensor Burglar
|
||||
# sensor.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:
|
||||
# friendly_name: Two Car Garage Door Tilt Sensor SourceNodeId
|
||||
# sensor.upstairs_multi_sensor_alarm_level:
|
||||
# friendly_name: Upstairs Multi Sensor Alarm Level
|
||||
# sensor.upstairs_multi_sensor_alarm_type:
|
||||
# friendly_name: Upstairs Multi Sensor Alarm Type
|
||||
# sensor.upstairs_multi_sensor_burglar:
|
||||
# friendly_name: Upstairs Multi Sensor Burglar
|
||||
# sensor.upstairs_multi_sensor_luminance:
|
||||
# friendly_name: Upstairs Multi Sensor Luminance
|
||||
# sensor.upstairs_multi_sensor_relative_humidity:
|
||||
# friendly_name: Upstairs Multi Sensor Relative Humidity
|
||||
# sensor.upstairs_multi_sensor_sourcenodeid:
|
||||
# friendly_name: Upstairs Multi Sensor SourceNodeId
|
||||
# sensor.upstairs_multi_sensor_temperature:
|
||||
# friendly_name: Upstairs Multi Sensor Temperature
|
||||
# sensor.upstairs_multi_sensor_ultraviolet:
|
||||
# friendly_name: Upstairs Multi Sensor Ultraviolet
|
||||
# sensor.wallmote_alarm_level:
|
||||
# friendly_name: Wallmote Alarm Level
|
||||
# sensor.wallmote_alarm_type:
|
||||
# friendly_name: Wallmote Alarm Type
|
||||
# sensor.wallmote_power_management:
|
||||
# friendly_name: Wallmote Power Management
|
||||
# sensor.wallmote_sourcenodeid:
|
||||
# friendly_name: Wallmote SourceNodeId
|
||||
# sensor.zwave_smart_switch_current:
|
||||
# friendly_name: ZWave Smart Switch Current
|
||||
# sensor.zwave_smart_switch_energy:
|
||||
# friendly_name: ZWave Smart Switch Energy
|
||||
# sensor.zwave_smart_switch_power:
|
||||
# friendly_name: ZWave Smart Switch Power
|
||||
# sensor.zwave_smart_switch_previous_reading:
|
||||
# friendly_name: ZWave Smart Switch Previous Reading
|
||||
# sensor.zwave_smart_switch_voltage:
|
||||
# friendly_name: ZWave Smart Switch Voltage
|
||||
|
||||
# ZWave Switches
|
||||
# # ZWave Switches
|
||||
|
||||
switch.kitchen_siren_switch:
|
||||
friendly_name: Kitchen Siren Switch 1
|
||||
switch.kitchen_siren_switch_2:
|
||||
friendly_name: Kitchen Siren Switch 2
|
||||
switch.kitchen_siren_switch_3:
|
||||
friendly_name: Kitchen Siren Switch 3
|
||||
switch.kitchen_siren_switch_4:
|
||||
friendly_name: Kitchen Siren Switch 4
|
||||
switch.kitchen_siren_switch_5:
|
||||
friendly_name: Kitchen Siren Switch 5
|
||||
switch.wallmote_switch:
|
||||
friendly_name: Wallmote Switch
|
||||
# switch.kitchen_siren_switch:
|
||||
# friendly_name: Kitchen Siren Switch 1
|
||||
# switch.kitchen_siren_switch_2:
|
||||
# friendly_name: Kitchen Siren Switch 2
|
||||
# switch.kitchen_siren_switch_3:
|
||||
# friendly_name: Kitchen Siren Switch 3
|
||||
# switch.kitchen_siren_switch_4:
|
||||
# friendly_name: Kitchen Siren Switch 4
|
||||
# switch.kitchen_siren_switch_5:
|
||||
# friendly_name: Kitchen Siren Switch 5
|
||||
# switch.wallmote_switch:
|
||||
# friendly_name: Wallmote Switch
|
||||
|
||||
zwave:
|
||||
usb_path: /dev/ttyACM0
|
||||
network_key: !secret zwave_network_key
|
||||
# zwave:
|
||||
# usb_path: /dev/ttyACM0
|
||||
# network_key: !secret zwave_network_key
|
||||
|
||||
###############################################################################
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||
#
|
||||
###############################################################################
|
||||
automation:
|
||||
- alias: WallMote Button 1 Pressed
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
event_data:
|
||||
entity_id: zwave.wallmote
|
||||
scene_id: 1
|
||||
action:
|
||||
- service: light.toggle
|
||||
entity_id: light.master_bedroom_1
|
||||
- service: light.toggle
|
||||
entity_id: light.master_bedroom_2
|
||||
# ###############################################################################
|
||||
# # _ _ _
|
||||
# # /\ | | | | (_)
|
||||
# # / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# # / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||
# # / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||
# # /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||
# #
|
||||
# ###############################################################################
|
||||
# automation:
|
||||
# - alias: WallMote Button 1 Pressed
|
||||
# trigger:
|
||||
# - platform: event
|
||||
# event_type: zwave.scene_activated
|
||||
# event_data:
|
||||
# entity_id: zwave.wallmote
|
||||
# scene_id: 1
|
||||
# action:
|
||||
# - service: light.toggle
|
||||
# entity_id: light.master_bedroom_1
|
||||
# - service: light.toggle
|
||||
# entity_id: light.master_bedroom_2
|
||||
|
||||
- alias: WallMote Button 2 Pressed
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
event_data:
|
||||
entity_id: zwave.wallmote
|
||||
scene_id: 2
|
||||
action:
|
||||
- service: homeassistant.turn_off
|
||||
entity_id: group.upstairs_lights
|
||||
# - alias: WallMote Button 2 Pressed
|
||||
# trigger:
|
||||
# - platform: event
|
||||
# event_type: zwave.scene_activated
|
||||
# event_data:
|
||||
# entity_id: zwave.wallmote
|
||||
# scene_id: 2
|
||||
# action:
|
||||
# - service: homeassistant.turn_off
|
||||
# entity_id: group.upstairs_lights
|
||||
|
||||
- alias: WallMote Button 3 Pressed
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
event_data:
|
||||
entity_id: zwave.wallmote
|
||||
scene_id: 3
|
||||
action:
|
||||
- service: climate.set_away_mode
|
||||
data_template:
|
||||
entity_id: climate.dining_room
|
||||
away_mode: "false"
|
||||
# - alias: WallMote Button 3 Pressed
|
||||
# trigger:
|
||||
# - platform: event
|
||||
# event_type: zwave.scene_activated
|
||||
# event_data:
|
||||
# entity_id: zwave.wallmote
|
||||
# scene_id: 3
|
||||
# action:
|
||||
# - service: climate.set_away_mode
|
||||
# data_template:
|
||||
# entity_id: climate.dining_room
|
||||
# away_mode: "false"
|
||||
|
||||
- alias: WallMote Button 4 Pressed
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
event_data:
|
||||
entity_id: zwave.wallmote
|
||||
scene_id: 4
|
||||
action:
|
||||
- service: climate.set_away_mode
|
||||
data_template:
|
||||
entity_id: climate.dining_room
|
||||
away_mode: "true"
|
||||
# - alias: WallMote Button 4 Pressed
|
||||
# trigger:
|
||||
# - platform: event
|
||||
# event_type: zwave.scene_activated
|
||||
# event_data:
|
||||
# entity_id: zwave.wallmote
|
||||
# scene_id: 4
|
||||
# action:
|
||||
# - service: climate.set_away_mode
|
||||
# data_template:
|
||||
# entity_id: climate.dining_room
|
||||
# away_mode: "true"
|
||||
|
|
Loading…
Reference in New Issue