This is the current config. Moved old to the v1-config branch

This commit is contained in:
Jeffrey Stone 2018-03-06 11:04:37 -05:00
parent d0e9db33c8
commit 67ecd08d7a
81 changed files with 1745 additions and 352 deletions

View File

@ -1,9 +1,9 @@
# Home-Assistant Config by [@thejeffreystone](http://www.twitter.com/thejeffreystone) # Home-Assistant Config by [@thejeffreystone](http://www.twitter.com/thejeffreystone)
[Home Assistant](https://home-assistant.io/) configuration files (YAMLs) [Home Assistant](https://home-assistant.io/) configuration files (YAMLs)
This is my Home Assistant Configuration and it is a work in progress. So much to add and so little time. This is version 2 of my Home Assistant Configuration and it is a work in progress.
Currently I am running HA on a Dell Optiplex running Ubuntu 16.04. Currently I am running HA on a Raspberry Pi 3.
**Devices I have :** **Devices I have :**
* Apple Devices (Macbooks, Mac Mini, iPhones, iPads) * Apple Devices (Macbooks, Mac Mini, iPhones, iPads)
@ -16,10 +16,16 @@ Currently I am running HA on a Dell Optiplex running Ubuntu 16.04.
* [GoControl Z-Wave Bulbs](http://a.co/ajfXdIS) * [GoControl Z-Wave Bulbs](http://a.co/ajfXdIS)
* [Cree Connect Bulbs](http://a.co/91ddysL) * [Cree Connect Bulbs](http://a.co/91ddysL)
* [Foscam FI8918W](http://a.co/cExSWZ7) * [Foscam FI8918W](http://a.co/cExSWZ7)
* [ASUS RT-N66U](http://a.co/cCDuNkI)
* [GoControl Z-Wave Garage Door Opener](http://a.co/iw3H4zQ) * [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
* Levitron ZWave Switch
* Dome Motion Sensor
* Dome Door Window Sensor
* AppleTv * AppleTv
* ChromeCast * ChromeCast
* Roku Streaming Stick
**App Integrations** **App Integrations**
* Amazon Echo Skill * Amazon Echo Skill
@ -28,36 +34,13 @@ Currently I am running HA on a Dell Optiplex running Ubuntu 16.04.
* MQTT (For Smartthings and Owntracks) * MQTT (For Smartthings and Owntracks)
* Google Maps (For Traffic/Travel Times) * Google Maps (For Traffic/Travel Times)
* [Smartthings-MQTT-Bridge](https://github.com/stjohnjohnson/smartthings-mqtt-bridge) * [Smartthings-MQTT-Bridge](https://github.com/stjohnjohnson/smartthings-mqtt-bridge)
* [Homebridge](https://github.com/nfarina/homebridge)
**Automations:**
```
LOCATION AWARENESS:
Send notifications based on arrival and departure of zones as well as integration with Echo so Alexa can provide location when asked.
SUNSET:
Turn on Outside lights and Living Room Lamp (100%)
SUNRISE:
Turn off all lights
SECURITY
When smoke is detected all lights turn on
```
**Todo List** **Todo List**
* Move HA to RasberryPi 3. * Add LED Strips to stairs
* Move Automations currently handled by Smartthings to HA.
* Add LED Strips to stairs, kitchen cabinets.
* Add Slack notifications.
* ~~Add GoControl Z-Wave Garage Door Opener~~
* Put Door Sensor in Mailbox * Put Door Sensor in Mailbox
* Add scenes for various daily events and to streamline automation
* Add RGB LED Bulbs to the lamps in the bedrooms and living areas * Add RGB LED Bulbs to the lamps in the bedrooms and living areas
* Add Motion detectors * Add Motion detectors
* Add door sensors
* ~~Integrate with Google Maps to provide traffic and ETA for daily driving routes~~
* Add Smart locks to ensure all doors are locked. * Add Smart locks to ensure all doors are locked.
* Replace other Smoke Detectors with Z-Wave Detectors. * Replace other Smoke Detectors with Z-Wave Detectors.

View File

@ -6,143 +6,135 @@ homeassistant:
unit_system: imperial unit_system: imperial
time_zone: America/New_York time_zone: America/New_York
customize: !include customize.yaml customize: !include customize.yaml
group: !include groups.yaml
automation: !include automation.yaml frontend:
sensor: !include_dir_merge_list sensors themes:
light: !include_dir_merge_list lights blue:
switch: !include_dir_merge_list switches primary-color: "#356AA0"
script: !include scripts.yaml
alexa: !include alexa/intents.yaml
input_select: !include input_select.yaml
scene: !include scenes.yaml
http: http:
api_password: !secret MY_API_PASS api_password: !secret MY_API_PASS
ssl_certificate: !secret SSL_CERT #ssl_certificate: !secret SSL_CERT
ssl_key: !secret SSL_KEY #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
- 192.168.7.0/24
ip_ban_enabled: True
login_attempts_threshold: 5
zone: config:
name: Home
latitude: !secret MY_LATITUDE
longitude: !secret MY_LONGITUDE
radius: 100
icon: mdi:account-multiple
zone 2: conversation:
name: Manheim
latitude: !secret WORK_LATITUDE
longitude: !secret WORK_LONGITUDE
radius: 500
icon: mdi:office
zone 3: device_tracker:
name: Zoo Atlanta - platform: nmap_tracker
latitude: 33.7321545 hosts: 192.168.7.1/24
longitude: -84.3734925 track_new_devices: yes
radius: 350 - platform: icloud
icon: mdi:paw username: !secret ICLOUD_USER
password: !secret ICLOUD_PASS
track_new_devices: yes
- platform: geofency
- platform: owntracks
track_new_devices: yes
#- platform: bluetooth_tracker
zone 4: discovery:
name: Gump
latitude: 33.89261183797744
longitude: -83.96071630537878
radius: 200
icon: mdi:school
zone 5: updater:
name: Pottery #include_used_components: true
latitude: 33.987571
longitude: -84.0951167
radius: 100
icon: mdi:palette
zone 6: sun:
name: The Learning Gym
latitude: 33.8992118
longitude: -84.0054688
radius: 100
icon: mdi:dumbbell
zone 7: #https://home-assistant.io/components/recorder/
name: Gwinnett Swim recorder:
latitude: 34.1414549 purge_interval: 1
longitude: -83.9602195 purge_keep_days: 3
radius: 100
icon: mdi:swim
zone 8: #https://home-assistant.io/components/logger/
name: Summit logger:
latitude: !secret SUMMIT_LATITUDE default: error
longitude: !secret SUMMIT_LONGITUDE logs:
radius: 500 homeassistant.components.sensor.template: critical
icon: mdi:office homeassistant.components.cover: critical
history:
#zwave:
# usb_path: /dev/ttyACM0
media_player:
- platform: cast
- platform: apple_tv
host: 192.168.7.23
login_id: !secret apple_tv_login
- platform: roku
host: 192.168.7.52
name: roku living room
- platform: vlc
name: hass_speaker
arguments: '--alsa-audio-device=hw:0,0'
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: mqtt:
broker: 192.168.1.20 broker: 192.168.7.24
port: 1883 port: 1883
username: !secret MQTT_USER username: !secret MQTT_USER
password: !secret MQTT_PASS password: !secret MQTT_PASS
# View all events in a logbook
logbook:
# Enables support for tracking state changes over time. ### Includes ###
history: alert: !include_dir_merge_named alerts/
group: !include groups.yaml
automation: !include_dir_merge_list automation
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
ios: !include ios.yaml
# Enables the frontend duckdns:
frontend: domain: !secret duckdns_domain
access_token: !secret duckdns_token
# Allows you to issue voice commands from the frontend
conversation:
#camera:
# platform: mjpeg
# mjpeg_url: !secret CAMERA
# name: Skylars Room
climate:
platform: honeywell
username: !secret HONEYWELL_USER
password: !secret HONEYWELL_PASS
name: First Floor
region: us
device_tracker:
- platform: asuswrt
host: 192.168.1.1
protocol: telnet
mode: router
username: !secret ROUTER_USER
password: !secret ROUTER_PASS
interval_seconds: 60
consider_home: 180
- platform: icloud
username: !secret ICLOUD_USER
password: !secret ICLOUD_PASS
interval_seconds: 60
consider_home: 180
- platform: bluetooth_tracker
notify: python_script:
# platform: googlevoice
# username: !secret GV_USER ### Devices and Services
# password: !secret GV_PASS
# name: googlevoice
# - platform: pushbullet
# api_key: !secret pushbullet_api
platform: ios
ifttt: ifttt:
key: !secret IFTTT_API_KEY key: !secret IFTTT_API_KEY
media_player:
- platform: cast
host: 192.168.1.219
- platform: apple_tv
host: 192.168.1.12
login_id: !secret apple_tv_login
cover: cover:
- platform: mqtt - platform: mqtt
name: "Garage Door" name: "Garage Door"
@ -155,14 +147,23 @@ cover:
retain: true retain: true
optimistic: true optimistic: true
# Discover some devices automatically climate:
discovery: platform: honeywell
username: !secret HONEYWELL_USER
password: !secret HONEYWELL_PASS
name: First Floor
region: us
scan_interval: 600
# Checks for available updates alexa:
updater:
# Track the sun map:
sun:
# iOS ### Custom Commands
ios:
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

View File

@ -87,14 +87,25 @@ sensor.dark_sky_daily_max_precip_intensity:
# Devices # # Devices #
device_tracker.owntracks_jeffreysphone: device_tracker.owntracks_jeffreystonesiphone:
#icon: mdi:human-male #icon: mdi:human-male
entity_picture: !secret JEFF_ICON entity_picture: !secret JEFF_ICON
friendly_name: Jeff friendly_name: Jeff
sensor.jeffrey_location:
#icon: mdi:human-male
entity_picture: !secret JEFF_ICON
friendly_name: Jeff
sensor.jeff_destination:
icon: mdi:google-maps
name: "Jeffs Destination"
device_tracker.jeffreystonesiphone: device_tracker.jeffreystonesiphone:
#icon: mdi:human-male #icon: mdi:human-male
entity_picture: !secret JEFF_ICON entity_picture: !secret JEFF_ICON
friendly_name: Jeff friendly_name: Jeff
sensor.jeff_phone_battery: sensor.jeff_phone_battery:
icon: mdi:battery-30 icon: mdi:battery-30
friendly_name: "Jeff's iPhone Battery" friendly_name: "Jeff's iPhone Battery"
@ -156,6 +167,9 @@ sensor.kat_ipad:
sensor.appletv: sensor.appletv:
icon: mdi:apple icon: mdi:apple
sensor.roku:
icon: mdi:television
sensor.xboxone: sensor.xboxone:
icon: mdi:xbox icon: mdi:xbox
@ -196,22 +210,18 @@ switch.tower_lamp:
switch.driveway_light: switch.driveway_light:
icon: mdi:lightbulb icon: mdi:lightbulb
switch.side_door_light: switch.side_door:
icon: mdi:lightbulb icon: mdi:lightbulb
switch.front_porch_left: switch.front_porch:
icon: mdi:lightbulb icon: mdi:lightbulb
switch.front_porch_right: switch.front_lamp:
icon: mdi:lightbulb icon: mdi:lightbulb
switch.rail_lights: switch.loft_lamp:
icon: mdi:lightbulb icon: mdi:lightbulb
sensor.garage_door:
friendly_name: Garage Door
cover.garage_door: cover.garage_door:
device_class: garage device_class: garage
friendly_name: Garage Door friendly_name: Garage Door
@ -227,3 +237,131 @@ sensor.home_to_zoo:
sensor.pws_alerts: sensor.pws_alerts:
friendly_name: "Weather Alerts" friendly_name: "Weather Alerts"
icon: mdi:alert icon: mdi:alert
switch.master_fan:
friendly_name: "Master Box Fan"
icon: mdi:power-plug
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
sensor.kitchen_fire:
name: Kitchen Smoke Detector
icon: mdi:tower-fire
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
sensor.eero_loft:
icon: mdi:router-wireless
sensor.eero_livingroom:
icon: mdi:router-wireless
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
media_player.roku_5s6719003683:
friendly_name: Roku Living Room
icon: mdi:youtube-tv
switch.kitchen_cabinets:
icon: mdi:lightbulb
switch.kitchen_light_strip:
icon: mdi:lightbulb
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
###### Groups #######

View File

@ -1,13 +1,40 @@
### GROUPS ### ### Views ###
default_view: default_view:
name: Home name: Home
view: yes view: yes
icon: mdi:home icon: mdi:home
entities: entities:
- group.notices - persistent_notification.wxalert
- group.family - group.house
- group.weather_summary - group.thermostat
- group.travel_times - group.garage
- group.appliances
- group.pollen_forecast
- group.outside_temp
security:
name: Security
view: yes
icon: mdi:security
entities:
- group.security_system
- group.security_alerts
- group.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: people:
name: People name: People
@ -16,73 +43,146 @@ people:
entities: entities:
- group.jeffrey - group.jeffrey
- group.katherine - group.katherine
- group.travel_times
living: media:
name: Living name: media
view: yes view: yes
icon: mdi:sofa icon: mdi:theater
entities: entities:
- group.living_lights - group.tvs
- group.living_scenes - group.gaming
- group.living_tv
- group.living_gaming
- media_player.apple_tv - media_player.apple_tv
- media_player.chromecast_lr - media_player.living_room_tv
- media_player.roku_5s6719003683
- media_player.guest_tv
outdoors: power:
name: Outdoors name: power usage
view: yes
icon: mdi:power-plug
entities:
- group.laundry_room
weather:
name: weather
view: yes view: yes
icon: mdi:tree icon: mdi:tree
entities: entities:
- group.outside_lights - group.weather_summary
- group.weather_alerts
garage: - group.sun_and_moon
name: Garage - group.weather_forecast
view: yes - group.pollen_forecast
icon: mdi:car
entities:
- group.garage_door
network:
name: Network
view: yes
icon: mdi:network
entities:
- group.internet
- group.computers
- group.home_automation
- group.servers
weather:
name: Weather
view: yes
icon: mdi:weather-partlycloudy
entities:
- group.temperature
- group.precipitation - group.precipitation
- group.wind - group.wind
- group.daily_stats - group.daily_stats
homeassistant:
name: HA
view: yes
icon: mdi:home-automation
entities:
- group.ha_system_monitor
- group.ha_version_info
- group.file_size
- group.internet
- group.computers
- 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.automations
- group.notifications
################################################################################# #################################################################################
### Grops ### ### Grops ###
Notices: Security Status:
- sensor.pws_alerts
- sensor.garage_door - 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.garage_issue
- 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.house_status
- input_boolean.audible_notifications
- input_boolean.guest_mode
Motion Sensors:
- binary_sensor.garage_dome_sensor
Doors:
- binary_sensor.back_door
- binary_sensor.front_door
- binary_sensor.laundry_room_door
- binary_sensor.attic_door
- binary_sensor.garage_door
Attic:
- binary_sensor.attic_door
Family: Family:
- device_tracker.jeffreystonesiphone - device_tracker.jeffreystonesiphone
- device_tracker.owntracks_jeffreystonesiphone
- device_tracker.katherinestonesiphone - device_tracker.katherinestonesiphone
Jeffrey: Jeffrey:
- device_tracker.jeffreystonesiphone control: hidden
entities:
- device_tracker.owntracks_jeffreystonesiphone
- sensor.jeff_lstatus
- sensor.jeff_destination
- sensor.jeff_iphone_batt - sensor.jeff_iphone_batt
- sensor.jeff_ett_home - sensor.jeff_ett_home
- input_select.jeff_status - input_boolean.jeff_heading_home
- input_boolean.text_notify_jeff
Jeffrey Location:
control: hidden
entities:
- device_tracker.owntracks_jeffreystonesiphone
- device_tracker.jeffreystonesiphone
Katherine: Katherine:
control: hidden
entities:
- device_tracker.katherinestonesiphone - device_tracker.katherinestonesiphone
- sensor.kat_iphone_batt - sensor.kat_iphone_batt
- sensor.kat_ett_home - sensor.kat_ett_home
- input_boolean.kat_heading_home
- input_boolean.text_notify_kat
Travel Times: Travel Times:
- sensor.home_to_summit - sensor.home_to_summit
@ -90,43 +190,77 @@ Travel Times:
- sensor.jeff_ett_home - sensor.jeff_ett_home
- sensor.kat_ett_home - sensor.kat_ett_home
Living Room:
Living Lights:
- switch.fireplace_lights - switch.fireplace_lights
- light.tower_lamp - light.tower_lamp
- switch.rail_lights - light.front_lamp
Living Scenes: Loft:
- light.loft_lamp
Master Bedroom:
- switch.master_fan
Laundry Room:
#- switch.washer
- sensor.washer_power
Kitchen:
- light.kitchen_cabinets
- light.kitchen_light_strip
Appliances:
- sensor.washer_status
Scenes:
- scene.livingroom_dim - scene.livingroom_dim
- scene.livingroom_night - scene.livingroom_night
- scene.livingroom_normal - scene.livingroom_normal
- scene.movie_time
- scene.dim_kitchen
- scene.normal_kitchen
Outside Lights: Outside Lights:
- switch.driveway_light - switch.driveway_light
- switch.side_door_light - switch.side_door
- switch.front_porch_left - switch.front_porch
- switch.front_porch_right
Driveway:
- switch.driveway_light
- switch.side_door
Front Porch:
- switch.front_porch
Thermostat: Thermostat:
- climate.first_floor - climate.first_floor
Sun and Moon: Sun and Moon:
- sun.sun - sun.sun
- sun.next_rising
- sun.next_setting
- sensor.moon - sensor.moon
Weather Summary: Weather Summary:
- sensor.dark_sky_summary - sensor.dark_sky_summary
- sensor.dark_sky_apparent_temperature - sensor.dark_sky_apparent_temperature
- sensor.dark_sky_humidity - sensor.dark_sky_humidity
- sensor.dark_sky_dew_point
- sensor.accurite_back_porch_temperature
- sensor.accurite_back_porch_humidity
Weather Forecast:
- sensor.dark_sky_minutely_summary - sensor.dark_sky_minutely_summary
- sensor.dark_sky_hourly_summary - sensor.dark_sky_hourly_summary
- sensor.dark_sky_daily_summary - sensor.dark_sky_daily_summary
Temperature: Outside Temp:
- sensor.dark_sky_temperature
- sensor.dark_sky_apparent_temperature - sensor.dark_sky_apparent_temperature
- sensor.dark_sky_humidity - sensor.dark_sky_humidity
- sensor.dark_sky_dew_point - sensor.dark_sky_dew_point
- sensor.accurite_back_porch_temperature
- sensor.accurite_back_porch_humidity
Precipitation: Precipitation:
- sensor.dark_sky_nearest_storm_distance - sensor.dark_sky_nearest_storm_distance
@ -151,24 +285,18 @@ Internet:
- sensor.speedtest_download - sensor.speedtest_download
- sensor.speedtest_upload - sensor.speedtest_upload
#HVAC:
# - device_tracker.gateway2f3bca
Home Automation: Home Automation:
- sensor.smartthings - sensor.smartthings
- sensor.amazon_dot_lr - sensor.amazon_dot_lr
- sensor.amazon_dot_kn - sensor.amazon_dot_kn
- sensor.honeywell - sensor.honeywell
- sensor.eero_loft
- sensor.eero_livingroom
#Cameras: #Cameras:
# - device_tracker.ipcam_00626e46eb09_1 # - device_tracker.ipcam_00626e46eb09_1
TVs: TVs:
- sensor.samsungtv - sensor.samsungtv
Living TV:
- sensor.samsungtv
Living Gaming:
- sensor.xboxone - sensor.xboxone
Computers: Computers:
@ -178,9 +306,73 @@ Computers:
- sensor.kat_ipad - sensor.kat_ipad
- sensor.kat_mini - sensor.kat_mini
Servers:
- sensor.tycho
- sensor.tightbeam
Garage Door: Garage Door:
- cover.garage_door - cover.garage_door
Modes:
control: hidden
entities:
- input_boolean.secure_mode
- input_boolean.vacation_mode
- input_boolean.guest_mode
Automation:
- input_boolean.automations
Zones:
- binary_sensor.zone_3
Garage:
- cover.garage_door
- binary_sensor.garage_dome_sensor
- sensor.accurite_garage_temperature
- sensor.accurite_garage_humidity
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_warning
- sensor.tornado_watch
- sensor.tornado_warning
Pollen Alerts:
control: hidden
entities:
- sensor.allergy_index_average_forecasted
- sensor.allergy_index_average_historical
- sensor.allergy_index_today
- sensor.allergy_index_tomorrow
- sensor.cold__flu_forecasted_average
Trash Schedule:
- input_select.trash_pickup
- input_select.recycle_pickup
- input_boolean.trash_notification

77
input_boolean.yaml Normal file
View File

@ -0,0 +1,77 @@
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
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_notifications:
name: Skylar Audible Notifications
icon: mdi:speaker-wireless

View File

@ -1,14 +1,26 @@
jeff_status: alarm_mode:
name: Jeff Status name: alarm mode
options: options:
- stationary - home_armed
- moving - away_armed
- unknown - disarmed
initial: unknown trash_pickup:
kat_status: name: Trash Pickup
name: Kat Status
options: options:
- stationary - Monday
- moving - Tuesday
- unknown - Wednesday
initial: unknown - 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

50
ios.yaml Normal file
View File

@ -0,0 +1,50 @@
push:
categories:
- name: Lamps Off
identifier: 'Lamps'
actions:
- identifier: 'LAMPS_OFF'
title: 'Lamps Off'
activationMode: 'background'
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'DISMISS'
title: 'Dismiss'
activationMode: 'background'
authenticationRequired: yes
destructive: no
behavior: 'default'
- name: Htpc Off
identifier: 'Htpc'
actions:
- identifier: 'HTPC_OFF'
title: 'Htpc Off'
activationMode: 'background'
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'DISMISS'
title: 'Dismiss'
activationMode: 'background'
authenticationRequired: yes
destructive: no
behavior: 'default'
- name: Dektop Off
identifier: 'Desktop'
actions:
- identifier: 'DESKTOP_OFF'
title: 'Desktop Off'
activationMode: 'background'
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'DISMISS'
title: 'Dismiss'
activationMode: 'background'
authenticationRequired: yes
destructive: no
behavior: 'default'

19
lights/kitchen.yaml Normal file
View 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

View File

@ -4,6 +4,17 @@
command_topic: "smartthings/Tower Lamp/switch" command_topic: "smartthings/Tower Lamp/switch"
brightness_state_topic: "smartthings/Tower Lamp/level" brightness_state_topic: "smartthings/Tower Lamp/level"
brightness_command_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_on: "on"
payload_off: "off" payload_off: "off"
retain: true retain: true

10
lights/loft.yaml Normal file
View 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

View File

@ -3,14 +3,37 @@
light.tower_lamp: light.tower_lamp:
state: on state: on
brightness: 100 brightness: 100
light.front_lamp:
state: on
brightness: 100
- name: livingroom dim - name: livingroom dim
entities: entities:
light.tower_lamp: light.tower_lamp:
state: on state: on
brightness: 40 brightness: 40
light.front_lamp:
state: on
brightness: 40
- name: livingroom night - name: livingroom night
entities: entities:
light.tower_lamp: light.tower_lamp:
state: on state: on
brightness: 10 brightness: 10
light.front_lamp:
state: off
- name: movie time
entities:
light.tower_lamp:
state: off
light.front_lamp:
state: off
- name: dim kitchen
entities:
light.kitchen_cabinets:
state: on
brightness: 40
- name: normal kitchen
entities:
light.kitchen_cabinets:
state: on
brightness: 100

View File

@ -0,0 +1,5 @@
appliances_off:
sequence:
- service: switch.turn_off
data:
entity_id: switch.master_fan

View File

@ -0,0 +1,5 @@
appliances_on:
sequence:
- service: switch.turn_on
data:
entity_id: switch.master_fan

12
scripts/driveway_off.yaml Normal file
View File

@ -0,0 +1,12 @@
# Turn off Driveway lights after 10 minute delay
driveway_off:
sequence:
- delay:
minutes: 10
- service: switch.turn_off
data:
entity_id: switch.driveway_light
- service: switch.turn_off
data:
entity_id: switch.side_door

12
scripts/driveway_on.yaml Normal file
View 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

View File

@ -0,0 +1,6 @@
family_is_away:
sequence:
- service: mqtt.publish
data:
topic: "house/family/status"
payload_template: "away"

View File

@ -0,0 +1,6 @@
family_is_home:
sequence:
- service: mqtt.publish
data:
topic: "house/family/status"
payload_template: "home"

View File

@ -0,0 +1,15 @@
fire_alarm_kitchen:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Smoke Detected: Kitchen"
- delay:
minutes: 1
- service: notify.jeff_ios
data:
message: 'Smoke Detected in Kitchen.'
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Attention. Smoke detected in the kitchen.

View File

@ -0,0 +1,16 @@
garage_abort_lockdown:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Aborting Lockdown - Garage Could Not Close"
- condition: state
entity_id: input_boolean.secure_mode
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage was unable to close.
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode

11
scripts/garage_close.yaml Normal file
View File

@ -0,0 +1,11 @@
close_garage:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "HASS: Closing Garage"
- condition: state
entity_id: cover.garage_door
state: "open"
- service: cover.close_cover
entity_id: cover.garage_door

View File

@ -0,0 +1,11 @@
garage_closing:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "INFO: Garage Closing"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage is Closing

View File

@ -0,0 +1,13 @@
garage_failed_to_close:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "WARN: Garage Could Not Close"
- condition: state
entity_id: sensor.garage_door_contact
state: "open"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage was unable to close.

View File

@ -0,0 +1,16 @@
#garage_now_closed:
# sequence:
# - event: LOGBOOK_ENTRY
# event_data:
# name: EVENT
# message: "SUCCESS: Garage Now Closed"
# - condition: state
# entity_id: sensor.garage_door_contact
# state: "closed"
#- service: notify.jeff_ios
# data:
# message: 'SUCCESS: Garage Now Closed'
#- service: tts.google_say
# data:
# entity_id: media_player.hass_speaker
# message: Garage has been Closed.

11
scripts/garage_open.yaml Normal file
View File

@ -0,0 +1,11 @@
open_garage:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "opening the garage"
- condition: state
entity_id: cover.garage_door
state: "closed"
- service: cover.open_cover
entity_id: cover.garage_door

View File

@ -1,8 +1,12 @@
sequence: inside_all_off:
- event: LOGBOOK_ENTRY sequence:
event_data: - event: LOGBOOK_ENTRY
name: EVENT event_data:
message: "Turning inside lights off." name: EVENT
- service: switch.turn_off message: "Turning inside lights off"
data: - service: light.turn_off
entity_id: switch.tower_lamp data:
entity_id: light.tower_lamp
- service: light.turn_off
data:
entity_id: light.front_lamp

View File

@ -1,11 +1,15 @@
sequence: inside_all_on:
- event: LOGBOOK_ENTRY sequence:
event_data: - event: LOGBOOK_ENTRY
name: EVENT event_data:
message: "Turning inside lights on." name: EVENT
- service: switch.turn_on message: "Turning inside lights on."
data: - service: light.turn_on
entity_id: switch.tower_lamp data:
- service: scene.turn_on entity_id: light.tower_lamp
data: - service: light.turn_on
entity_id: scene.livingroom_normal data:
entity_id: light.front_lamp
- service: scene.turn_on
data:
entity_id: scene.livingroom_normal

View 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

View File

@ -0,0 +1,7 @@
jeff_destination_arrived:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Arrived"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_harbins:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Harbins"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_home:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Home"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_na:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "na"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_none:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "none"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_summit:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Summit"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_zoo:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Zoo"
retain: true

View File

@ -0,0 +1,9 @@
jeff_is_home_audible:
sequence:
- condition: state
entity_id: input_boolean.audible_notifications
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Jeffrey is home

View File

@ -1,9 +1,7 @@
sequence: jeff_is_moving:
- event: LOGBOOK_ENTRY sequence:
event_data: - service: mqtt.publish
name: EVENT data:
message: "Jeff is Moving" topic: "jeff/location/status"
- service: input_select.select_option payload: "moving"
data: retain: true
entity_id: input_select.jeff_status
option: moving

View File

@ -1,9 +1,7 @@
sequence: jeff_is_stationary:
- event: LOGBOOK_ENTRY sequence:
event_data: - service: mqtt.publish
name: EVENT data:
message: "Jeff is Stationary" topic: "jeff/location/status"
- service: input_select.select_option payload: "stationary"
data: retain: true
entity_id: input_select.jeff_status
option: stationary

View File

@ -0,0 +1,9 @@
kat_is_home_audible:
sequence:
- condition: state
entity_id: input_boolean.audible_notifications
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Katherine is home

View File

@ -0,0 +1,7 @@
kill_audible_alarm:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Silence Alarm"
- service: shell_command.alarm_off

9
scripts/lockdown.yaml Normal file
View File

@ -0,0 +1,9 @@
lockdown:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Executing Lockdown procedures"
- service: input_boolean.turn_on
data:
entity_id: input_boolean.secure_mode

View File

@ -0,0 +1,11 @@
lockdown:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Executing Lockdown in 5 mins"
- delay:
minutes: 5
- service: input_boolean.turn_on
data:
entity_id: input_boolean.secure_mode

View File

@ -1,17 +1,15 @@
sequence: outside_all_off:
- event: LOGBOOK_ENTRY sequence:
event_data: - event: LOGBOOK_ENTRY
name: EVENT event_data:
message: "Turning outside lights off." name: EVENT
- service: switch.turn_off message: "Turning outside lights off."
data: - service: switch.turn_off
entity_id: switch.driveway_light data:
- service: switch.turn_off entity_id: switch.driveway_light
data: - service: switch.turn_off
entity_id: switch.side_door_light data:
- service: switch.turn_off entity_id: switch.side_door_light
data: - service: switch.turn_off
entity_id: switch.front_porch_left data:
- service: switch.turn_off entity_id: switch.front_porch
data:
entity_id: switch.front_porch_right

View File

@ -1,17 +1,16 @@
sequence: outside_all_on:
- event: LOGBOOK_ENTRY sequence:
event_data: - event: LOGBOOK_ENTRY
name: EVENT event_data:
message: "Turning outside lights on." name: EVENT
- service: switch.turn_on message: "Turning outside lights on."
data: - service: switch.turn_on
entity_id: switch.driveway_light data:
- service: switch.turn_on entity_id: switch.driveway_light
data: - service: switch.turn_on
entity_id: switch.side_door_light data:
- service: switch.turn_on entity_id: switch.side_door_light
data: - service: switch.turn_on
entity_id: switch.front_porch_left data:
- service: switch.turn_on entity_id: switch.front_porch
data:
entity_id: switch.front_porch_right

View File

@ -0,0 +1,13 @@
security_access_authorized:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Access Authorized: Security Measures Standing Down"
#- service: notify.jeff_ios
# data:
# message: 'Access Authorized: Security Measures Standing Down'
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Access Authorized. Security response has been canceled

View File

@ -0,0 +1,18 @@
security_check_garage:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Performing Security check - Garage"
- condition: state
#entity_id: sensor.garage_door_contact
entity_id: cover.garage_door
state: "open"
- delay:
minutes: 1
- service: input_boolean.turn_on
data:
entity_id: input_boolean.garage_issue
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode

View File

@ -0,0 +1,16 @@
security_check_verified:
sequence:
- condition: state
#entity_id: sensor.garage_door_contact
entity_id: cover.garage_door
state: "closed"
- condition: state
entity_id: group.doors
state: "closed"
- service: notify.jeff_ios
data:
message: "SECURITY: Lockdown procedures Complete"
- service: homeassistant.turn_off
entity_id: script.security_check_zones
- service: homeassistant.turn_off
entity_id: script.security_check_garage

View File

@ -0,0 +1,17 @@
security_check_zones:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Performing Security check - Zones"
- condition: state
entity_id: group.doors
state: "Open"
- delay:
seconds: 20
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode
- service: input_boolean.turn_on
data:
entity_id: input_boolean.security_issue

View File

@ -0,0 +1,31 @@
security_report:
sequence:
- delay:
seconds: 9
- service: tts.google_say
data_template:
entity_id: media_player.hass_speaker
message: >
{%- if is_state("input_boolean.security_alarm", "on") %}
{%- if is_state("binary_sensor.front_door", "on") %}
Front door is open
{%- endif %}
{%- if is_state("binary_sensor.back_door", "on") %}
Back door is open
{%- endif %}
{%- if is_state("binary_sensor.laundry_room_door", "on") %}
Laundry door is open
{%- endif %}
{%- if is_state("binary_sensor.attic_door", "on") %}
Attic door is open
{%- endif %}
{%- if is_state("binary_sensor.garage_door", "on") %}
Garage door is open
{%- endif %}
{%- if is_state("binary_sensor.garage_motion", "on") %}
Motion in garage
{%- endif %}
{% else %}
House is secure
{%- endif %}

View File

@ -0,0 +1,9 @@
security_sound_alarm:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Sounding Security Alarm"
- delay:
seconds: 80
- service: shell_command.security_alarm

View File

@ -0,0 +1,10 @@
security_sound_alarm_intro:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Sounding Security Alarm Intro"
- condition: state
entity_id: sensor.family_status
state: home
- service: shell_command.security_alarm_intro

View File

@ -0,0 +1,12 @@
security_warning_back_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Back door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Back door open

View File

@ -0,0 +1,12 @@
security_warning_front_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Front door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: front door open

View File

@ -0,0 +1,12 @@
security_warning_garage_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Front door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage is open

View File

@ -0,0 +1,12 @@
security_warning_garage_motion:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Motion in Garage"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Motion in Garage

View File

@ -0,0 +1,12 @@
security_warning_front_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Laundry room door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Laundry Room door open

View File

@ -0,0 +1,9 @@
skylar_dressed_notifications:
sequence:
- condition: state
entity_id: sensor.family_status
state: home
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Skylar it is time to get dressed

12
scripts/standby.yaml Normal file
View File

@ -0,0 +1,12 @@
standby:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Security standing down"
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode
- service: notify.jeff_ios
data:
message: Anchorage House in Standby

View File

@ -0,0 +1,17 @@
status_report:
sequence:
- service: tts.google_say
data_template:
entity_id: media_player.hass_speaker
message: >
{% if now().strftime("%H")|int < 12 %}
Good morning
{% elif now().strftime("%H")|int < 18 %}
Good afternoon
{% else %}
Good evening
{% endif %}
It's {{now().strftime("%H%M")}}
It's currently {{states.sensor.dark_sky_summary.state}} and {{states.sensor.dark_sky_temperature.state|round}}
degrees in Grayson. Today will be {{states.sensor.dark_sky_hourly_summary.state|replace(".", "")}}, with a high of
{{states.sensor.dark_sky_daily_high_temperature.state|round}} degrees.

14
scripts/test_tts.yaml Normal file
View File

@ -0,0 +1,14 @@
test_tts:
sequence:
- service: tts.google_say
data_template:
entity_id: media_player.hass_speaker
message: >
{% if now().strftime("%H")|int < 12 %}
Good morning
{% elif now().strftime("%H")|int < 18 %}
Good afternoon
{% else %}
Good evening
{% endif %}
This is simply a test of google's text to speech platform

View File

@ -0,0 +1,12 @@
tornado_alarm:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Sounding Tornado Alarm"
- delay:
seconds: 15
- service: shell_command.tornado_alarm

View File

@ -0,0 +1,13 @@
tornado_warning:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Tornado Warning"
#- service: notify.jeff_ios
# data:
# message: 'Tornado Warning Issued for Anchorage House.'
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Atention. Severe Weather Alert. A Tornado Warning has been issued for this area. Repeat. A Tornado Warning has been issued for this area. Sounding Alarm.

View File

@ -0,0 +1,8 @@
vacation_canceled:
sequence:
- condition: state
entity_id: input_boolean.vacation_mode
state: "on"
- service: input_boolean.turn_off
data:
entity_id: input_boolean.vacation_mode

View File

@ -0,0 +1,14 @@
washer_finished_notification:
sequence:
- condition: state
entity_id: input_boolean.washer_notification
state: 'on'
- delay:
minutes: 3
- service: notify.all_ios
data:
message: "Washer is done"
- service: input_boolean.turn_off
data:
entity_id: input_boolean.washer_notification
- service: script.washer_notification_audible

View File

@ -0,0 +1,10 @@
washer_notification_audible:
sequence:
- condition: state
entity_id: input_boolean.audible_notifications
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: The Washing Machine has stopped

17
scripts/wxalert_tile.yaml Normal file
View 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 }}'

32
sensors/batteries.yaml Normal file
View File

@ -0,0 +1,32 @@
- 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: "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 %}'

View File

@ -2,15 +2,11 @@
sensors: sensors:
amazon_dot_lr: amazon_dot_lr:
friendly_name: 'Amazon Dot LR' friendly_name: 'Amazon Dot LR'
value_template: "{{ 'Online' if is_state('device_tracker.kindlecdf98981f', 'home') else 'Offline' }}" value_template: "{{ 'Online' if is_state('device_tracker.dot_livingroom', 'home') else 'Offline' }}"
amazon_dot_kn: amazon_dot_kn:
friendly_name: 'Amazon Dot KN' friendly_name: 'Amazon Dot KN'
value_template: "{{ 'Online' if is_state('device_tracker.kindle23d7b37a0', 'home') else 'Offline' }}" value_template: "{{ 'Online' if is_state('device_tracker.dot_kitchen', 'home') else 'Offline' }}"
circle:
friendly_name: 'Disney Circle'
value_template: "{{ 'Online' if is_state('device_tracker.circle', 'home') else 'Offline' }}"
tycho: tycho:
friendly_name: 'tycho' friendly_name: 'tycho'
@ -28,9 +24,9 @@
friendly_name: 'xboxone' friendly_name: 'xboxone'
value_template: "{{ 'Online' if is_state('device_tracker.xboxone', 'home') else 'Offline' }}" value_template: "{{ 'Online' if is_state('device_tracker.xboxone', 'home') else 'Offline' }}"
chromecast: chromecast_livingroom:
friendly_name: 'Chromecast' friendly_name: 'Chromecast - Living Room'
value_template: "{{ 'On' if is_state('media_player.chromecast_lr', 'on') else 'Off' }}" value_template: "{{ 'On' if is_state('media_player.chromecast_livingroom', 'on') else 'Off' }}"
smartthings: smartthings:
friendly_name: 'SmartThings' friendly_name: 'SmartThings'
@ -44,10 +40,6 @@
friendly_name: 'Honeywell' friendly_name: 'Honeywell'
value_template: "{{ 'Online' if is_state('device_tracker.gateway2f3bca', 'home') else 'Offline' }}" value_template: "{{ 'Online' if is_state('device_tracker.gateway2f3bca', 'home') else 'Offline' }}"
router:
friendly_name: 'Asus Router'
value_template: "{{ 'Online' if is_state('device_tracker.routerasuscom', 'home') else 'Offline' }}"
kat_mini: kat_mini:
friendly_name: "Kat's Mini" friendly_name: "Kat's Mini"
value_template: "{{ 'Online' if is_state('device_tracker.katherinesmini', 'home') else 'Offline' }}" value_template: "{{ 'Online' if is_state('device_tracker.katherinesmini', 'home') else 'Offline' }}"
@ -68,22 +60,36 @@
friendly_name: "Kat's iPad" friendly_name: "Kat's iPad"
value_template: "{{ 'Online' if is_state('device_tracker.katherinesipad', 'home') else 'Offline' }}" value_template: "{{ 'Online' if is_state('device_tracker.katherinesipad', 'home') else 'Offline' }}"
jeff_iphone_batt: eero_livingroom:
unit_of_measurement: '%' friendly_name: "Eero Living Room"
value_template: >- value_template: "{{ 'Online' if is_state('device_tracker.eero_livingroom', 'home') else 'Offline' }}"
{%- 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: eero_loft:
unit_of_measurement: '%' 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' }}"
washer_status:
friendly_name: "Washer Status"
value_template: >- value_template: >-
{%- if states.device_tracker.katherinestonesiphone.attributes.battery %} {% if states('sensor.washer_power') | float > 2 %}
{{ states.device_tracker.katherinestonesiphone.attributes.battery | round(1) }} running
{% else %} {% else %}
{{ states.sensor.kat_iphone_batt.state }} idle
{%- endif %} {%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 %}' icon_template: mdi:washing-machine

View File

@ -1,7 +1,7 @@
- platform: google_travel_time - platform: google_travel_time
name: "Jeff ETT Home" name: "Jeff ETT Home"
api_key: !secret google_api api_key: !secret google_api
origin: device_tracker.jeffreystonesiphone origin: device_tracker.owntracks_jeffreystonesiphone
destination: zone.home destination: zone.home
- platform: google_travel_time - platform: google_travel_time
name: "Kat ETT Home" name: "Kat ETT Home"

25
sensors/house.yaml Normal file
View File

@ -0,0 +1,25 @@
- platform: mqtt
name: "Family Status"
state_topic: "house/family/status"
payload_on: "home"
payload_off: "away"
retain: true
- platform: template
sensors:
house_status:
friendly_name: Status
unit_of_measurement: ''
value_template: >-
{%- if is_state("sensor.family_status", "home") %}
Home ({{ states.sensor.security_status.state }})
{% else %}
Away ({{ states.sensor.security_status.state }})
{%- endif %}
icon_template: >-
{%- if is_state("sensor.family_status", "home") %}
mdi:home
{%- elif is_state("sensor.family_status", "away") %}
mdi:home-outline
{% else %}
mdi:home-outline
{%- endif %}

View File

@ -1,12 +1,13 @@
- platform: mqtt - platform: mqtt
name: "Jeff Phone Battery" name: "Jeff Phone Battery"
state_topic: "owntracks/owntracks/jeffreysphone" state_topic: "owntracks/owntracks/jeffreystonesiphone"
qos: 0 qos: 0
unit_of_measurement: "%" unit_of_measurement: "%"
value_template: '{{ value_json.batt }}' value_template: '{{ value_json.batt }}'
- platform: mqtt - platform: mqtt
name: "Jeff Velocity" name: "Jeff Velocity"
state_topic: "owntracks/owntracks/jeffreysphone" state_topic: "owntracks/owntracks/jeffreystonesiphone"
qos: 0 qos: 0
unit_of_measurement: "mph" unit_of_measurement: "kmh"
value_template: '{{ value_json.vel }} ' value_template: '{{ value_json.vel }} '

4
sensors/power.yaml Normal file
View File

@ -0,0 +1,4 @@
- platform: mqtt
name: "Washer Power"
state_topic: "smartthings/Washer/power"
retain: true

12
sensors/presence.yaml Normal file
View File

@ -0,0 +1,12 @@
- 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

9
sensors/security.yaml Normal file
View 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

57
sensors/system.yaml Normal file
View 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 ' '"

45
sensors/users.yaml Normal file
View File

@ -0,0 +1,45 @@
- platform: mqtt
name: "Jeff Destination"
state_topic: "jeff/driving/destination"
- platform: mqtt
name: "Jeff Status"
state_topic: "jeff/location/status"
- platform: template
sensors:
jeff_lstatus:
friendly_name: Jeff is
unit_of_measurement: ''
value_template: >-
{%- if is_state("sensor.jeff_status", "moving") %}
moving
{% else %}
stationary
{%- endif %}
icon_template: >-
{%- if is_state("sensor.jeff_status", "moving") %}
mdi:bike
{% else %}
mdi:map-marker
{%- endif %}
- 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 %}

View File

@ -34,3 +34,92 @@
seconds: 0 seconds: 0
milliseconds: 0 milliseconds: 0
- platform: moon - 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 is_state("sensor.pws_alerts.attributes.Description", "Tornado Warning") %}
active
{% elif is_state("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 is_state("sensor.pws_alerts.attributes.Description", "Tornado Watch") %}
active
{% elif is_state("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 is_state("sensor.pws_alerts.attributes.Description", "Severe Thunderstorm Warning") %}
active
{% elif is_state("sensor.pws_alerts.attributes.Description_WRN", "Severe Thunderstorm Warning") %}
active
{% else %}
inactive
{%- endif %}
icon_template: mdi:message-alert
storm_statement:
friendly_name: 'Storm Statement'
value_template: >-
{%- if is_state("sensor.pws_alerts.attributes.Description", "Severe Weather Statement") %}
active
{% elif is_state("sensor.pws_alerts.attributes.Description_SVR", "Severe Weather Statement") %}
active
{% else %}
inactive
{%- endif %}
icon_template: mdi:message-alert

7
switches/laundry.yaml Normal file
View File

@ -0,0 +1,7 @@
- platform: mqtt
name: "Washer"
state_topic: "smartthings/Washer/switch"
command_topic: "smartthings/Washer/switch"
payload_on: "on"
payload_off: "off"
retain: true

View File

@ -5,10 +5,3 @@
payload_on: "on" payload_on: "on"
payload_off: "off" payload_off: "off"
retain: true retain: true
- platform: mqtt
name: "Rail Lights"
state_topic: "smartthings/Stairs Rail/switch"
command_topic: "smartthings/Stairs Rail/switch"
payload_on: "on"
payload_off: "off"
retain: true

View 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

View File

@ -6,23 +6,16 @@
payload_off: "off" payload_off: "off"
retain: true retain: true
- platform: mqtt - platform: mqtt
name: "Side Door Light" name: "Side Door"
state_topic: "smartthings/Side Door Light/switch" state_topic: "smartthings/Side Door/switch"
command_topic: "smartthings/Side Door Light/switch" command_topic: "smartthings/Side Door/switch"
payload_on: "on" payload_on: "on"
payload_off: "off" payload_off: "off"
retain: true retain: true
- platform: mqtt - platform: mqtt
name: "Front Porch Left" name: "Front Porch"
state_topic: "smartthings/Porch Left/switch" state_topic: "smartthings/Front Porch/switch"
command_topic: "smartthings/Porch Left/switch" command_topic: "smartthings/Front Porch/switch"
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Front Porch Right"
state_topic: "smartthings/Porch Right/switch"
command_topic: "smartthings/Porch Right/switch"
payload_on: "on" payload_on: "on"
payload_off: "off" payload_off: "off"
retain: true retain: true

8
switches/sonoff.yaml Normal file
View File

@ -0,0 +1,8 @@
- platform: mqtt
name: "Master Fan"
command_topic: "cmnd/sonoff/power"
state_topic: "stat/sonoff/POWER"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: true