mirror of
https://github.com/thejeffreystone/home-assistant-configuration.git
synced 2025-04-19 01:46:04 +00:00
Version 3
This commit is contained in:
parent
78cc052167
commit
361375cf5c
44
README.md
Normal file
44
README.md
Normal file
@ -0,0 +1,44 @@
|
||||
|
||||
## Anchorage House - [Home Assistant](https://home-assistant.io/) Configuration
|
||||
|
||||
This repo contains the working [Home Assistant](https://home-assistant.io/) configuration for **Anchorage House**. Below are links to the devices currently being used, blog posts, and other HA enthusists that provided inspiration and configs to help build this config. All of the code is free to use.
|
||||
|
||||
This is an updated config. I went through and decided to clean up my previous config, so here we are at V3 of my config.
|
||||
|
||||
The configuration was migrated from a old PC to a RaspberryPi 3 back in 2017. The old configutation is stored in branch V2-config for anyone that wants to see the old version.
|
||||
|
||||
Read about the continuing work to automate **everything** over on my [blog](https://medium.com/@thejeffreystone). But be warned, it really hasn't been updated in a while.
|
||||
|
||||
#### Devices:
|
||||
* Apple Devices (Macbooks, Mac Mini, iPhones, iPads)
|
||||
* [Honeywell Wifi Thermostat](http://a.co/cqvrljP)
|
||||
* [Amazon Echo Dot](http://a.co/7VYHqvw)
|
||||
* [Smartthings](http://a.co/2xWyXF5)
|
||||
* [GE Z-Wave Switches](http://a.co/3OUpcMf)
|
||||
* [Aeon Energy Switchs](http://a.co/7aKBkst)
|
||||
* [First Alert Z-Wave Smoke/CO2](http://a.co/iTuEjU8)
|
||||
* [GoControl Z-Wave Bulbs](http://a.co/ajfXdIS)
|
||||
* [Cree Connect Bulbs](http://a.co/91ddysL)
|
||||
* [Foscam FI8918W](http://a.co/cExSWZ7)
|
||||
* [GoControl Z-Wave Garage Door Opener](http://a.co/iw3H4zQ)
|
||||
* [ZWave Door Sensor]( http://a.co/4Uj8d5r)
|
||||
* [Sonoff WiFi Wireless Smart Switch ]( http://a.co/9v8KnBT)
|
||||
* [Levitron Plug in ZWave Dimmer](http://a.co/8wOv1Gs)
|
||||
* [Levitron ZWave Switch](http://a.co/1z9EeS3) I prefer these over the GE Ones
|
||||
* [Dome Motion Sensor](http://a.co/aFlzEmf)
|
||||
* [Dome Door Window Sensor](http://a.co/eo4DsIk)
|
||||
* AppleTv
|
||||
* ChromeCast
|
||||
* Roku Streaming Stick
|
||||
* [NeoTec USB SDR](http://a.co/giwQvX1) For getting data from Accurite temperture and humidty sensors
|
||||
* [Accurite Temp and Humidty Sensors](http://a.co/hcppyvF)
|
||||
* [Sonoff Wifi Switches](http://a.co/dh5hCZu)
|
||||
|
||||
#### Integrations:
|
||||
* Amazon Echo
|
||||
* IFTTT
|
||||
* Owntracks
|
||||
* MQTT (For Smartthings and Owntracks)
|
||||
* Eero For Networked Devices
|
||||
* [Smartthings-MQTT-Bridge](https://github.com/stjohnjohnson/smartthings-mqtt-bridge)
|
||||
* [RTL_433](https://github.com/merbanan/rtl_433)
|
10
alerts/jeff_bad_traffic_home.yaml
Executable file
10
alerts/jeff_bad_traffic_home.yaml
Executable file
@ -0,0 +1,10 @@
|
||||
jeff_bad_traffic_home:
|
||||
name: Leave Now! Currently {{states.sensor.jeff_ett_home.attributes.duration_in_traffic}} mins home!
|
||||
done_message: Canceling Traffic Alert
|
||||
entity_id: input_boolean.jeff_traffic_alert_home
|
||||
state: 'on'
|
||||
repeat: 10
|
||||
can_acknowledge: True
|
||||
skip_first: False
|
||||
notifiers:
|
||||
- jeff_ios
|
10
alerts/kat_heading_home.yanl
Executable file
10
alerts/kat_heading_home.yanl
Executable file
@ -0,0 +1,10 @@
|
||||
kat_heading_home:
|
||||
name: Kat will be home in {{states.sensor.kat_ett_home.attributes.duration_in_traffic}}.
|
||||
done_message: Kat is home
|
||||
entity_id: input_boolean.kat_heading_home
|
||||
state: 'on'
|
||||
repeat: 20
|
||||
can_acknowledge: True
|
||||
skip_first: False
|
||||
notifiers:
|
||||
- jeff_ios
|
10
alerts/lockdown_issue.yaml
Executable file
10
alerts/lockdown_issue.yaml
Executable file
@ -0,0 +1,10 @@
|
||||
lockdown_issue:
|
||||
name: Issue Prevented Lockdown...Please Check
|
||||
done_message: Issue Resolved...Anchorage House Ready
|
||||
entity_id: input_boolean.lockdown_issue
|
||||
state: 'on'
|
||||
repeat: 2
|
||||
can_acknowledge: True
|
||||
skip_first: False
|
||||
notifiers:
|
||||
- jeff_ios
|
10
alerts/unauthorized_access.yaml
Executable file
10
alerts/unauthorized_access.yaml
Executable file
@ -0,0 +1,10 @@
|
||||
unauthorized_access:
|
||||
name: Unauthorized Access Detected at Anchorage House
|
||||
done_message: Access Authorized
|
||||
entity_id: input_boolean.security_alarm
|
||||
state: 'on'
|
||||
repeat: 2
|
||||
can_acknowledge: True
|
||||
skip_first: False
|
||||
notifiers:
|
||||
- jeff_ios
|
81
automations/daily.yaml
Executable file
81
automations/daily.yaml
Executable file
@ -0,0 +1,81 @@
|
||||
|
||||
#
|
||||
#
|
||||
# Daily Triggers
|
||||
#
|
||||
#
|
||||
#####################
|
||||
- alias: Good Morning
|
||||
trigger:
|
||||
- platform: time
|
||||
hours: 5
|
||||
minutes: 15
|
||||
seconds: 0
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.livingroom_dim
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.dim_kitchen
|
||||
|
||||
- alias: Good Morning
|
||||
trigger:
|
||||
- platform: time
|
||||
hours: 7
|
||||
minutes: 0
|
||||
seconds: 0
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.livingroom_normal
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.normal_kitchen
|
||||
|
||||
- alias: Good Night
|
||||
trigger:
|
||||
- platform: time
|
||||
hours: 22
|
||||
minutes: 30
|
||||
seconds: 0
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.livingroom_night
|
||||
- service: light.turn_off
|
||||
data:
|
||||
entity_id: light.loft_lamp
|
||||
- service: script.turn_on
|
||||
entity_id: script.driveway_off
|
||||
|
||||
- alias: Outside Lights on at Sunset
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
offset: -00:30:00
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.front_porch
|
||||
- service: script.sunset_garage_open
|
||||
|
||||
- alias: Outside Lights off at Sunrise
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunrise
|
||||
action:
|
||||
- service: switch.turn_off
|
||||
data:
|
||||
entity_id: switch.front_porch
|
||||
|
||||
- alias: Inside on at Sunset
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
offset: -01:00:00
|
||||
action:
|
||||
service: script.inside_all_on
|
||||
|
||||
- alias: Inside off at Sunrise
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunrise
|
||||
offset: 00:30:00
|
||||
action:
|
||||
- service: script.inside_all_off
|
20
automations/door.yaml
Executable file
20
automations/door.yaml
Executable file
@ -0,0 +1,20 @@
|
||||
|
||||
#
|
||||
#
|
||||
# DoorAutomations
|
||||
#
|
||||
#
|
||||
#####################
|
||||
|
||||
# - alias: Door Opened
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: group.doors
|
||||
# from: 'off'
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.audible_notifications
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: shell_command.door_chime
|
99
automations/events.yaml
Executable file
99
automations/events.yaml
Executable file
@ -0,0 +1,99 @@
|
||||
#
|
||||
#
|
||||
# Events
|
||||
#
|
||||
############
|
||||
|
||||
#- alias: Trash Morning Notification
|
||||
# trigger:
|
||||
# - platform: time
|
||||
# hours: 6
|
||||
# minutes: 0
|
||||
# seconds: 0
|
||||
# condition:
|
||||
# - condition: time
|
||||
# weekday:
|
||||
# - tue
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.vacation_mode
|
||||
# state: 'off'
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.trash_notification
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: notify.all_ios
|
||||
# data:
|
||||
# message: Don't forget to it is Trash Day
|
||||
|
||||
#- alias: Washer Running
|
||||
# trigger:
|
||||
# - platform: numeric_state
|
||||
# entity_id: sensor.washer_power
|
||||
# above: 100
|
||||
# action:
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id: input_boolean.washer_running
|
||||
|
||||
#- alias: Washer Complete
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.washer_status
|
||||
# from: 'running'
|
||||
# to: 'idle'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.washer_running
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: input_boolean.turn_off
|
||||
# entity_id: input_boolean.washer_running
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id: input_boolean.washer_notification
|
||||
|
||||
#- alias: Washer Emptied
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: binary_sensor.washer_door
|
||||
# from: 'off'
|
||||
# to: 'on'
|
||||
# action:
|
||||
# - service: homeassistant.turn_off
|
||||
# entity_id: script.washer_finished_notification
|
||||
# - service: input_boolean.turn_off
|
||||
# entity_id: input_boolean.washer_notification
|
||||
|
||||
#- alias: Washer Notification
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: input_boolean.washer_notification
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: sensor.family_status
|
||||
# state: home
|
||||
# action:
|
||||
# - service: homeassistant.turn_on
|
||||
# entity_id: script.washer_finished_notification
|
||||
|
||||
#- alias: Get Dressed Skylar
|
||||
# trigger:
|
||||
# - platform: time
|
||||
# hours: 7
|
||||
# minutes: 58
|
||||
# seconds: 0
|
||||
# condition:
|
||||
# - condition: time
|
||||
# weekday:
|
||||
# - mon
|
||||
# - tue
|
||||
# - wed
|
||||
# - thu
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.guest_mode
|
||||
# state: 'off'
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.skylar_dressed_alarm
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: script.skylar_dressed_alarm
|
||||
|
72
automations/garage.yaml
Executable file
72
automations/garage.yaml
Executable file
@ -0,0 +1,72 @@
|
||||
#
|
||||
#
|
||||
# Garage
|
||||
#
|
||||
############
|
||||
|
||||
|
||||
- alias: Close Garage at lights out
|
||||
trigger:
|
||||
- platform: time
|
||||
hours: 22
|
||||
minutes: 30
|
||||
seconds: 0
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.garage_door
|
||||
state: 'on'
|
||||
action:
|
||||
- service: script.close_garage
|
||||
|
||||
- alias: Garage Open At Sunset
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.garage_door
|
||||
state: 'on'
|
||||
action:
|
||||
- service: script.driveway_on
|
||||
|
||||
- alias: Garage Opening Driveway Lights On
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.garage_door
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
action:
|
||||
- service: script.driveway_on
|
||||
|
||||
- alias: Garage Closing Driveway Lights Off
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.garage_door
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.side_door
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: script.turn_on
|
||||
entity_id: script.driveway_off
|
||||
|
||||
# - alias: Garage Motion after Sunset
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: binary_sensor.garage_motion
|
||||
# from: 'off'
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: sun.sun
|
||||
# state: 'below_horizon'
|
||||
# action:
|
||||
# - service: notify.jeff_ios
|
||||
# data:
|
||||
# message: 'Motion: Garage'
|
110
automations/presence.yaml
Executable file
110
automations/presence.yaml
Executable file
@ -0,0 +1,110 @@
|
||||
|
||||
#
|
||||
#
|
||||
# Presence Automations
|
||||
#
|
||||
#
|
||||
#####################
|
||||
|
||||
- alias: Family Has arrived
|
||||
trigger:
|
||||
- entity_id: sensor.family_presence
|
||||
from: Away
|
||||
platform: state
|
||||
to: Home
|
||||
action:
|
||||
- service: script.standby
|
||||
- service: script.driveway_on
|
||||
- service: script.vacation_canceled
|
||||
- service: script.appliances_on
|
||||
- service: script.family_is_home
|
||||
|
||||
- alias: Family Has Left
|
||||
trigger:
|
||||
- entity_id: sensor.family_presence
|
||||
from: Home
|
||||
platform: state
|
||||
to: Away
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'off'
|
||||
action:
|
||||
- service: script.lockdown
|
||||
- service: script.appliances_off
|
||||
- service: script.family_is_away
|
||||
|
||||
- alias: Jeff Arrives Home
|
||||
trigger:
|
||||
- entity_id: sensor.jeff_presence
|
||||
from: 'not present'
|
||||
platform: state
|
||||
to: 'present'
|
||||
action:
|
||||
- service: script.jeff_destination_na
|
||||
- service: script.driveway_on
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.jeff_heading_home
|
||||
|
||||
- alias: Jeff Arrives At Summit
|
||||
trigger:
|
||||
- entity_id: device_tracker.jeffreystonesiphone
|
||||
event: enter
|
||||
platform: zone
|
||||
zone: zone.summit
|
||||
action:
|
||||
- service: script.jeff_destination_na
|
||||
#- service: script.jeff_at_work_notification
|
||||
|
||||
- alias: Jeff Leaves Summit
|
||||
trigger:
|
||||
- entity_id: device_tracker.jeffreystonesiphone
|
||||
event: leave
|
||||
platform: zone
|
||||
zone: zone.summit
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.jeff_traffic_alert_home
|
||||
|
||||
- alias: Kat Arrives Home
|
||||
trigger:
|
||||
- entity_id: sensor.kat_presence
|
||||
from: 'not present'
|
||||
platform: state
|
||||
to: 'present'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.kat_heading_home
|
||||
- service: script.driveway_on
|
||||
|
||||
- alias: Kat Arrives at Zoo
|
||||
trigger:
|
||||
- platform: zone
|
||||
event: enter
|
||||
zone: zone.zoo_atlanta
|
||||
entity_id: device_tracker.katherinestonesiphone
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.text_notify_jeff
|
||||
state: 'on'
|
||||
action:
|
||||
- service: notify.ios_jeffreystonesiphone
|
||||
data:
|
||||
message: Kat is at Zoo Atlanta
|
||||
|
||||
- alias: Kat Leaves Zoo Notification
|
||||
trigger:
|
||||
- platform: zone
|
||||
event: leave
|
||||
zone: zone.zoo_atlanta
|
||||
entity_id: device_tracker.katherinestonesiphone
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.text_notify_jeff
|
||||
state: 'on'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.kat_heading_home
|
||||
|
||||
|
||||
|
284
automations/security.yaml
Executable file
284
automations/security.yaml
Executable file
@ -0,0 +1,284 @@
|
||||
|
||||
#
|
||||
#
|
||||
# Security
|
||||
#
|
||||
# For all these automations the condition should be
|
||||
#
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.secure_mode
|
||||
# state: 'on'
|
||||
#
|
||||
#
|
||||
#####################
|
||||
|
||||
- alias: Nightly Lockdown
|
||||
trigger:
|
||||
- platform: time
|
||||
hours: 23
|
||||
minutes: 00
|
||||
seconds: 0
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: sensor.jeff_presence
|
||||
state: 'present'
|
||||
- condition: state
|
||||
entity_id: sensor.kat_presence
|
||||
state: 'present'
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'off'
|
||||
action:
|
||||
- service: script.lockdown
|
||||
|
||||
- alias: Morning Standby
|
||||
trigger:
|
||||
- platform: time
|
||||
hours: 5
|
||||
minutes: 30
|
||||
seconds: 0
|
||||
condition:
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sensor.family_presence
|
||||
state: 'Home'
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'on'
|
||||
action:
|
||||
- service: script.standby
|
||||
|
||||
- alias: Activate Security
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.secure_mode
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.security_check
|
||||
|
||||
- alias: Deactivate Security
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.secure_mode
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: script.standby
|
||||
|
||||
- alias: Security Precheck
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.security_check
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
- service: script.security_check_zones
|
||||
- service: script.security_check_garage
|
||||
- service: script.security_check_verified
|
||||
- service: script.lockdown_aborted
|
||||
|
||||
- alias: Security Breach
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.all_doors
|
||||
to: 'On'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.garage_dome_sensor
|
||||
to: 'On'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.secure_mode
|
||||
state: 'on'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.security_breach_warning
|
||||
|
||||
- alias: Security Alarm Countdown
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.security_breach_warning
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
- service: script.turn_on
|
||||
entity_id: script.security_issue
|
||||
|
||||
- alias: Security Issue Canceled
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.security_breach_warning
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: script.turn_off
|
||||
entity_id: script.security_issue
|
||||
|
||||
- alias: Security Alarm Canceled
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.security_alarm
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: script.turn_off
|
||||
entity_id: script.security_issue
|
||||
- service: script.security_alarm_off
|
||||
- service: script.turn_off
|
||||
entity_id: script.security_alarm_delay
|
||||
|
||||
# - alias: Security Breach Garage Door
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.garage_door_contact
|
||||
# to: open
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.secure_mode
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: script.security_warning_garage_door
|
||||
|
||||
# - alias: Security Breach Garage Motion
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.garage_motion
|
||||
# to: motion
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.secure_mode
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: script.security_warning_garage_motion
|
||||
|
||||
# - alias: Security Breach Front Door
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.front_door
|
||||
# to: open
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.secure_mode
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: script.security_warning_front_door
|
||||
|
||||
# - alias: Security Breach Back Door
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.zone_3
|
||||
# to: open
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.secure_mode
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: script.security_warning_back_door
|
||||
|
||||
|
||||
# - alias: Security Breach Landry Door
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.Laundry_room_door
|
||||
# to: open
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.secure_mode
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: script.security_warning_laundry_door
|
||||
|
||||
- alias: Security Access Granted
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.jeff_presence
|
||||
to: 'present'
|
||||
- platform: state
|
||||
entity_id: sensor.kat_presence
|
||||
to: 'present'
|
||||
- platform: state
|
||||
entity_id: sensor.family_presence
|
||||
to: 'Home'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.secure_mode
|
||||
state: 'on'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.security_alarm
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.security_breach_warning
|
||||
- service: script.turn_off
|
||||
entity_id: script.security_alarm_delay
|
||||
|
||||
# - alias: Security Alarm Activated Home
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id: input_boolean.security_alarm
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: sensor.family_presence
|
||||
# state: 'Home'
|
||||
# action:
|
||||
# - service: script.security_alarm_on
|
||||
|
||||
- alias: Security Alarm Activated Away
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_boolean.security_alarm
|
||||
to: 'on'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: sensor.family_presence
|
||||
state: 'Away'
|
||||
action:
|
||||
- service: script.turn_on
|
||||
entity_id: script.security_alarm_delay
|
||||
|
||||
# - alias: Security Issue
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id: input_boolean.security_issue
|
||||
# to: 'on'
|
||||
# action:
|
||||
# - service: homeassistant.turn_on
|
||||
# entity_id: script.security_report
|
||||
|
||||
|
||||
# - alias: Security Issue Resolved
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: group.all_doors
|
||||
# to: 'off'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: cover.garage_door
|
||||
# state: 'off'
|
||||
# - condition: state
|
||||
# entity_id: group.doors
|
||||
# state: 'off'
|
||||
# action:
|
||||
# - service: input_boolean.turn_off
|
||||
# entity_id: input_boolean.security_issue
|
||||
|
||||
- alias: Late Arrival Lockdown
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.jeff_presence
|
||||
to: 'present'
|
||||
- platform: state
|
||||
entity_id: sensor.kat_presence
|
||||
to: 'present'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'off'
|
||||
- condition: time
|
||||
after: '23:00:00'
|
||||
before: '05:00:00'
|
||||
action:
|
||||
- service: script.lockdown_delay
|
||||
|
67
automations/transit.yaml
Executable file
67
automations/transit.yaml
Executable file
@ -0,0 +1,67 @@
|
||||
#
|
||||
#
|
||||
# Transit Based Automations
|
||||
#
|
||||
############
|
||||
|
||||
# - alias: Jeff eta home
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.jeff_destination
|
||||
# to: Home
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.text_notify_kat
|
||||
# state: 'on'
|
||||
# action:
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id: input_boolean.jeff_heading_home
|
||||
|
||||
##### Jeff Traffic Alerts
|
||||
- alias: Enable Jeff Bad Traffic Home
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.jeff_ett_home
|
||||
above: 59
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: sensor.jeff_location
|
||||
state: 'Summit'
|
||||
- condition: state
|
||||
entity_id: input_boolean.jeff_traffic_alerts
|
||||
state: 'on'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.jeff_traffic_alert_home
|
||||
|
||||
- alias: Disabling Jeff Bad Traffic Home
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.jeff_ett_home
|
||||
below: 40
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.jeff_traffic_alert_home
|
||||
state: 'on'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.jeff_traffic_alert_home
|
||||
|
||||
- alias: Enable Vacation Mode
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.jeff_ett_home
|
||||
above: 180
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.kat_ett_home
|
||||
above: 180
|
||||
condition:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.jeff_ett_home
|
||||
above: 180
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.kat_ett_home
|
||||
above: 180
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.vacation_mode
|
125
automations/weather.yaml
Executable file
125
automations/weather.yaml
Executable file
@ -0,0 +1,125 @@
|
||||
#
|
||||
#
|
||||
# Weather
|
||||
#
|
||||
############
|
||||
|
||||
- alias: Cloudy porch on early
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
offset: -01:30:00
|
||||
condition:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.dark_sky_cloud_coverage
|
||||
above: 70
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.front_porch_left
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.front_porch_right
|
||||
|
||||
- alias: Kill Audible Tornado Alarm
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.tornado_alarm
|
||||
to: 'off'
|
||||
action:
|
||||
- service: script.chromecast_media_stop
|
||||
- service: homeassistant.turn_off
|
||||
entity_id: script.tornado_alarm
|
||||
|
||||
- alias: Sound Audible Tornado Alarm
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.tornado_alarm
|
||||
to: "on"
|
||||
action:
|
||||
- service: homeassistant.turn_on
|
||||
entity_id: script.tornado_alarm
|
||||
|
||||
- alias: Tornado Warning
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.tornado_warning
|
||||
to: "active"
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.tornado_alarm
|
||||
- service: script.wxalert_tile
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Tornado Warning Issued for Anchorage House!!!!
|
||||
|
||||
- alias: Tornado Watch Issued
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.tornado_watch
|
||||
to: "active"
|
||||
action:
|
||||
- service: script.wxalert_tile
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Tornado Watch Issued
|
||||
- service: script.annc_tornado_watch
|
||||
|
||||
- alias: TStorm Warning Issued
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.tstorm_warning
|
||||
to: "active"
|
||||
action:
|
||||
- service: script.wxalert_tile
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Severe Thunderstorm Warning Issued
|
||||
- service: script.annc_tstorm_warning
|
||||
|
||||
- alias: Severe Statement Issued
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.storm_statement
|
||||
to: "active"
|
||||
action:
|
||||
- service: script.wxalert_tile
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Severe Weather Statement Issued
|
||||
- service: script.annc_storm_statement
|
||||
|
||||
- alias: TStorm Watch Issued
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.tstorm_watch
|
||||
to: "active"
|
||||
action:
|
||||
- service: script.wxalert_tile
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Severe Thunderstorm Watch Issued
|
||||
- service: script.annc_tstorm_watch
|
||||
|
||||
#- alias: Wx Alert Notification
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id: sensor.pws_alerts
|
||||
# action:
|
||||
# - service: script.wxalert_tile
|
||||
|
||||
- alias: "Weather Watch Tornado"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.pws_alerts
|
||||
condition:
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: template
|
||||
value_template: '{{ states.sensor.pws_alerts.attributes.Description == "Tornado Watch" }}'
|
||||
- condition: template
|
||||
value_template: '{{ states.sensor.pws_alerts.attributes.Description_TOW == "Tornado Watch" }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.tornado_watch
|
||||
- service: script.wxalert_tile
|
42
binary_sensors/doors.yaml
Executable file
42
binary_sensors/doors.yaml
Executable file
@ -0,0 +1,42 @@
|
||||
- platform: mqtt
|
||||
name: "Back Door"
|
||||
state_topic: "smartthings/Back Door/contact"
|
||||
payload_on: "open"
|
||||
payload_off: "closed"
|
||||
retain: true
|
||||
device_class: door
|
||||
- platform: mqtt
|
||||
name: "Garage Door"
|
||||
state_topic: "smartthings/Garage Door/contact"
|
||||
payload_on: "open"
|
||||
payload_off: "closed"
|
||||
retain: true
|
||||
device_class: garage_door
|
||||
- platform: mqtt
|
||||
name: "Front Door"
|
||||
state_topic: "smartthings/Front Door/contact"
|
||||
payload_on: "open"
|
||||
payload_off: "closed"
|
||||
retain: true
|
||||
device_class: door
|
||||
- platform: mqtt
|
||||
name: "Laundry Room Door"
|
||||
state_topic: "smartthings/Laundry Room Door/contact"
|
||||
payload_on: "open"
|
||||
payload_off: "closed"
|
||||
retain: true
|
||||
device_class: door
|
||||
- platform: mqtt
|
||||
name: "Attic Door" # Dome Door Sensor
|
||||
state_topic: "smartthings/Attic Door/contact"
|
||||
payload_on: "open"
|
||||
payload_off: "closed"
|
||||
retain: true
|
||||
device_class: door
|
||||
- platform: mqtt
|
||||
name: "Side Door" # Dome Door Sensor
|
||||
state_topic: "smartthings/Washer Door/contact"
|
||||
payload_on: "open"
|
||||
payload_off: "closed"
|
||||
retain: true
|
||||
device_class: door
|
7
binary_sensors/motion.yaml
Executable file
7
binary_sensors/motion.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
- platform: mqtt
|
||||
name: "Garage Dome Sensor" # Dome Motion Sensor
|
||||
state_topic: "smartthings/Garage Motion/contact"
|
||||
payload_on: "active"
|
||||
payload_off: "inactive"
|
||||
retain: true
|
||||
device_class: motion
|
221
configuration.yaml
Executable file
221
configuration.yaml
Executable file
@ -0,0 +1,221 @@
|
||||
homeassistant:
|
||||
name: Home
|
||||
latitude: !secret MY_LATITUDE
|
||||
longitude: !secret MY_LONGITUDE
|
||||
elevation: 315
|
||||
unit_system: imperial
|
||||
time_zone: America/New_York
|
||||
customize: !include customize.yaml
|
||||
|
||||
frontend:
|
||||
themes:
|
||||
blue:
|
||||
primary-color: "#356AA0"
|
||||
|
||||
http:
|
||||
api_password: !secret MY_API_PASS
|
||||
#ssl_certificate: !secret SSL_CERT
|
||||
#ssl_key: !secret SSL_KEY
|
||||
#base_url: !secret BASEURL
|
||||
cors_allowed_origins:
|
||||
- https://google.com
|
||||
- https://home-assistant.io
|
||||
use_x_forwarded_for: True
|
||||
trusted_networks:
|
||||
- 127.0.0.1
|
||||
ip_ban_enabled: True
|
||||
login_attempts_threshold: 5
|
||||
|
||||
config:
|
||||
|
||||
cloud:
|
||||
alexa:
|
||||
filter:
|
||||
include_entities:
|
||||
- sensor.accurite_back_porch_temperature
|
||||
- sensor.accurite_garage_temperature
|
||||
- sensor.kat_location
|
||||
- sensor.jeff_location
|
||||
- sensor.jeff_ett_home
|
||||
- sensor.kat_ett_home
|
||||
include_domains:
|
||||
- switch
|
||||
- light
|
||||
- cover
|
||||
- scene
|
||||
- script
|
||||
- input_boolean
|
||||
exclude_domains:
|
||||
- group
|
||||
- alert
|
||||
- automation
|
||||
entity_config:
|
||||
sensor.accurite_back_porch_temperature:
|
||||
name: Back Porch
|
||||
description: Back Porch Temperature
|
||||
sensor.accurite_garage_temperature:
|
||||
name: Garage
|
||||
description: Garage Temperature
|
||||
sensor.kat_location:
|
||||
name: Kats Location
|
||||
description: Kats Location
|
||||
sensor.jeff_location:
|
||||
name: Jeffs Location
|
||||
description: Jeffs Location
|
||||
sensor.jeff_ett_home:
|
||||
name: Jeffs Arrival
|
||||
description: Jeffs arrival in minutes
|
||||
sensor.kat_ett_home:
|
||||
name: Kats Arrival
|
||||
description: Katss arrival in minutes
|
||||
|
||||
alexa:
|
||||
|
||||
conversation:
|
||||
|
||||
device_tracker:
|
||||
- platform: icloud
|
||||
username: !secret ICLOUD_USER
|
||||
password: !secret ICLOUD_PASS
|
||||
track_new_devices: yes
|
||||
- platform: eero_tracker
|
||||
consider_home: 300
|
||||
interval_seconds: 60 # Recommended...do not set this lower than 25, we don't want to DDOS Eero
|
||||
|
||||
discovery:
|
||||
|
||||
updater:
|
||||
|
||||
sun:
|
||||
|
||||
recorder:
|
||||
purge_keep_days: 5
|
||||
exclude:
|
||||
domains:
|
||||
- automation
|
||||
- weblink
|
||||
- updater
|
||||
entities:
|
||||
- sun.sun
|
||||
- sensor.last_boot
|
||||
- sensor.date
|
||||
|
||||
logger:
|
||||
default: warn
|
||||
|
||||
history:
|
||||
|
||||
cast:
|
||||
|
||||
media_player:
|
||||
- platform: apple_tv
|
||||
host: 192.168.7.58
|
||||
login_id: !secret apple_tv_login
|
||||
credentials: !secret apple_cred
|
||||
- platform: roku
|
||||
host: 192.168.7.52
|
||||
name: roku living room
|
||||
- platform: yamaha
|
||||
host: 192.168.7.56
|
||||
source_ignore:
|
||||
- "AUX"
|
||||
- "V-AUX"
|
||||
- "AV1"
|
||||
- "AV2"
|
||||
- "AV3"
|
||||
- "AV4"
|
||||
- "AV5"
|
||||
- "AV6"
|
||||
- "SiriusXM"
|
||||
- "Pandora"
|
||||
- "Rhapsody"
|
||||
- "TURNER"
|
||||
- "AUDIO1"
|
||||
- "AUDIO2"
|
||||
- "SERVER"
|
||||
source_names:
|
||||
HDMI1: "BluRay"
|
||||
HDMI2: "Chromecast"
|
||||
HDMI3: "Xbox"
|
||||
HDMI4: "Roku"
|
||||
HDMI5: "AppleTv"
|
||||
zone_ignore:
|
||||
- "Zone_2"
|
||||
zone_names:
|
||||
Main_Zone: "Theater"
|
||||
|
||||
|
||||
tts:
|
||||
- platform: google
|
||||
cache: true
|
||||
cache_dir: /tmp/tts
|
||||
time_memory: 300
|
||||
|
||||
notify:
|
||||
- platform: ios
|
||||
- name: all_ios
|
||||
platform: group
|
||||
services:
|
||||
- service: ios_jeffreystonesiphone
|
||||
- service: ios_jeffreystonesipad
|
||||
- service: ios_katherinestonesiphone
|
||||
- name: jeff_ios
|
||||
platform: group
|
||||
services:
|
||||
- service: ios_jeffreystonesiphone
|
||||
- service: ios_jeffreystonesipad
|
||||
|
||||
mqtt:
|
||||
broker: !secret MQTT_HOST
|
||||
port: 1883
|
||||
username: !secret MQTT_USER
|
||||
password: !secret MQTT_PASS
|
||||
|
||||
|
||||
### Includes ###
|
||||
alert: !include_dir_merge_named alerts/
|
||||
group: !include groups.yaml
|
||||
automation: !include_dir_merge_list automations/
|
||||
sensor: !include_dir_merge_list sensors
|
||||
binary_sensor: !include_dir_merge_list binary_sensors
|
||||
light: !include_dir_merge_list lights
|
||||
switch: !include_dir_merge_list switches
|
||||
script: !include_dir_merge_named scripts/
|
||||
intent_script: !include intents/intents.yaml
|
||||
scene: !include scenes.yaml
|
||||
input_select: !include input_select.yaml
|
||||
input_boolean: !include input_boolean.yaml
|
||||
zone: !include zones.yaml
|
||||
|
||||
### Devices and Services
|
||||
|
||||
cover:
|
||||
- platform: mqtt
|
||||
name: "Garage Door"
|
||||
state_topic: 'smartthings/Garage Door/contact'
|
||||
command_topic: 'smartthings/Garage Door/door'
|
||||
state_open: 'open'
|
||||
state_closed: 'closed'
|
||||
payload_open: 'open'
|
||||
payload_close: 'closed'
|
||||
retain: true
|
||||
optimistic: true
|
||||
|
||||
climate:
|
||||
platform: honeywell
|
||||
username: !secret HONEYWELL_USER
|
||||
password: !secret HONEYWELL_PASS
|
||||
name: First Floor
|
||||
region: us
|
||||
scan_interval: 600
|
||||
|
||||
map:
|
||||
|
||||
### Custom Commands
|
||||
|
||||
shell_command:
|
||||
alarm_off: pkill mpg123
|
||||
tornado_alarm: mpg123 /media/audio/Tornado_Siren.mp3
|
||||
door_chime: mpg123 /media/audio/Store_Door_Chime.mp3
|
||||
security_alarm: mpg123 /media/audio/security_siren.mp3
|
||||
security_alarm_intro: mpg123 /media/audio/Siren_Noise.mp3
|
301
customize.yaml
Executable file
301
customize.yaml
Executable file
@ -0,0 +1,301 @@
|
||||
### CUSTOMIZE ###
|
||||
|
||||
# Speedtest #
|
||||
sensor.speedtest_ping:
|
||||
icon: mdi:speedometer
|
||||
friendly_name: Ping
|
||||
sensor.speedtest_download:
|
||||
icon: mdi:download
|
||||
friendly_name: Download
|
||||
sensor.speedtest_upload:
|
||||
icon: mdi:upload
|
||||
friendly_name: Upload
|
||||
|
||||
|
||||
# Weather #
|
||||
sensor.dark_sky_summary:
|
||||
icon: mdi:leaf
|
||||
friendly_name: Conditions
|
||||
sensor.dark_sky_temperature:
|
||||
icon: mdi:thermometer-lines
|
||||
friendly_name: 'Outdoor Temperature'
|
||||
sensor.dark_sky_apparent_temperature:
|
||||
icon: mdi:thermometer-lines
|
||||
friendly_name: 'Apparent Temperature'
|
||||
sensor.dark_sky_precip:
|
||||
icon: mdi:weather-pouring
|
||||
friendly_name: Precipitation
|
||||
sensor.dark_sky_precip_probability:
|
||||
icon: mdi:weather-pouring
|
||||
friendly_name: Precipitation Chance
|
||||
sensor.dark_sky_precip_intensity:
|
||||
icon: mdi:weather-pouring
|
||||
friendly_name: Precip Intensity
|
||||
sensor.dark_sky_humidity:
|
||||
icon: mdi:water-percent
|
||||
friendly_name: 'Outdoor Humidity'
|
||||
sensor.dark_sky_cloud_coverage:
|
||||
icon: mdi:weather-cloudy
|
||||
friendly_name: Cloud Coverage
|
||||
sensor.dark_sky_nearest_storm_distance:
|
||||
icon: mdi:weather-lightning
|
||||
friendly_name: Nearest Storm Distance
|
||||
sensor.dark_sky_nearest_storm_bearing:
|
||||
icon: mdi:compass-outline
|
||||
friendly_name: Nearest Storm Bearing
|
||||
sensor.dark_sky_wind_speed:
|
||||
icon: mdi:weather-windy
|
||||
friendly_name: Wind Speed
|
||||
sensor.pws_wind_mph:
|
||||
icon: mdi:weather-windy
|
||||
friendly_name: Wind Speed
|
||||
sensor.pws_wind_gust_mph:
|
||||
icon: mdi:weather-windy
|
||||
friendly_name: Wind Gusts
|
||||
sensor.pws_precip_today_in:
|
||||
icon: mdi:gauge
|
||||
friendly_name: Rain Gauge
|
||||
sensor.dark_sky_wind_bearing:
|
||||
icon: mdi:compass-outline
|
||||
friendly_name: Wind Direction
|
||||
sensor.pws_wind_dir:
|
||||
icon: mdi:compass-outline
|
||||
friendly_name: Wind Direction
|
||||
sensor.dark_sky_ozone:
|
||||
icon: mdi:cloud
|
||||
sensor.dark_sky_pressure:
|
||||
icon: mdi:weight
|
||||
friendly_name: Pressure
|
||||
sensor.dark_sky_dew_point:
|
||||
icon: mdi:thermometer
|
||||
friendly_name: Dew Point
|
||||
sensor.dark_sky_visability:
|
||||
icon: mdi:eye-outline
|
||||
friendly_name: Visability
|
||||
sensor.dark_sky_daily_low_temperature:
|
||||
friendly_name: Todays Low
|
||||
icon: thermometer-lines
|
||||
sensor.dark_sky_daily_high_temperature:
|
||||
friendly_name: Todays High
|
||||
icon: thermometer-lines
|
||||
sensor.dark_sky_daily_max_precip_intensity:
|
||||
friendly_name: Rain Intensity
|
||||
icon: gauge
|
||||
sensor.pws_alerts:
|
||||
friendly_name: "Weather Alerts"
|
||||
icon: mdi:alert
|
||||
|
||||
# Jeff #
|
||||
|
||||
sensor.jeffrey_location:
|
||||
entity_picture: !secret JEFF_ICON
|
||||
friendly_name: Jeff
|
||||
sensor.jeff_location:
|
||||
entity_picture: !secret JEFF_ICON
|
||||
sensor.jeff_destination:
|
||||
icon: mdi:google-maps
|
||||
name: "Jeffs Destination"
|
||||
device_tracker.jeffreystonesiphone:
|
||||
entity_picture: !secret JEFF_ICON
|
||||
friendly_name: Jeff
|
||||
sensor.jeff_iphone_batt:
|
||||
friendly_name: "Jeff's iPhone Battery"
|
||||
sensor.jeff_ett_home:
|
||||
friendly_name: "Jeff's ETA Home"
|
||||
icon: mdi:car
|
||||
device_tracker.jeffreystonesipad:
|
||||
icon: mdi:tablet-ipad
|
||||
friendly_name: "Jeff's iPad"
|
||||
device_tracker.jeffreysmbp:
|
||||
icon: mdi:laptop-mac
|
||||
friendly_name: "Jeff's MacBook"
|
||||
device_tracker.jstonemac:
|
||||
icon: mdi:laptop-mac
|
||||
friendly_name: "Jeff's Work Mac"
|
||||
device_tracker.jeffreysapple_watch:
|
||||
friendly_name: "Jeff's Watch"
|
||||
icon: mdi:watch
|
||||
|
||||
|
||||
# Kat ##
|
||||
device_tracker.katherinestonesiphone:
|
||||
entity_picture: !secret KAT_ICON
|
||||
friendly_name: Kat
|
||||
sensor.kat_location:
|
||||
entity_picture: !secret KAT_ICON
|
||||
sensor.kat_iphone_batt:
|
||||
friendly_name: "Kat's iPhone Battery"
|
||||
device_tracker.katherinesipad:
|
||||
icon: mdi:tablet-ipad
|
||||
friendly_name: "Kat's Ipad"
|
||||
device_tracker.katherinesmini:
|
||||
icon: mdi:desktop-mac
|
||||
friendly_name: "Kat's Mini"
|
||||
sensor.kat_ett_home:
|
||||
friendly_name: "Kat's ETA Home"
|
||||
icon: mdi:car
|
||||
sensor.kat_destination:
|
||||
icon: mdi:google-maps
|
||||
name: "Jeffs Destination"
|
||||
|
||||
# Device ##
|
||||
device_tracker.gateway2f3bca:
|
||||
icon: mdi:nest-thermostat
|
||||
friendly_name: Honeywell
|
||||
sensor.appletv:
|
||||
icon: mdi:apple
|
||||
sensor.roku:
|
||||
icon: mdi:television
|
||||
sensor.xboxone:
|
||||
icon: mdi:xbox
|
||||
sensor.chromecast:
|
||||
icon: mdi:cast
|
||||
sensor.samsungtv:
|
||||
icon: mdi:television
|
||||
sensor.amazon_dot_lr:
|
||||
icon: mdi:amazon
|
||||
sensor.amazon_dot_kn:
|
||||
icon: mdi:amazon
|
||||
sensor.honeywell:
|
||||
icon: mdi:thermostat
|
||||
sensor.smartthings:
|
||||
icon: mdi:router-wireless
|
||||
sensor.eero_loft:
|
||||
icon: mdi:router-wireless
|
||||
sensor.eero_livingroom:
|
||||
icon: mdi:router-wireless
|
||||
media_player.roku_5s6719003683:
|
||||
friendly_name: Roku Living Room
|
||||
icon: mdi:youtube-tv
|
||||
device_tracker.00a0dea3ed2f:
|
||||
friendly_name: Yamaha AV
|
||||
icon: mdi:surround-sound
|
||||
|
||||
|
||||
# Switches and Lights ##
|
||||
switch.fireplace_lights:
|
||||
icon: mdi:spotlight-beam
|
||||
switch.tower_lamp:
|
||||
icon: mdi:lightbulb
|
||||
switch.driveway_light:
|
||||
icon: mdi:lightbulb
|
||||
switch.side_door:
|
||||
icon: mdi:lightbulb
|
||||
switch.front_porch:
|
||||
icon: mdi:lightbulb
|
||||
switch.front_lamp:
|
||||
icon: mdi:lightbulb
|
||||
switch.loft_lamp:
|
||||
icon: mdi:lightbulb
|
||||
cover.garage_door:
|
||||
device_class: garage
|
||||
friendly_name: Garage Door
|
||||
homebridge_cover_type: garage_door
|
||||
switch.loft_fan:
|
||||
friendly_name: "Loft Box Fan"
|
||||
icon: mdi:fan
|
||||
switch.house_secured:
|
||||
name: House Secured
|
||||
icon: mdi:lock
|
||||
switch.vacation_mode:
|
||||
name: Vacation Mode
|
||||
icon: mdi:airplane-takeoff
|
||||
switch.guest_mode:
|
||||
name: Guest Mode
|
||||
icon: mdi:account-multiple
|
||||
switch.notifications_to_kat:
|
||||
name: Notify Katherine
|
||||
icon: mdi:telegram
|
||||
switch.notifications_to_jeff:
|
||||
name: Notify Jeff
|
||||
icon: mdi:telegram
|
||||
switch.automations:
|
||||
name: automations
|
||||
icon: mdi:home-automation
|
||||
switch.kitchen_cabinets:
|
||||
icon: mdi:lightbulb
|
||||
switch.kitchen_light_strip:
|
||||
icon: mdi:lightbulb
|
||||
switch.garage_alarm:
|
||||
name: Garage Door Alarm
|
||||
icon: mdi:alert
|
||||
input_select.trash_pickup:
|
||||
name: Trash Pickup
|
||||
icon: mdi:delete-variant
|
||||
input_select.recycle_pickup:
|
||||
name: Recycle Pickup
|
||||
icon: mdi:delete-variant
|
||||
switch.trash_notification:
|
||||
name: Trash Notifications
|
||||
icon: mdi:telegram
|
||||
switch.master_bedroom_fan:
|
||||
icon: mdi:fan
|
||||
|
||||
|
||||
# Travel Times ##
|
||||
sensor.home_to_summit:
|
||||
friendly_name: "Home to Summit"
|
||||
icon: mdi:car
|
||||
sensor.home_to_zoo:
|
||||
friendly_name: "Home to Zoo Atlanta"
|
||||
icon: mdi:car
|
||||
|
||||
|
||||
# Various Sensors ##
|
||||
sensor.kitchen_fire:
|
||||
name: Kitchen Smoke Detector
|
||||
icon: mdi:tower-fire
|
||||
sensor.smoke_kitchen:
|
||||
icon: mdi:fire
|
||||
sensor.family_status:
|
||||
icon: mdi:home
|
||||
name: Family Status
|
||||
sensor.ha_uptime:
|
||||
friendly_name: HA Uptime
|
||||
icon: mdi:clock-start
|
||||
sensor.installed_version:
|
||||
friendly_name: Installed
|
||||
icon: mdi:folder-download
|
||||
sensor.lets_encrypt_expiration:
|
||||
friendly_name: Lets Encrypt Expiration
|
||||
icon: mdi:timelapse
|
||||
sensor.current_ha_version:
|
||||
friendly_name: Latest Release
|
||||
icon: mdi:github-circle
|
||||
sensor.connected_clients:
|
||||
friendly_name: Connections
|
||||
icon: mdi:lan-connect
|
||||
zwave.aeotec_zw090_zstick_gen5_us:
|
||||
friendly_name: Zwave USB Hub
|
||||
sensor.ha_v2db:
|
||||
friendly_name: HA Database
|
||||
icon: mdi:file
|
||||
sensor.ha_log:
|
||||
friendly_name: HA Log
|
||||
icon: mdi:file
|
||||
sensor.accurite_back_porch_temperature:
|
||||
friendly_name: Back Porch Temp
|
||||
icon: mdi:thermometer
|
||||
unit_of_measurement: '°F'
|
||||
sensor.accurite_back_porch_humidity:
|
||||
friendly_name: Back Porch Humidity
|
||||
icon: mdi:water-percent
|
||||
unit_of_measurement: '%'
|
||||
sensor.accurite_garage_temperature:
|
||||
friendly_name: Garage Temp
|
||||
icon: mdi:thermometer
|
||||
unit_of_measurement: '°F'
|
||||
sensor.accurite_garage_humidity:
|
||||
friendly_name: Garage Humidity
|
||||
icon: mdi:water-percent
|
||||
unit_of_measurement: '%'
|
||||
binary_sensor.garage_dome_sensor:
|
||||
friendly_name: Garage Motion
|
||||
sensor.washer_power:
|
||||
friendly_name: Washer Power
|
||||
icon: mdi:power-plug
|
||||
unit_of_measurement: 'w'
|
||||
sensor.washer:
|
||||
icon: mdi:power-plug
|
||||
|
||||
|
340
groups.yaml
Executable file
340
groups.yaml
Executable file
@ -0,0 +1,340 @@
|
||||
### Views ###
|
||||
default_view:
|
||||
name: Home
|
||||
view: yes
|
||||
icon: mdi:home
|
||||
entities:
|
||||
- persistent_notification.wxalert
|
||||
- group.house
|
||||
- group.house_conditions
|
||||
- group.garage
|
||||
- group.appliancest
|
||||
|
||||
security:
|
||||
name: Security
|
||||
view: yes
|
||||
icon: mdi:security
|
||||
entities:
|
||||
- group.security_system
|
||||
- group.security_alerts
|
||||
- group.security_alarms
|
||||
- group.all_doors
|
||||
- group.motion_sensors
|
||||
- group.fire
|
||||
|
||||
lights:
|
||||
name: Lights
|
||||
view: yes
|
||||
icon: mdi:lightbulb
|
||||
entities:
|
||||
- group.living_room
|
||||
- group.master_bedroom
|
||||
- group.loft
|
||||
- group.driveway
|
||||
- group.front_porch
|
||||
- group.kitchen
|
||||
- group.scenes
|
||||
|
||||
people:
|
||||
name: People
|
||||
view: yes
|
||||
icon: mdi:human-male-female
|
||||
entities:
|
||||
- group.jeffrey
|
||||
- group.katherine
|
||||
- group.travel_times
|
||||
|
||||
media:
|
||||
name: media
|
||||
view: yes
|
||||
icon: mdi:theater
|
||||
entities:
|
||||
- group.theater
|
||||
- media_player.yamaha_receiver_theater
|
||||
- media_player.apple_tv
|
||||
- media_player.living_room_tv
|
||||
- media_player.roku_5s6719003683
|
||||
- media_player.guest_tv
|
||||
|
||||
weather:
|
||||
name: weather
|
||||
view: yes
|
||||
icon: mdi:tree
|
||||
entities:
|
||||
- group.weather_summary
|
||||
- group.weather_alerts
|
||||
- group.sun_and_moon
|
||||
- group.weather_forecast
|
||||
- group.precipitation
|
||||
- group.wind
|
||||
|
||||
homeassistant:
|
||||
name: HA
|
||||
view: yes
|
||||
icon: mdi:home-automation
|
||||
entities:
|
||||
- group.ha_system_monitor
|
||||
- group.ha_version_info
|
||||
- group.file_size
|
||||
- group.internet
|
||||
- group.devices
|
||||
- group.home_automation
|
||||
|
||||
chores:
|
||||
name: Chores
|
||||
view: yes
|
||||
icon: mdi:calendar
|
||||
entities:
|
||||
- group.trash_schedule
|
||||
|
||||
settings:
|
||||
name: Settings
|
||||
view: yes
|
||||
icon: mdi:settings
|
||||
entities:
|
||||
- group.house_notifications
|
||||
- group.presence_notifications
|
||||
- group.event_notifications
|
||||
- group.skylar_alarms
|
||||
|
||||
#################################################################################
|
||||
### Grops ###
|
||||
Security Status:
|
||||
- sensor.garage_door
|
||||
- binary_sensor.back_door
|
||||
- binary_sensor.front_door
|
||||
- binary_sensor.laundry_room_door
|
||||
- binary_sensor.attic_door
|
||||
- binary_sensor.garage_dome_sensor
|
||||
- binary_sensor.garage_door
|
||||
- sensor.smoke_kitchen
|
||||
- sensor.attic_door
|
||||
|
||||
Security Alerts:
|
||||
control: hidden
|
||||
entities:
|
||||
- input_boolean.security_check
|
||||
- input_boolean.lockdown_issue
|
||||
- input_boolean.security_issue
|
||||
- input_boolean.security_breach_warning
|
||||
- input_boolean.garage_issue
|
||||
|
||||
Security Alarms:
|
||||
control: hidden
|
||||
entities:
|
||||
- input_boolean.security_alarm
|
||||
- input_boolean.tornado_alarm
|
||||
|
||||
Security System:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.security_status
|
||||
- input_boolean.secure_mode
|
||||
- input_boolean.vacation_mode
|
||||
|
||||
House:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.family_presence
|
||||
- sensor.security_status
|
||||
- input_boolean.audible_notifications
|
||||
- input_boolean.guest_mode
|
||||
|
||||
Motion Sensors:
|
||||
- binary_sensor.garage_dome_sensor
|
||||
|
||||
All Doors:
|
||||
control: hidden
|
||||
name: Doors
|
||||
entities:
|
||||
- binary_sensor.back_door
|
||||
- binary_sensor.front_door
|
||||
- binary_sensor.laundry_room_door
|
||||
- binary_sensor.attic_door
|
||||
- binary_sensor.garage_door
|
||||
|
||||
Family:
|
||||
- sensor.jeff_presence
|
||||
- sensor.kat_presence
|
||||
|
||||
Jeffrey:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.jeff_location
|
||||
- sensor.jeff_destination
|
||||
- sensor.jeff_iphone_batt
|
||||
- device_tracker.jeffreysapple_watch
|
||||
- device_tracker.jstonemac
|
||||
- device_tracker.jeffreystonesipad
|
||||
- sensor.jeff_ett_home
|
||||
- input_boolean.jeff_heading_home
|
||||
- input_boolean.text_notify_jeff
|
||||
- input_boolean.jeff_traffic_alerts
|
||||
|
||||
Katherine:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.kat_location
|
||||
- sensor.kat_destination
|
||||
- sensor.kat_iphone_batt
|
||||
- device_tracker.katherinesmini
|
||||
- device_tracker.katherinesipad
|
||||
- sensor.kat_ett_home
|
||||
- input_boolean.kat_heading_home
|
||||
- input_boolean.text_notify_kat
|
||||
|
||||
Travel Times:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.home_to_summit
|
||||
- sensor.home_to_zoo
|
||||
|
||||
Living Room:
|
||||
- switch.fireplace_lights
|
||||
- light.tower_lamp
|
||||
- light.front_lamp
|
||||
|
||||
Loft:
|
||||
- light.loft_lamp
|
||||
- switch.loft_fan
|
||||
|
||||
Master Bedroom:
|
||||
- switch.master_bedroom_fan
|
||||
|
||||
Kitchen:
|
||||
- light.kitchen_cabinets
|
||||
- light.kitchen_light_strip
|
||||
|
||||
Scenes:
|
||||
- scene.livingroom_dim
|
||||
- scene.livingroom_night
|
||||
- scene.livingroom_normal
|
||||
- scene.movie_time
|
||||
- scene.dim_kitchen
|
||||
- scene.normal_kitchen
|
||||
|
||||
Driveway:
|
||||
- switch.driveway_light
|
||||
- switch.side_door
|
||||
|
||||
Front Porch:
|
||||
- switch.front_porch
|
||||
|
||||
House Conditions:
|
||||
- climate.first_floor
|
||||
- sensor.accurite_back_porch_temperature
|
||||
- sensor.accurite_back_porch_humidity
|
||||
- sensor.accurite_garage_temperature
|
||||
- sensor.accurite_garage_humidity
|
||||
|
||||
Weather Summary:
|
||||
- sensor.dark_sky_summary
|
||||
- sensor.dark_sky_apparent_temperature
|
||||
- sensor.dark_sky_humidity
|
||||
- sensor.dark_sky_dew_point
|
||||
|
||||
Sun and Moon:
|
||||
- sun.sun
|
||||
- sun.next_rising
|
||||
- sun.next_setting
|
||||
- sensor.moon
|
||||
|
||||
Weather Forecast:
|
||||
- sensor.dark_sky_minutely_summary
|
||||
- sensor.dark_sky_hourly_summary
|
||||
- sensor.dark_sky_daily_summary
|
||||
|
||||
Precipitation:
|
||||
- sensor.dark_sky_nearest_storm_distance
|
||||
- sensor.dark_sky_precip
|
||||
- sensor.dark_sky_precip_probability
|
||||
- sensor.pws_precip_today_in
|
||||
- sensor.dark_sky_visibility
|
||||
- sensor.dark_sky_pressure
|
||||
|
||||
Wind:
|
||||
- sensor.pws_wind_mph
|
||||
- sensor.pws_wind_gust_mph
|
||||
- sensor.pws_wind_dir
|
||||
|
||||
Internet:
|
||||
- sensor.speedtest_ping
|
||||
- sensor.speedtest_download
|
||||
- sensor.speedtest_upload
|
||||
|
||||
Home Automation:
|
||||
- sensor.smartthings
|
||||
- sensor.amazon_dot_lr
|
||||
- sensor.amazon_dot_kn
|
||||
- sensor.honeywell
|
||||
- sensor.eero_loft
|
||||
- sensor.eero_livingroom
|
||||
|
||||
#Cameras:
|
||||
# - device_tracker.ipcam_00626e46eb09_1
|
||||
|
||||
Theater:
|
||||
- sensor.samsungtv
|
||||
- sensor.xboxone
|
||||
- device_tracker.00a0dea3ed2
|
||||
|
||||
Garage:
|
||||
- cover.garage_door
|
||||
- binary_sensor.garage_dome_sensor
|
||||
|
||||
Fire:
|
||||
- sensor.smoke_kitchen
|
||||
|
||||
HA System Monitor:
|
||||
- sensor.cpu
|
||||
- sensor.disk_use_percent_
|
||||
- sensor.memory_use_percent
|
||||
- sensor.network_in_eth0
|
||||
- sensor.network_out_eth0
|
||||
- sensor.last_boot
|
||||
- sensor.ha_uptime
|
||||
- sensor.lets_encrypt_expiration
|
||||
|
||||
HA Version Info:
|
||||
- sensor.installed_version
|
||||
- sensor.current_ha_version
|
||||
|
||||
File Size:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.ha_v2db
|
||||
- sensor.ha_log
|
||||
|
||||
#Zwave:
|
||||
# - zwave.aeotec_zw090_zstick_gen5_us
|
||||
|
||||
Weather Alerts:
|
||||
control: hidden
|
||||
entities:
|
||||
- sensor.pws_alerts
|
||||
- sensor.storm_statement
|
||||
- sensor.tstorm_watch
|
||||
- sensor.tstorm_warning
|
||||
- sensor.tornado_watch
|
||||
- sensor.tornado_warning
|
||||
|
||||
Trash Schedule:
|
||||
- input_select.trash_pickup
|
||||
- input_select.recycle_pickup
|
||||
- input_boolean.trash_notification
|
||||
|
||||
House Notifications:
|
||||
- input_boolean.audible_notifications
|
||||
- input_boolean.garage_notifications
|
||||
|
||||
Skylar Alarms:
|
||||
- input_boolean.skylar_dressed_alarm
|
||||
|
||||
Presence Notifications:
|
||||
- input_boolean.text_notify_jeff
|
||||
- input_boolean.text_notify_kat
|
||||
|
||||
Event Notifications:
|
||||
- input_boolean.trash_notification
|
||||
- input_boolean.washer_notification
|
||||
|
99
input_boolean.yaml
Executable file
99
input_boolean.yaml
Executable file
@ -0,0 +1,99 @@
|
||||
secure_mode:
|
||||
name: Secure Mode
|
||||
icon: mdi:security
|
||||
vacation_mode:
|
||||
name: Vacation Mode
|
||||
icon: mdi:airplane-takeoff
|
||||
guest_mode:
|
||||
name: Guest Mode
|
||||
icon: mdi:account-multiple
|
||||
automations:
|
||||
name: Automations
|
||||
icon: mdi:home-automation
|
||||
trash_notification:
|
||||
name: Trash Notification
|
||||
icon: mdi:telegram
|
||||
notifications_kat:
|
||||
name: Notifications to Kat
|
||||
icon: mdi:telegram
|
||||
notifications_jeff:
|
||||
name: Notifications to Jeff
|
||||
icon: mdi:telegram
|
||||
welcome_greeting:
|
||||
name: Welcome Greeting
|
||||
icon: mdi:speaker-wireless
|
||||
lockdown_notification:
|
||||
name: Lockdown Notifications
|
||||
icon: mdi:speaker-wireless
|
||||
garage_notifications:
|
||||
name: Garage Notifications
|
||||
icon: mdi:speaker-wireless
|
||||
tornado_alarm:
|
||||
name: Tornado Alarm
|
||||
icon: mdi:speaker-wireless
|
||||
tstorm_alarm:
|
||||
name: T-Storm Alarm
|
||||
icon: mdi:speaker-wireless
|
||||
security_alarm:
|
||||
name: Security Alarm
|
||||
icon: mdi:speaker-wireless
|
||||
fire_alarm:
|
||||
name: Fire Alarm
|
||||
icon: mdi:speaker-wireless
|
||||
text_notify_jeff:
|
||||
name: Send Jeff Texts
|
||||
icon: mdi:telegram
|
||||
text_notify_kat:
|
||||
name: Send Kat Texts
|
||||
icon: mdi:telegram
|
||||
audible_notifications:
|
||||
name: Audible Notifications
|
||||
icon: mdi:speaker-wireless
|
||||
presence_notifications_jeff:
|
||||
name: Send Jeff Presence Texts
|
||||
icon: mdi:telegram
|
||||
presence_notifications_kat:
|
||||
name: Send Kat Presence Texts
|
||||
icon: mdi:telegram
|
||||
garage_issue:
|
||||
name: Garage Issue
|
||||
icon: mdi:alert
|
||||
security_issue:
|
||||
name: Security Issue
|
||||
icon: mdi:comment-alert
|
||||
kat_heading_home:
|
||||
name: Kat Heading Home
|
||||
icon: mdi:car
|
||||
jeff_heading_home:
|
||||
name: Jeff Heading Home
|
||||
icon: mdi:car
|
||||
washer_notification:
|
||||
name: Washer Notification
|
||||
icon: mdi:speaker-wireless
|
||||
washer_running:
|
||||
name: Washer Running
|
||||
icon: mdi:speaker-wireless
|
||||
skylar_dressed_alarm:
|
||||
name: Skylar Dressed Alarm
|
||||
icon: mdi:speaker-wireless
|
||||
jeff_traffic_alerts:
|
||||
name: Jeff Traffic Alerts
|
||||
icon: mdi:bell-plus
|
||||
jeff_traffic_alert_home:
|
||||
name: Jeff Traffic Alert Home
|
||||
icon: mdi:traffic-light
|
||||
tornado_watch:
|
||||
name: Tornado Watch
|
||||
icon: mdi:message-alert
|
||||
security_check:
|
||||
name: Security Check
|
||||
icon: mdi:lock-reset
|
||||
garage_after_dark:
|
||||
name: Garage Open After Dark
|
||||
icon: mdi:message-alert
|
||||
lockdown_issue:
|
||||
name: Lockdown Issue
|
||||
icon: mdi:lock-reset
|
||||
security_breach_warning:
|
||||
name: Security Breach Warning
|
||||
icon: mdi:clock-alert-outline
|
26
input_select.yaml
Executable file
26
input_select.yaml
Executable file
@ -0,0 +1,26 @@
|
||||
alarm_mode:
|
||||
name: alarm mode
|
||||
options:
|
||||
- home_armed
|
||||
- away_armed
|
||||
- disarmed
|
||||
trash_pickup:
|
||||
name: Trash Pickup
|
||||
options:
|
||||
- Monday
|
||||
- Tuesday
|
||||
- Wednesday
|
||||
- Thursday
|
||||
- Friday
|
||||
initial: Tuesday
|
||||
icon: mdi:delete-variant
|
||||
recycle_pickup:
|
||||
name: Recycle Pickup
|
||||
options:
|
||||
- Monday
|
||||
- Tuesday
|
||||
- Wednesday
|
||||
- Thursday
|
||||
- Friday
|
||||
initial: Tuesday
|
||||
icon: mdi:delete-variant
|
19
lights/kitchen.yaml
Executable file
19
lights/kitchen.yaml
Executable file
@ -0,0 +1,19 @@
|
||||
- platform: mqtt
|
||||
name: "Kitchen Cabinets"
|
||||
state_topic: "smartthings/Kitchen Cabinets/switch"
|
||||
command_topic: "smartthings/Kitchen Cabinets/switch"
|
||||
brightness_state_topic: "smartthings/Kitchen Cabinets/level"
|
||||
brightness_command_topic: "smartthings/Kitchen Cabinets/level"
|
||||
brightness_scale: 101
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
- platform: mqtt
|
||||
name: "Kitchen Light Strip"
|
||||
state_topic: "smartthings/Kitchen Light Strip/switch"
|
||||
command_topic: "smartthings/Kitchen Light Strip/switch"
|
||||
brightness_state_topic: "smartthings/Kitchen Light Strip/level"
|
||||
brightness_command_topic: "smartthings/Kitchen Light Strip/level"
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
20
lights/living_room.yaml
Executable file
20
lights/living_room.yaml
Executable file
@ -0,0 +1,20 @@
|
||||
- platform: mqtt
|
||||
name: "Tower Lamp"
|
||||
state_topic: "smartthings/Tower Lamp/switch"
|
||||
command_topic: "smartthings/Tower Lamp/switch"
|
||||
brightness_state_topic: "smartthings/Tower Lamp/level"
|
||||
brightness_command_topic: "smartthings/Tower Lamp/level"
|
||||
brightness_scale: 101
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
- platform: mqtt
|
||||
name: "Front Lamp"
|
||||
state_topic: "smartthings/Front Lamp/switch"
|
||||
command_topic: "smartthings/Front Lamp/switch"
|
||||
brightness_state_topic: "smartthings/Front Lamp/level"
|
||||
brightness_command_topic: "smartthings/Front Lamp/level"
|
||||
brightness_scale: 101
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
10
lights/loft.yaml
Executable file
10
lights/loft.yaml
Executable file
@ -0,0 +1,10 @@
|
||||
- platform: mqtt
|
||||
name: "Loft Lamp"
|
||||
state_topic: "smartthings/Loft Lamp/switch"
|
||||
command_topic: "smartthings/Loft Lamp/switch"
|
||||
brightness_state_topic: "smartthings/Loft Lamp/level"
|
||||
brightness_command_topic: "smartthings/Loft Lamp/level"
|
||||
brightness_scale: 101
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
40
scenes.yaml
Executable file
40
scenes.yaml
Executable file
@ -0,0 +1,40 @@
|
||||
- name: livingroom normal
|
||||
entities:
|
||||
light.tower_lamp:
|
||||
state: on
|
||||
brightness: 250
|
||||
light.front_lamp:
|
||||
state: on
|
||||
brightness: 250
|
||||
- name: livingroom dim
|
||||
entities:
|
||||
light.tower_lamp:
|
||||
state: on
|
||||
brightness: 40
|
||||
light.front_lamp:
|
||||
state: on
|
||||
brightness: 40
|
||||
- name: livingroom night
|
||||
entities:
|
||||
light.tower_lamp:
|
||||
state: on
|
||||
brightness: 10
|
||||
light.front_lamp:
|
||||
state: off
|
||||
- name: dim kitchen
|
||||
entities:
|
||||
light.kitchen_cabinets:
|
||||
state: on
|
||||
brightness: 10
|
||||
light.kitchen_light_strip:
|
||||
state: off
|
||||
- name: normal kitchen
|
||||
entities:
|
||||
light.kitchen_cabinets:
|
||||
state: on
|
||||
brightness: 250
|
||||
light.kitchen_light_strip:
|
||||
state: on
|
||||
|
||||
|
||||
|
11
scripts/announcement_storm_statement.yaml
Executable file
11
scripts/announcement_storm_statement.yaml
Executable file
@ -0,0 +1,11 @@
|
||||
annc_storm_statement:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.audible_notifications
|
||||
state: "on"
|
||||
- condition: state
|
||||
entity_id: input_boolean.vacation_mode
|
||||
state: 'off'
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Severe Storm Statement Issued for Anchorage House
|
11
scripts/announcement_tornado_watch.yaml
Executable file
11
scripts/announcement_tornado_watch.yaml
Executable file
@ -0,0 +1,11 @@
|
||||
annc_tornado_watch:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.audible_notifications
|
||||
state: "on"
|
||||
- condition: state
|
||||
entity_id: input_boolean.vacation_mode
|
||||
state: 'off'
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Tornado Watch Issued for Anchorage House
|
11
scripts/announcement_tstorm_warning.yaml
Executable file
11
scripts/announcement_tstorm_warning.yaml
Executable file
@ -0,0 +1,11 @@
|
||||
annc_tstorm_warning:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.audible_notifications
|
||||
state: "on"
|
||||
- condition: state
|
||||
entity_id: input_boolean.vacation_mode
|
||||
state: 'off'
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Severe Thunderstorm Warning Issued for Anchorage House
|
11
scripts/announcement_tstorm_watch.yaml
Executable file
11
scripts/announcement_tstorm_watch.yaml
Executable file
@ -0,0 +1,11 @@
|
||||
annc_tstorm_watch:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.audible_notifications
|
||||
state: "on"
|
||||
- condition: state
|
||||
entity_id: input_boolean.vacation_mode
|
||||
state: 'off'
|
||||
- service: notify.ios_all
|
||||
data:
|
||||
message: Severe Thunderstorm Watch Issued for Anchorage House
|
8
scripts/appliances_off.yaml
Executable file
8
scripts/appliances_off.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
appliances_off:
|
||||
sequence:
|
||||
- service: switch.turn_off
|
||||
data:
|
||||
entity_id: switch.master_bedroom_fan
|
||||
- service: switch.turn_off
|
||||
data:
|
||||
entity_id: switch.loft_box_fan
|
8
scripts/appliances_on.yaml
Executable file
8
scripts/appliances_on.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
appliances_on:
|
||||
sequence:
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.master_bedroom_fan
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.loft_box_fan
|
6
scripts/chime_off.yaml
Executable file
6
scripts/chime_off.yaml
Executable file
@ -0,0 +1,6 @@
|
||||
chime_off:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "smartthings/Dome Siren/status"
|
||||
payload_template: "off"
|
6
scripts/chime_on.yaml
Executable file
6
scripts/chime_on.yaml
Executable file
@ -0,0 +1,6 @@
|
||||
chime_on:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "smartthings/Dome Siren/status"
|
||||
payload_template: "chime"
|
6
scripts/chromecast_media_stop.yaml
Executable file
6
scripts/chromecast_media_stop.yaml
Executable file
@ -0,0 +1,6 @@
|
||||
chromecast_media_stop:
|
||||
sequence:
|
||||
- service: media_player.media_stop
|
||||
data:
|
||||
entity_id: media_player.living_room_tv
|
||||
|
8
scripts/driveway_off.yaml
Executable file
8
scripts/driveway_off.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
# Turn off Driveway lights after 2minute delay
|
||||
driveway_off:
|
||||
sequence:
|
||||
- service: switch.turn_off
|
||||
entity_id: switch.driveway_light
|
||||
- service: switch.turn_off
|
||||
entity_id: switch.side_door
|
||||
|
12
scripts/driveway_on.yaml
Executable file
12
scripts/driveway_on.yaml
Executable file
@ -0,0 +1,12 @@
|
||||
driveway_on:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.driveway_light
|
||||
- service: switch.turn_on
|
||||
data:
|
||||
entity_id: switch.side_door
|
||||
|
6
scripts/family_is_away.yaml
Executable file
6
scripts/family_is_away.yaml
Executable file
@ -0,0 +1,6 @@
|
||||
family_is_away:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "house/family/status"
|
||||
payload_template: "Away"
|
7
scripts/family_is_home.yaml
Executable file
7
scripts/family_is_home.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
family_is_home:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "house/family/status"
|
||||
payload_template: "Home"
|
||||
|
7
scripts/garage_close.yaml
Executable file
7
scripts/garage_close.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
close_garage:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: cover.garage_door
|
||||
state: "open"
|
||||
- service: cover.close_cover
|
||||
entity_id: cover.garage_door
|
12
scripts/inside_all_off.yaml
Executable file
12
scripts/inside_all_off.yaml
Executable file
@ -0,0 +1,12 @@
|
||||
inside_all_off:
|
||||
sequence:
|
||||
- event: LOGBOOK_ENTRY
|
||||
event_data:
|
||||
name: EVENT
|
||||
message: "Turning inside lights off"
|
||||
- service: light.turn_off
|
||||
data:
|
||||
entity_id: light.tower_lamp
|
||||
- service: light.turn_off
|
||||
data:
|
||||
entity_id: light.front_lamp
|
18
scripts/inside_all_on.yaml
Executable file
18
scripts/inside_all_on.yaml
Executable file
@ -0,0 +1,18 @@
|
||||
inside_all_on:
|
||||
sequence:
|
||||
- event: LOGBOOK_ENTRY
|
||||
event_data:
|
||||
name: EVENT
|
||||
message: "Turning inside lights on."
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.tower_lamp
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.front_lamp
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.loft_lamp
|
||||
- service: scene.turn_on
|
||||
data:
|
||||
entity_id: scene.livingroom_normal
|
8
scripts/jeff_at_work_notification.yaml
Executable file
8
scripts/jeff_at_work_notification.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
jeff_at_work_notification:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.text_notify_kat
|
||||
state: "on"
|
||||
- service: notify.ios_katherinestonesiphone
|
||||
data:
|
||||
message: Jeff has arrived at Summit
|
7
scripts/jeff_destination_harbins.yaml
Executable file
7
scripts/jeff_destination_harbins.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
jeff_destination_harbins:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "jeff/driving/destination"
|
||||
payload: "Harbins"
|
||||
retain: true
|
7
scripts/jeff_destination_home.yaml
Executable file
7
scripts/jeff_destination_home.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
jeff_destination_home:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "jeff/driving/destination"
|
||||
payload: "Home"
|
||||
retain: true
|
7
scripts/jeff_destination_na.yaml
Executable file
7
scripts/jeff_destination_na.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
jeff_destination_na:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "jeff/driving/destination"
|
||||
payload: "na"
|
||||
retain: true
|
7
scripts/jeff_destination_none.yaml
Executable file
7
scripts/jeff_destination_none.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
jeff_destination_none:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "jeff/driving/destination"
|
||||
payload: "none"
|
||||
retain: true
|
7
scripts/jeff_destination_summit.yaml
Executable file
7
scripts/jeff_destination_summit.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
jeff_destination_summit:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "jeff/driving/destination"
|
||||
payload: "Summit"
|
||||
retain: true
|
7
scripts/jeff_destination_zoo.yaml
Executable file
7
scripts/jeff_destination_zoo.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
jeff_destination_zoo:
|
||||
sequence:
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: "jeff/driving/destination"
|
||||
payload: "Zoo"
|
||||
retain: true
|
4
scripts/lockdown.yaml
Executable file
4
scripts/lockdown.yaml
Executable file
@ -0,0 +1,4 @@
|
||||
lockdown:
|
||||
sequence:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.secure_mode
|
12
scripts/lockdown_aborted.yaml
Executable file
12
scripts/lockdown_aborted.yaml
Executable file
@ -0,0 +1,12 @@
|
||||
lockdown_aborted:
|
||||
sequence:
|
||||
- delay: '00:00:07'
|
||||
- condition: state
|
||||
entity_id: input_boolean.security_issue
|
||||
state: 'on'
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.security_check
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.lockdown_issue
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.secure_mode
|
4
scripts/security_alarm_delay.yaml
Executable file
4
scripts/security_alarm_delay.yaml
Executable file
@ -0,0 +1,4 @@
|
||||
security_sound_alarm_intro:
|
||||
sequence:
|
||||
- delay: '00:01:30'
|
||||
- service: script.security_alarm_on
|
10
scripts/security_alarm_off.yaml
Executable file
10
scripts/security_alarm_off.yaml
Executable file
@ -0,0 +1,10 @@
|
||||
security_alarm_off:
|
||||
sequence:
|
||||
# - service: mqtt.publish
|
||||
# data:
|
||||
# topic: "smartthings/Dome Siren/status"
|
||||
# payload_template: "off"
|
||||
# - service: mqtt.publish
|
||||
# data:
|
||||
# topic: "smartthings/Dome Siren/alarm"
|
||||
# payload_template: "off"
|
9
scripts/security_check_garage.yaml
Executable file
9
scripts/security_check_garage.yaml
Executable file
@ -0,0 +1,9 @@
|
||||
security_check_garage:
|
||||
sequence:
|
||||
- condition: state
|
||||
#entity_id: sensor.garage_door_contact
|
||||
entity_id: cover.garage_door
|
||||
state: 'open'
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.security_issue
|
||||
|
11
scripts/security_check_verified.yaml
Executable file
11
scripts/security_check_verified.yaml
Executable file
@ -0,0 +1,11 @@
|
||||
security_check_verified:
|
||||
sequence:
|
||||
- delay: '00:00:05'
|
||||
- condition: state
|
||||
entity_id: input_boolean.security_issue
|
||||
state: 'off'
|
||||
- service: notify.jeff_ios
|
||||
data:
|
||||
message: "Anchorage House Secured"
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.security_check
|
8
scripts/security_check_zones.yaml
Executable file
8
scripts/security_check_zones.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
security_check_zones:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: group.doors
|
||||
state: 'on'
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.security_issue
|
||||
|
6
scripts/security_issue.yaml
Executable file
6
scripts/security_issue.yaml
Executable file
@ -0,0 +1,6 @@
|
||||
security_issue:
|
||||
sequence:
|
||||
- delay:
|
||||
seconds: 80
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.security_alarm
|
20
scripts/standby.yaml
Executable file
20
scripts/standby.yaml
Executable file
@ -0,0 +1,20 @@
|
||||
standby:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.vacation_mode
|
||||
state: "off"
|
||||
- service: input_boolean.turn_off
|
||||
data:
|
||||
entity_id: input_boolean.secure_mode
|
||||
- service: input_boolean.turn_off
|
||||
data:
|
||||
entity_id: input_boolean.security_issue
|
||||
- service: input_boolean.turn_off
|
||||
data:
|
||||
entity_id: input_boolean.security_alarm
|
||||
- service: input_boolean.turn_off
|
||||
data:
|
||||
entity_id: input_boolean.security_breach_warning
|
||||
- service: notify.jeff_ios
|
||||
data:
|
||||
message: Anchorage House in Standby
|
8
scripts/sunset_garage_open.yaml
Executable file
8
scripts/sunset_garage_open.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
sunset_garage_open:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.garage_door
|
||||
state: "on"
|
||||
- service: script.driveway_all_on
|
||||
|
||||
|
17
scripts/wxalert_tile.yaml
Executable file
17
scripts/wxalert_tile.yaml
Executable file
@ -0,0 +1,17 @@
|
||||
wxalert_tile:
|
||||
sequence:
|
||||
## Dismiss any current alert so the UI isn't filled
|
||||
## up with these if there are more then one.
|
||||
## Only show the latest alert
|
||||
- service: persistent_notification.dismiss
|
||||
data:
|
||||
notification_id: "wxalert"
|
||||
## Create a new persistant notification in the UI for a new alert
|
||||
- service_template: >
|
||||
{% if states.sensor.pws_alerts.attributes.Message %}
|
||||
persistent_notification.create
|
||||
{% endif %}
|
||||
data_template:
|
||||
notification_id: "wxalert"
|
||||
message: '{{ states.sensor.pws_alerts.attributes.Message }}'
|
||||
title: '{{ states.sensor.pws_alerts.attributes.Description }}'
|
38
sensors/batteries.yaml
Executable file
38
sensors/batteries.yaml
Executable file
@ -0,0 +1,38 @@
|
||||
- platform: mqtt
|
||||
name: "Front Door Battery"
|
||||
state_topic: "smartthings/Front Door/battery"
|
||||
- platform: mqtt
|
||||
name: "Laundry Door Battery"
|
||||
state_topic: "smartthings/Laundry Room Door/battery"
|
||||
- platform: mqtt
|
||||
name: "Kitchen Smoke Battery"
|
||||
state_topic: "smartthings/Kitchen Smoke/battery"
|
||||
- platform: mqtt
|
||||
name: "Attic Door Battery"
|
||||
state_topic: "smartthings/Attic Door/battery"
|
||||
- platform: mqtt
|
||||
name: "Washer Door Battery"
|
||||
state_topic: "smartthings/Washer Door/battery"
|
||||
- platform: mqtt
|
||||
name: "Back Door Battery"
|
||||
state_topic: "smartthings/Back Door/battery"
|
||||
- platform: template
|
||||
sensors:
|
||||
jeff_iphone_batt:
|
||||
unit_of_measurement: '%'
|
||||
value_template: >-
|
||||
{%- if states.device_tracker.jeffreystonesiphone.attributes.battery %}
|
||||
{{ states.device_tracker.jeffreystonesiphone.attributes.battery | round(1) }}
|
||||
{% else %}
|
||||
{{ states.sensor.jeff_iphone_batt.state }}
|
||||
{%- endif %}
|
||||
icon_template: '{%- if is_state("sensor.jeff_iphone_batt", "unknown") %}mdi:battery-unknown{%- elif is_state_attr("device_tracker.jeffreystonesiphone", "battery_status", "Charging") %}mdi:battery-charging{%- elif states.device_tracker.jeffreystonesiphone.attributes.battery <= 5 %}mdi:battery-outline{%- elif states.device_tracker.jeffreystonesiphone.attributes.battery >= 95 %}mdi:battery{% else %}mdi:battery-{{(states.device_tracker.jeffreystonesiphone.attributes.battery|float / 10)|round*10}}{%- endif %}'
|
||||
kat_iphone_batt:
|
||||
unit_of_measurement: '%'
|
||||
value_template: >-
|
||||
{%- if states.device_tracker.katherinestonesiphone.attributes.battery %}
|
||||
{{ states.device_tracker.katherinestonesiphone.attributes.battery | round(1) }}
|
||||
{% else %}
|
||||
{{ states.sensor.kat_iphone_batt.state }}
|
||||
{%- endif %}
|
||||
icon_template: '{%- if is_state("sensor.kat_iphone_batt", "unknown") %}mdi:battery-unknown{%- elif is_state_attr("device_tracker.katherinestonesiphone", "battery_status", "Charging") %}mdi:battery-charging{%- elif states.device_tracker.katherinestonesiphone.attributes.battery <= 5 %}mdi:battery-outline{%- elif states.device_tracker.katherinestonesiphone.attributes.battery >= 95 %}mdi:battery{% else %}mdi:battery-{{(states.device_tracker.katherinestonesiphone.attributes.battery|float / 10)|round*10}}{%- endif %}'
|
72
sensors/devices.yaml
Executable file
72
sensors/devices.yaml
Executable file
@ -0,0 +1,72 @@
|
||||
- platform: template
|
||||
sensors:
|
||||
amazon_dot_lr:
|
||||
friendly_name: 'Amazon Dot LR'
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.dot_livingroom', 'home') else 'Offline' }}"
|
||||
|
||||
amazon_dot_kn:
|
||||
friendly_name: 'Amazon Dot KN'
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.dot_kitchen', 'home') else 'Offline' }}"
|
||||
|
||||
appletv:
|
||||
friendly_name: 'Apple Tv'
|
||||
value_template: "{{ 'On' if is_state('media_player.apple_tv', 'on') else 'Off' }}"
|
||||
|
||||
xboxone:
|
||||
friendly_name: 'xboxone'
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.xboxone', 'home') else 'Offline' }}"
|
||||
|
||||
chromecast_livingroom:
|
||||
friendly_name: 'Chromecast - Living Room'
|
||||
value_template: "{{ 'On' if is_state('media_player.chromecast_livingroom', 'on') else 'Off' }}"
|
||||
|
||||
smartthings:
|
||||
friendly_name: 'SmartThings'
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.d052a8170fef', 'home') else 'Offline' }}"
|
||||
|
||||
samsungtv:
|
||||
friendly_name: 'Samsung Tv'
|
||||
value_template: "{{ 'On' if is_state('media_player.pn60e550_pn60e550', 'on') else 'Off' }}"
|
||||
|
||||
honeywell:
|
||||
friendly_name: 'Honeywell'
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.gateway2f3bca', 'home') else 'Offline' }}"
|
||||
|
||||
kat_mini:
|
||||
friendly_name: "Kat's Mini"
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.katherinesmini', 'home') else 'Offline' }}"
|
||||
|
||||
jeff_work_mbp:
|
||||
friendly_name: "Jeff's Work MBP"
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.jstonemac', 'home') else 'Offline' }}"
|
||||
|
||||
jeff_ipad:
|
||||
friendly_name: "Jeff's iPad"
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.jeffreystonesipad', 'home') else 'Offline' }}"
|
||||
|
||||
kat_ipad:
|
||||
friendly_name: "Kat's iPad"
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.katherinesipad', 'home') else 'Offline' }}"
|
||||
|
||||
eero_livingroom:
|
||||
friendly_name: "Eero Living Room"
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.eero_livingroom', 'home') else 'Offline' }}"
|
||||
|
||||
eero_loft:
|
||||
friendly_name: "Eero Loft"
|
||||
value_template: "{{ 'Online' if is_state('device_tracker.eero_loft', 'home') else 'Offline' }}"
|
||||
|
||||
smoke_kitchen:
|
||||
friendly_name: "Kitchen Smoke"
|
||||
value_template: "{{ 'Smoke Detected!' if is_state('device_tracker.eero_loft', 'smoke') else 'All Clear' }}"
|
||||
|
||||
security_status:
|
||||
friendly_name: 'Security System'
|
||||
value_template: '{{ "Armed" if is_state("input_boolean.secure_mode", "on") else "Disarmed" }}'
|
||||
icon_template: '{%- if is_state("input_boolean.secure_mode", "on") %}mdi:lock{% else %}mdi:lock-open{%- endif %}'
|
||||
|
||||
garage_motion:
|
||||
friendly_name: "Garage Motion"
|
||||
value_template: "{{ 'open' if is_state('sensor.garage_dome_sensor', 'motion') else 'clear' }}"
|
||||
|
||||
|
24
sensors/google_travel_time.yaml
Executable file
24
sensors/google_travel_time.yaml
Executable file
@ -0,0 +1,24 @@
|
||||
- platform: waze_travel_time
|
||||
name: "Jeff ETT Home"
|
||||
#api_key: !secret google_api
|
||||
origin: device_tracker.jeffreystonesiphone
|
||||
destination: zone.home
|
||||
region: 'US'
|
||||
- platform: waze_travel_time
|
||||
name: "Kat ETT Home"
|
||||
#api_key: !secret google_api
|
||||
origin: device_tracker.katherinestonesiphone
|
||||
destination: zone.home
|
||||
region: 'US'
|
||||
- platform: waze_travel_time
|
||||
name: "Home To Summit"
|
||||
# api_key: !secret google_api
|
||||
origin: zone.home
|
||||
destination: zone.summit
|
||||
region: 'US'
|
||||
- platform: waze_travel_time
|
||||
name: "Home To Zoo"
|
||||
# api_key: !secret google_api#
|
||||
origin: zone.home
|
||||
destination: zone.zoo_atlanta
|
||||
region: 'US'
|
4
sensors/power.yaml
Executable file
4
sensors/power.yaml
Executable file
@ -0,0 +1,4 @@
|
||||
- platform: mqtt
|
||||
name: "Master Bedroom Fan"
|
||||
state_topic: "smartthings/Master Bedroom Fan/power"
|
||||
retain: true
|
19
sensors/presence.yaml
Executable file
19
sensors/presence.yaml
Executable file
@ -0,0 +1,19 @@
|
||||
- platform: mqtt
|
||||
name: "Kat Presence"
|
||||
state_topic: "smartthings/Kat/presence"
|
||||
payload_on: "present"
|
||||
payload_off: "not present"
|
||||
retain: true
|
||||
- platform: mqtt
|
||||
name: "Jeff Presence"
|
||||
state_topic: "smartthings/Jeffrey/presence"
|
||||
payload_on: "present"
|
||||
payload_off: "not present"
|
||||
retain: true
|
||||
- platform: mqtt
|
||||
name: "Family Status"
|
||||
state_topic: "house/family/status"
|
||||
payload_on: "Home"
|
||||
payload_off: "Away"
|
||||
retain: true
|
||||
|
9
sensors/security.yaml
Executable file
9
sensors/security.yaml
Executable file
@ -0,0 +1,9 @@
|
||||
- platform: mqtt
|
||||
name: "Lockdown Status"
|
||||
state_topic: "house/lockdown/status"
|
||||
- platform: mqtt
|
||||
name: "Kitchen Smoke"
|
||||
state_topic: "smartthings/Kitchen Smoke/smoke"
|
||||
payload_on: "smoke"
|
||||
payload_off: "clear"
|
||||
retain: true
|
11
sensors/speedtest.yaml
Executable file
11
sensors/speedtest.yaml
Executable file
@ -0,0 +1,11 @@
|
||||
- platform: speedtest
|
||||
minute: 30
|
||||
hour:
|
||||
- 0
|
||||
- 6
|
||||
- 12
|
||||
- 18
|
||||
monitored_conditions:
|
||||
- ping
|
||||
- download
|
||||
- upload
|
57
sensors/system.yaml
Executable file
57
sensors/system.yaml
Executable file
@ -0,0 +1,57 @@
|
||||
- platform: systemmonitor
|
||||
resources:
|
||||
- type: disk_use_percent
|
||||
arg: /
|
||||
- type: memory_use_percent
|
||||
- type: network_in
|
||||
arg: eth0
|
||||
- type: network_out
|
||||
arg: eth0
|
||||
- type: last_boot
|
||||
- type: load_15m
|
||||
- type: processor_use
|
||||
- type: since_last_boot
|
||||
- platform: cpuspeed
|
||||
name: CPU
|
||||
- platform: time_date
|
||||
display_options:
|
||||
- 'time'
|
||||
- 'date'
|
||||
- 'date_time'
|
||||
- 'time_date'
|
||||
- 'time_utc'
|
||||
- 'beat'
|
||||
- platform: cert_expiry
|
||||
host: !secret BASEURL
|
||||
name: Lets Encrypt Expiration
|
||||
- platform: command_line
|
||||
name: "HA Uptime"
|
||||
command: echo "$(($(date +%s) - $(date -d "$(head -n1 /home/homeassistant/.homeassistant/home-assistant.log | cut -d' ' -f-2)" +%s)))"
|
||||
scan_interval: 720
|
||||
value_template: >-
|
||||
{% set uptime = value | int %}
|
||||
{% set seconds = uptime % 60 %}
|
||||
{% set minutes = ((uptime % 3600) / 60) | int %}
|
||||
{% set hours = ((uptime % 86400) / 3600) | int %}
|
||||
{% set days = (uptime / 86400) | int %}
|
||||
{%- if days > 0 -%}
|
||||
{%- if days == 1 -%}
|
||||
1 day
|
||||
{%- else -%}
|
||||
{{ days }} days
|
||||
{%- endif -%}
|
||||
{{ ', ' }}
|
||||
{%- endif -%}
|
||||
{{ '%02d' % hours }}:{{ '%02d' % minutes }}
|
||||
- platform: command_line
|
||||
command: python3 -c "import requests; print(requests.get('https://pypi.python.org/pypi/homeassistant/json').json()['info']['version'])"
|
||||
name: Current HA Version
|
||||
- platform: command_line
|
||||
name: Installed version
|
||||
command: "head -5 /home/homeassistant/.homeassistant/.HA_VERSION"
|
||||
- platform: command_line
|
||||
name: ha_v2db
|
||||
command: "ls -sh /home/homeassistant/.homeassistant/home-assistant_v2.db | cut -f1 -d ' '"
|
||||
- platform: command_line
|
||||
name: ha_log
|
||||
command: "ls -sh /home/homeassistant/.homeassistant/home-assistant.log | cut -f1 -d ' '"
|
27
sensors/users.yaml
Executable file
27
sensors/users.yaml
Executable file
@ -0,0 +1,27 @@
|
||||
- platform: mqtt
|
||||
name: "Jeff Destination"
|
||||
state_topic: "jeff/driving/destination"
|
||||
- platform: mqtt
|
||||
name: "Kat Destination"
|
||||
state_topic: "kat/driving/destination"
|
||||
- platform: template
|
||||
sensors:
|
||||
family_presence:
|
||||
friendly_name: Family Presence
|
||||
unit_of_measurement: ''
|
||||
value_template: >-
|
||||
{%- if is_state("sensor.jeff_presence", "present") %}
|
||||
Home
|
||||
{% elif is_state("sensor.kat_presence", "present") %}
|
||||
Home
|
||||
{% else %}
|
||||
Away
|
||||
{%- endif %}
|
||||
icon_template: >-
|
||||
{%- if is_state("sensor.family_presence", "Home") %}
|
||||
mdi:home
|
||||
{%- elif is_state("sensor.family_presence", "Away") %}
|
||||
mdi:home-outline
|
||||
{% else %}
|
||||
mdi:sync-alert
|
||||
{%- endif %}
|
133
sensors/weather.yaml
Executable file
133
sensors/weather.yaml
Executable file
@ -0,0 +1,133 @@
|
||||
- platform: darksky
|
||||
api_key: !secret FORCAST_API_KEY
|
||||
monitored_conditions:
|
||||
- summary
|
||||
- icon
|
||||
- nearest_storm_distance
|
||||
- nearest_storm_bearing
|
||||
- precip_type
|
||||
- precip_intensity
|
||||
- precip_probability
|
||||
- temperature
|
||||
- apparent_temperature
|
||||
- dew_point
|
||||
- wind_speed
|
||||
- wind_bearing
|
||||
- cloud_cover
|
||||
- humidity
|
||||
- pressure
|
||||
- visibility
|
||||
- ozone
|
||||
- minutely_summary
|
||||
- hourly_summary
|
||||
- daily_summary
|
||||
- precip_intensity_max
|
||||
update_interval:
|
||||
# At least one of these must be specified:
|
||||
days: 0
|
||||
hours: 0
|
||||
minutes: 5
|
||||
seconds: 0
|
||||
milliseconds: 0
|
||||
- platform: moon
|
||||
# - platform: pollen
|
||||
# zip_code: "30017"
|
||||
# monitored_conditions:
|
||||
# - allergy_average_forecasted
|
||||
# - allergy_average_historical
|
||||
# - allergy_index_today
|
||||
# - allergy_index_tomorrow
|
||||
# - allergy_index_yesterday
|
||||
# - disease_average_forecasted
|
||||
## Accurite 158 - Back Porch
|
||||
- platform: mqtt
|
||||
name: "Accurite Back Porch Temperature"
|
||||
state_topic: "house/accurite-158/temperature"
|
||||
- platform: mqtt
|
||||
name: "Accurite Back Porch Humidity"
|
||||
state_topic: "house/accurite-158/humidity"
|
||||
# - platform: mqtt
|
||||
# name: "Accurite Back Porch Status"
|
||||
# state_topic: "house/accurite-158/status"
|
||||
# - platform: mqtt
|
||||
# name: "Accurite Back Porch Battery"
|
||||
# state_topic: "house/accurite-158/battery"
|
||||
- platform: mqtt
|
||||
name: "Accurite Back Porch Model"
|
||||
state_topic: "house/accurite-158/model"
|
||||
- platform: mqtt
|
||||
name: "Accurite Back Porch lupdate"
|
||||
state_topic: "house/accurite-158/lastupdate"
|
||||
- platform: mqtt
|
||||
name: "Accurite Garage Temperature"
|
||||
state_topic: "house/accurite-10968/temperature"
|
||||
- platform: mqtt
|
||||
name: "Accurite Garage Humidity"
|
||||
state_topic: "house/accurite-10968/humidity"
|
||||
- platform: mqtt
|
||||
name: "Accurite Garage Model"
|
||||
state_topic: "house/accurite-10968/model"
|
||||
- platform: mqtt
|
||||
name: "Accurite Garage lupdate"
|
||||
state_topic: "house/accurite-10968/lastupdate"
|
||||
- platform: template
|
||||
sensors:
|
||||
tornado_warning:
|
||||
friendly_name: 'Tornado Warning'
|
||||
value_template: >-
|
||||
{%- if states.sensor.pws_alerts.attributes.Description == "Tornado Warning" %}
|
||||
active
|
||||
{% elif states.sensor.pws_alerts.attributes.Description_TOR == "Tornado Warning" %}
|
||||
active
|
||||
{% else %}
|
||||
inactive
|
||||
{%- endif %}
|
||||
icon_template: mdi:message-alert
|
||||
|
||||
tornado_watch:
|
||||
friendly_name: 'Tornado Watch'
|
||||
value_template: >-
|
||||
{%- if states.sensor.pws_alerts.attributes.Description == "Tornado Watch" %}
|
||||
active
|
||||
{% elif states.sensor.pws_alerts.attributes.Description_TOW == "Tornado Watch" %}
|
||||
active
|
||||
{% else %}
|
||||
inactive
|
||||
{%- endif %}
|
||||
icon_template: mdi:message-alert
|
||||
|
||||
tstorm_warning:
|
||||
friendly_name: 'T-Storm Warning'
|
||||
value_template: >-
|
||||
{%- if states.sensor.pws_alerts.attributes.Description == "Severe Thunderstorm Warning" %}
|
||||
active
|
||||
{% elif states.sensor.pws_alerts.attributes.Description_WRN == "Severe Thunderstorm Warning" %}
|
||||
active
|
||||
{% else %}
|
||||
inactive
|
||||
{%- endif %}
|
||||
icon_template: mdi:message-alert
|
||||
|
||||
tstorm_watch:
|
||||
friendly_name: 'T-Storm Watch'
|
||||
value_template: >-
|
||||
{%- if states.sensor.pws_alerts.attributes.Description == "Severe Thunderstorm Watch" %}
|
||||
active
|
||||
{% elif states.sensor.pws_alerts.attributes.Description_SEW == "Severe Thunderstorm Watch" %}
|
||||
active
|
||||
{% else %}
|
||||
inactive
|
||||
{%- endif %}
|
||||
icon_template: mdi:message-alert
|
||||
|
||||
storm_statement:
|
||||
friendly_name: 'Storm Statement'
|
||||
value_template: >-
|
||||
{%- if states.sensor.pws_alerts.attributes.Description == "Severe Weather Statement" %}
|
||||
active
|
||||
{% elif states.sensor.pws_alerts.attributes.Description_SVR == "Severe Weather Statement" %}
|
||||
active
|
||||
{% else %}
|
||||
inactive
|
||||
{%- endif %}
|
||||
icon_template: mdi:message-alert
|
42
sensors/wunderground.yaml
Executable file
42
sensors/wunderground.yaml
Executable file
@ -0,0 +1,42 @@
|
||||
- platform: wunderground
|
||||
api_key: !secret WUNDERGROUND_API_KEY
|
||||
monitored_conditions:
|
||||
- alerts
|
||||
- dewpoint_c
|
||||
- dewpoint_f
|
||||
- dewpoint_string
|
||||
- feelslike_c
|
||||
- feelslike_f
|
||||
- feelslike_string
|
||||
- heat_index_c
|
||||
- heat_index_f
|
||||
- heat_index_string
|
||||
- elevation
|
||||
- location
|
||||
- observation_time
|
||||
- precip_1hr_in
|
||||
- precip_1hr_metric
|
||||
- precip_1hr_string
|
||||
- precip_today_in
|
||||
- precip_today_metric
|
||||
- precip_today_string
|
||||
- pressure_in
|
||||
- pressure_mb
|
||||
- pressure_trend
|
||||
- relative_humidity
|
||||
- station_id
|
||||
- solarradiation
|
||||
- temperature_string
|
||||
- temp_c
|
||||
- temp_f
|
||||
- UV
|
||||
- visibility_km
|
||||
- visibility_mi
|
||||
- weather
|
||||
- wind_degrees
|
||||
- wind_dir
|
||||
- wind_gust_kph
|
||||
- wind_gust_mph
|
||||
- wind_kph
|
||||
- wind_mph
|
||||
- wind_string
|
7
switches/living_room.yaml
Executable file
7
switches/living_room.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
- platform: mqtt
|
||||
name: "Fireplace Lights"
|
||||
state_topic: "smartthings/Fireplace Lights/switch"
|
||||
command_topic: "smartthings/Fireplace Lights/switch"
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
7
switches/master_bedroom.yaml
Executable file
7
switches/master_bedroom.yaml
Executable file
@ -0,0 +1,7 @@
|
||||
- platform: mqtt
|
||||
name: "Master Bedroom Fan"
|
||||
state_topic: "smartthings/Master Bedroom Fan/switch"
|
||||
command_topic: "smartthings/Master Bedroom Fan/switch"
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
54
switches/notifications.yaml
Executable file
54
switches/notifications.yaml
Executable file
@ -0,0 +1,54 @@
|
||||
- platform: mqtt
|
||||
name: "Text Notify Kat"
|
||||
command_topic: "kat/notify/text"
|
||||
state_topic: "kat/notify/text"
|
||||
qos: 1
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
|
||||
- platform: mqtt
|
||||
name: "Audibly Notify Kat"
|
||||
command_topic: "kat/notify/audio"
|
||||
state_topic: "kat/notify/audio"
|
||||
qos: 1
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
|
||||
- platform: mqtt
|
||||
name: "Text Notify Jeff"
|
||||
command_topic: "jeff/notify/text"
|
||||
state_topic: "jeff/notify/text"
|
||||
qos: 1
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
|
||||
- platform: mqtt
|
||||
name: "Audibly Notify Jeff"
|
||||
command_topic: "jeff/notify/audio"
|
||||
state_topic: "jeff/notify/audio"
|
||||
qos: 1
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
|
||||
- platform: mqtt
|
||||
name: "Text Notify House"
|
||||
command_topic: "house/notify/text"
|
||||
state_topic: "house/notify/text"
|
||||
qos: 1
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
|
||||
- platform: mqtt
|
||||
name: "Audibly Notify House"
|
||||
command_topic: "house/notify/audio"
|
||||
state_topic: "house/notify/audio"
|
||||
qos: 1
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
|
21
switches/outside.yaml
Executable file
21
switches/outside.yaml
Executable file
@ -0,0 +1,21 @@
|
||||
- platform: mqtt
|
||||
name: "Driveway Light"
|
||||
state_topic: "smartthings/Driveway Light/switch"
|
||||
command_topic: "smartthings/Driveway Light/switch"
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
- platform: mqtt
|
||||
name: "Side Door"
|
||||
state_topic: "smartthings/Side Door Light/switch"
|
||||
command_topic: "smartthings/Side Door Light/switch"
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
||||
- platform: mqtt
|
||||
name: "Front Porch"
|
||||
state_topic: "smartthings/Front Porch/switch"
|
||||
command_topic: "smartthings/Front Porch/switch"
|
||||
payload_on: "on"
|
||||
payload_off: "off"
|
||||
retain: true
|
8
switches/sonoff.yaml
Executable file
8
switches/sonoff.yaml
Executable file
@ -0,0 +1,8 @@
|
||||
- platform: mqtt
|
||||
name: "Loft Fan"
|
||||
command_topic: "cmnd/sonoff/power"
|
||||
state_topic: "stat/sonoff/POWER"
|
||||
qos: 1
|
||||
payload_on: "ON"
|
||||
payload_off: "OFF"
|
||||
retain: true
|
Loading…
x
Reference in New Issue
Block a user