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

This commit is contained in:
Jeffrey Stone 2018-03-06 11:10:52 -05:00
parent 5d3079379d
commit cbaacdc5fa
22 changed files with 1308 additions and 9 deletions

16
.gitignore vendored
View File

@ -1,11 +1,9 @@
/*
!*.yaml
!/alexa
!/automations
!/lights
!/scripts
!/sensors
!/switches
!README.md
known_devices.yaml
secrets.yaml
*.log
*.db
icloud/
www/
tts/
deps/
!.gitignore

10
alerts/garage_issue.yaml Normal file
View File

@ -0,0 +1,10 @@
garage_issue:
name: Garage is open
done_message: Garage is closed
entity_id: input_boolean.garage_issue
state: 'on'
repeat: 5
can_acknowledge: True
skip_first: False
notifiers:
- jeff_ios

View File

@ -0,0 +1,10 @@
jeff_heading_home:
name: Jeff will be home in {{states.sensor.jeff_ett_home.attributes.duration_in_traffic}}.
done_message: Jeff is home
entity_id: input_boolean.jeff_heading_home
state: 'on'
repeat: 20
can_acknowledge: True
skip_first: False
notifiers:
- ios_katherinestonesiphone

View 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

View File

@ -0,0 +1,10 @@
security_issue:
name: Security Issue Prevented Lockdown
done_message: Security Issue Resolved
entity_id: input_boolean.security_issue
state: 'on'
repeat: 2
can_acknowledge: True
skip_first: False
notifiers:
- jeff_ios

View File

@ -0,0 +1,10 @@
tornado_warning:
name: Tornado Warning!
done_message: Tornado Alarm Canceled
entity_id: input_boolean.tornado_alarm
state: 'on'
repeat: 2
can_acknowledge: True
skip_first: False
notifiers:
- jeff_ios

View File

@ -0,0 +1,10 @@
unauthorized_access:
name: Unauthorized Access
done_message: Access Authorized
entity_id: input_boolean.security_alarm
state: 'on'
repeat: 2
can_acknowledge: True
skip_first: False
notifiers:
- jeff_ios

67
automation/daily.yaml Normal file
View File

@ -0,0 +1,67 @@
#
#
# Daily Triggers
#
#
#####################
- alias: Good Morning
trigger:
- platform: time
hours: 5
minutes: 15
seconds: 0
action:
- service: scene.turn_on
entity_id: scene.livingroom_normal
- service: notify.ios_jeffreystonesiphone
data:
message: Good Morning, Anchorage House is up and online.
- alias: Good Night
trigger:
- platform: time
hours: 22
minutes: 0
seconds: 0
action:
- service: scene.turn_on
entity_id: scene.livingroom_night
- service: notify.jeff_ios
data:
message: House shutting down for the night, Good Night
- alias: Sunset Front Porch on
trigger:
- platform: sun
event: sunset
offset: -00:30:00
action:
- service: switch.turn_on
data:
entity_id: switch.front_porch
- alias: Sunrise Front Porch off
trigger:
- platform: sun
event: sunrise
action:
- service: switch.turn_off
data:
entity_id: switch.front_porch
- alias: Sunset Inside on
trigger:
- platform: sun
event: sunset
offset: -01:00:00
action:
service: script.inside_all_on
- alias: Sunrise Inside off
trigger:
- platform: sun
event: sunrise
offset: 00:30:00
action:
- service: script.inside_all_off

179
automation/door.yaml Normal file
View File

@ -0,0 +1,179 @@
#
#
# 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
- alias: Door Closed
trigger:
- platform: state
entity_id: group.doors
from: 'on'
to: 'off'
condition:
- condition: state
entity_id: input_boolean.audible_notifications
state: 'on'
action:
- service: shell_command.door_chime
- alias: Back Door Opened
trigger:
- platform: state
entity_id: binary_sensor.back_door
from: 'off'
to: 'on'
condition:
- condition: state
entity_id: input_boolean.audible_notifications
state: 'on'
action:
- service: homeassistant.turn_on
entity_id: script.security_warning_back_door
- alias: Back Door Closed
trigger:
- platform: state
entity_id: binary_sensor.back_door
from: 'on'
to: 'off'
action:
- service: homeassistant.turn_off
entity_id: script.security_warning_back_door
# - alias: Front Door Opened
# trigger:
# - platform: state
# entity_id: sensor.front_door
# from: closed
# to: open
# condition:
# - condition: state
# entity_id: input_boolean.audible_notifications
# state: 'on'
# action:
# - service: tts.google_say
# data:
# entity_id: media_player.hass_speaker
# message: Front Door is open
# - alias: Front Door Closed
# trigger:
# - platform: state
# entity_id: sensor.front_door
# from: open
# to: closed
# condition:
# - condition: state
# entity_id: input_boolean.audible_notifications
# state: 'on'
# action:
# - service: tts.google_say
# data:
# entity_id: media_player.hass_speaker
# message: Front Door is closed
# # - alias: Front Door Opened
# # trigger:
# # - platform: state
# # entity_id: sensor.front_door
# # from: closed
# # to: open
# # condition:
# # - condition: state
# # entity_id: input_boolean.audible_notifications
# # state: 'on'
# # action:
# # - service: shell_command.door_chime
# # - alias: Front Door Closed
# # trigger:
# # - platform: state
# # entity_id: sensor.front_3
# # from: open
# # to: closed
# # condition:
# # - condition: state
# # entity_id: input_boolean.audible_notifications
# # state: 'on'
# # action:
# # - service: shell_command.door_chime
# - alias: Laundry Room Door Opened
# trigger:
# - platform: state
# entity_id: sensor.laundry_room_door
# from: closed
# to: open
# condition:
# - condition: state
# entity_id: input_boolean.audible_notifications
# state: 'on'
# action:
# - service: tts.google_say
# data:
# entity_id: media_player.hass_speaker
# message: Laundry Door is open
# - alias: Laundry Roomm Door Closed
# trigger:
# - platform: state
# entity_id: sensor.laundry_room_door
# from: open
# to: closed
# condition:
# - condition: state
# entity_id: input_boolean.audible_notifications
# state: 'on'
# action:
# - service: tts.google_say
# data:
# entity_id: media_player.hass_speaker
# message: Laundry Door is closed
- alias: Attic Door Opened
trigger:
- platform: state
entity_id: binary_sensor.attic_door
from: 'off'
to: 'on'
condition:
- condition: state
entity_id: input_boolean.audible_notifications
state: 'on'
action:
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Attic Door is open
- alias: Attic Door Closed
trigger:
- platform: state
entity_id: binary_sensor.attic_door
from: 'on'
to: 'off'
condition:
- condition: state
entity_id: input_boolean.audible_notifications
state: 'on'
action:
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Attic Door is closed

83
automation/events.yaml Normal file
View File

@ -0,0 +1,83 @@
#
#
# 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 Notification
trigger:
- platform: state
entity_id: input_boolean.washer_notification
to: 'on'
condition:
- condition: state
entity_id: sensor.family_status
state: home
action:
- service: script.washer_finished_notification
- alias: Get Dressed Skylar
trigger:
- platform: time
hours: 8
minutes: 0
seconds: 0
condition:
- condition: time
weekday:
- mon
- tue
- wed
- thu
- condition: state
entity_id: input_boolean.guest_mode
state: 'off'
action:
- service: script.skylar_dressed_notification

120
automation/garage.yaml Normal file
View File

@ -0,0 +1,120 @@
#
#
# Garage
#
############
- alias: Close Garage at Nine
trigger:
- platform: time
hours: 21
minutes: 0
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 Closed
trigger:
- platform: state
entity_id: binary_sensor.garage_door
from: 'on'
to: 'off'
action:
- service: input_boolean.turn_off
data:
entity_id: input_boolean.garage_issue
- alias: Garage Issue
trigger:
- platform: state
entity_id: input_boolean.garage_issue
to: 'on'
action:
- service: script.garage_failed_to_close
#- alias: Garage Issue Resolved
# trigger:
# - platform: state
# entity_id: input_boolean.garage_issue
# to: 'off'
# action:
# - service: script.garage_now_closed
#- alias: Garage Closing
# trigger:
# - platform: mqtt
# topic: smartthings/Garage Door/door
# payload: closing
# action:
# - service: script.security_check_garage
- alias: Garage Opening
trigger:
- platform: state
entity_id: binary_sensor.garage_door
from: closed
to: open
condition:
- condition: state
entity_id: sun.sun
state: 'below_horizon'
action:
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage is Opening
- 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'
action:
- service: homeassistant.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'

60
automation/media.yaml Normal file
View File

@ -0,0 +1,60 @@
#
#
# Media
#
############
- alias: "Movie Started - Turn Off Lights"
trigger:
- platform: state
entity_id: media_player.apple_tv
to: 'playing'
condition:
- condition: state
entity_id: sun.sun
state: 'below_horizon'
action:
- service: scene.turn_on
entity_id: scene.movie_time
- alias: "Movie Paused - Lights Dim"
trigger:
- platform: state
entity_id: media_player.apple_tv
from: 'playing'
to: 'paused'
condition:
- condition: state
entity_id: sun.sun
state: 'below_horizon'
action:
- service: scene.turn_on
entity_id: scene.livingroom_dim
# - alias: "Movie Stopped - Lights On"
# trigger:
# - platform: state
# entity_id: media_player.apple_tv
# from: 'playing'
# to: 'idle'
# condition:
# - condition: state
# entity_id: sun.sun
# state: 'below_horizon'
# action:
# - service: scene.turn_on
# entity_id: scene.livingroom_normal
# - alias: "Movie Resumed - Lights Off"
# trigger:
# - platform: state
# entity_id: media_player.apple_tv
# from: 'paused'
# to: 'playing'
# condition:
# - condition: state
# entity_id: sun.sun
# state: 'below_horizon'
# action:
# service: scene.turn_on
# entity_id: scene.movie_time

View File

@ -0,0 +1,44 @@
#
#
# Notifications
#
#
#####################
- alias: Turn Off Audible Notifications at 8pm
trigger:
- platform: time
hours: 20
minutes: 0
seconds: 0
action:
- service: input_boolean.turn_off
entity_id: input_boolean.audible_notifications
- alias: Turn Off Audible Notifications at 7pm
trigger:
- platform: time
hours: 19
minutes: 0
seconds: 0
condition:
- condition: state
entity_id: input_boolean.guest_mode
state: 'on'
action:
- service: input_boolean.turn_off
entity_id: input_boolean.audible_notifications
- alias: Turn On Audible Notifications at 8am
trigger:
- platform: time
hours: 8
minutes: 0
seconds: 0
action:
- entity_id: input_boolean.audible_notifications
service: input_boolean.turn_on

131
automation/presence.yaml Normal file
View File

@ -0,0 +1,131 @@
#
#
# Presence Automations
#
#
#####################
- alias: Family Has arrived
trigger:
- entity_id: sensor.family_status
from: away
platform: state
to: home
action:
- service: script.standby
- service: script.driveway_on
- service: script.vacation_canceled
- service: script.washer_finished_notification
- service: script.appliances_on
- alias: Family Has Left
trigger:
- entity_id: sensor.family_status
from: home
platform: state
to: away
condition:
- condition: state
entity_id: input_boolean.guest_mode
state: 'off'
action:
- service: script.close_garage
- service: script.lockdown
- service: script.appliances_off
- alias: Family Devices Have arrived
trigger:
- entity_id: group.family
from: not_home
platform: state
to: home
condition:
- condition: state
entity_id: sensor.family_presence
state: 'away'
action:
- service: script.family_is_home
#- alias: Family Devices Have Left
# trigger:
# - entity_id: group.family
# from: home
# platform: state
# to: not_home
# condition:
# - condition: state
# entity_id: sensor.family_status
# state: 'home'
# action:
# - service: script.family_is_away
- alias: Jeff Arrives Home
trigger:
# - entity_id: device_tracker.owntracks_jeffreystonesiphone
# event: enter
# platform: zone
# zone: zone.home
- entity_id: sensor.jeff_presence
from: 'not present'
platform: state
to: 'present'
action:
- service: script.jeff_destination_arrived
- 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.owntracks_jeffreystonesiphone
event: enter
platform: zone
zone: zone.summit
action:
- service: script.jeff_destination_arrived
- service: script.jeff_at_work_notification
- alias: Kat Arrives Home Notification
trigger:
- entity_id: device_tracker.katherinestonesiphone
event: enter
platform: zone
zone: zone.home
action:
- service: script.kat_is_home_audible
- service: input_boolean.turn_off
entity_id: input_boolean.kat_heading_home
- service: script.driveway_on
- alias: Kat Arrives Zoo Notification
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: notify.ios_jeffreystonesiphone
# data:
# message: Kat left Zoo Atlanta
- service: input_boolean.turn_on
entity_id: input_boolean.kat_heading_home

236
automation/security.yaml Normal file
View File

@ -0,0 +1,236 @@
#
#
# 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_status
state: 'home'
- condition: state
entity_id: input_boolean.guest_mode
state: 'on'
action:
- service: script.standby
# - alias: Security Check - Away
# trigger:
# - platform: state
# entity_id: sensor.house_mode
# from: home
# to: away
# action:
# - service: script.security_check_zones
# - service: script.security_check_garage
- alias: Security Check
trigger:
- platform: state
entity_id: input_boolean.secure_mode
to: 'on'
action:
- service: homeassistant.turn_on
entity_id: script.security_check_zones
- service: homeassistant.turn_on
entity_id: script.security_check_garage
- service: script.security_check_verified
- alias: Security Breach
trigger:
- platform: state
entity_id: binary_sensor.garage_door
to: open
- platform: state
entity_id: binary_sensor.zone_status
to: open
- platform: state
entity_id: binary_sensor.garage_motion
to: motion
condition:
- condition: state
entity_id: input_boolean.secure_mode
state: 'on'
action:
- service: input_boolean.turn_on
entity_id: input_boolean.security_alarm
# - 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.house_mode
to: home
- platform: state
entity_id: sensor.family_status
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
- alias: Security Alarm Activated
trigger:
platform: state
entity_id: input_boolean.security_alarm
to: 'on'
action:
- service: homeassistant.turn_on
entity_id: script.security_sound_alarm_intro
- service: homeassistant.turn_on
entity_id: script.security_sound_alarm
- service: homeassistant.turn_on
entity_id: script.security_report
- alias: Security Alarm Deactivated
trigger:
platform: state
entity_id: input_boolean.security_alarm
to: 'off'
action:
- service: homeassistant.turn_off
entity_id: script.security_sound_alarm
- service: script.access_authorized
- service: script.standby
- service: homeassistant.turn_off
entity_id: script.security_sound_alarm_intro
- service: homeassistant.turn_off
entity_id: script.security_report
- alias: Security Issue Resolved
trigger:
- platform: state
entity_id: binary_sensor.garage_door
to: closed
- platform: state
entity_id: sensor.zone_status
to: closed
condition:
- condition: state
entity_id: binary_sensor.garage_door
state: 'closed'
- condition: state
entity_id: sensor.zone_status
state: 'closed'
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.jeff_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

25
automation/switches.yaml Normal file
View File

@ -0,0 +1,25 @@
#
#
# Switches
#
############
- alias: "Kitchen - Turn Off Lights"
trigger:
- platform: state
entity_id: light.kitchen_cabinets
to: 'off'
action:
- service: light.turn_off
data:
entity_id: light.kitchen_light_strip
- alias: "Kitchen - Turn On Lights"
trigger:
- platform: state
entity_id: light.kitchen_cabinets
to: 'on'
action:
- service: light.turn_on
data:
entity_id: light.kitchen_light_strip

47
automation/transit.yaml Normal file
View File

@ -0,0 +1,47 @@
#
#
# Transit
#
############
- alias: Jeff eta home
trigger:
- platform: state
entity_id: sensor.jeff_destination
to: Home
action:
# - service: notify.ios_katherinestonesiphone
# data:
# message: Jeff will be home in {{states.sensor.jeff_ett_home.attributes.duration_in_traffic}}.
- service: input_boolean.turn_on
entity_id: input_boolean.jeff_heading_home
- alias: Jeff no destination
trigger:
- platform: state
entity_id: sensor.jeff_status
to: 'moving'
condition:
- condition: state
entity_id: sensor.jeff_destination
state: Arrived
action:
- service: script.jeff_destination_na
- alias: Jeff is stationary
trigger:
- platform: numeric_state
entity_id: sensor.jeff_velocity
below: 1
action:
- service: script.jeff_is_stationary
- alias: Jeff is moving
trigger:
- platform: numeric_state
entity_id: sensor.jeff_velocity
above: 0
action:
- service: script.jeff_is_moving

74
automation/weather.yaml Normal file
View File

@ -0,0 +1,74 @@
#
#
# Weather
#
############
- alias: Cloudy inside on
trigger:
- platform: time
at: '16:00:00'
condition:
- condition: numeric_state
entity_id: sensor.dark_sky_cloud_coverage
above: 70
- condition: state
entity_id: group.family
state: home
action:
- service: notify.ios_jeffreystonesiphone
data:
message: Cloudy, turning on LR Lamp
- 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.kill_audible_alarm
- 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: script.tornado_warning
- 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
- alias: Wx Alert Notification
trigger:
- platform: state
entity_id: sensor.pws_alerts
action:
- service: script.wxalert_tile

35
binary_sensors/doors.yaml Normal file
View File

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

View File

@ -0,0 +1,7 @@
- platform: mqtt
name: "Garage Dome Sensor" # Dome Motion Sensor
state_topic: "smartthings/Garage Motion/contact"
payload_on: "open"
payload_off: "closed"
retain: true
device_class: motion

View File

@ -0,0 +1,17 @@
>
{% set responses = [
"OK",
"Sure",
"If you insist",
"Done",
"I can do that",
"Leave it to me",
"Consider it done",
"As you wish",
"By your command",
"Affirmative",
"I will",
"No Problem"
] %}
{% set rindex = (range(0, (responses | length - 1) )|random) -%}
{{responses[rindex]}}

116
intents/intents.yaml Normal file
View File

@ -0,0 +1,116 @@
#intents:
WhatIsTheCurrentStatus:
speech:
type: plain
text: >
Outside it's {{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.
{%- if is_state('sensor.pws_alerts', '0') -%}
There are no active weather alerts.
{%- else -%}
There are {{states.sensor.pws_alerts.state}} active weather alerts.
{% endif %}
{%- if is_state('sun.sun', 'above_horizon') -%}
The sun will set at {{ ((as_timestamp(states.sun.sun.attributes.next_setting)) | timestamp_local) [11:16] }}
{% else %}
The sun will rise at {{ ((as_timestamp(states.sun.sun.attributes.next_rising)) | timestamp_local) [11:16] }}
{% endif %}
IsTheHouseSecure:
speech:
type: plain
text: >
{%- if is_state('binary_sensor.zone_3', 'on') -%}
Zone 3 is currently open.
{%- else -%}
Zone 3 is closed
{% endif %}
{%- if is_state('cover.garage_door', 'open') -%}
The Garage Door is currently open.
{%- else -%}
The Garage Door is closed
{% endif %}
{%- if is_state('input_boolean.house_secured', 'on') -%}
Anchorage House is actively monitoring.
{%- else -%}
Anchorage House is not being monitoring.
{% endif %}
GarageStatus:
speech:
type: plain
text: >
{%- if is_state('sensor.garage_door_contact', 'open') -%}
The Garage is open
{%- else -%}
The Garage is closed
{% endif %}
CloseTheGarage:
action:
service: script.turn_on
data_template:
entity_id: script.close_garage
speech:
type: plain
text: !include alexa_confirm.yaml
OpenTheGarage:
action:
service: script.turn_on
data_template:
entity_id: script.open_garage
speech:
type: plain
text: !include alexa_confirm.yaml
JeffETRHome:
speech:
type: plain
text: >
{%- if is_state('device_tracker.owntracks_jeffreystonesiphone', 'home') -%}
It appears Jeff is home
{%- else -%}
Jeff will be home in {{states.sensor.jeff_ett_home.attributes.duration_in_traffic}}
{% endif %}
KatETRHome:
speech:
type: plain
text: >
{%- if is_state('device_tracker.katherinestonesiphone', 'home') -%}
It appears Katherine is home
{%- else -%}
Katherine will be home in {{states.sensor.kat_ett_home.attributes.duration_in_traffic}}
{% endif %}
WhereIsJeff:
speech:
type: plain
text: >
{%- if is_state('device_tracker.owntracks_jeffreystonesiphone', 'home') -%}
Jeff is here somewhere. Where was the last place you saw him?
{%- else -%}
{%- if is_state('sensor.jeffrey_location', 'moving') -%}
Jeff is currently inbetween stops and could be home in {{states.sensor.jeff_ett_home.attributes.duration_in_traffic}}
{%- else -%}
Jeff is at {{ states("sensor.jeffrey_location") }}
{% endif %}
{% endif %}
WhereIsKat:
speech:
type: plain
text: >
{%- if is_state('device_tracker.katherinestonesiphone', 'home') -%}
Katherine is here.
{%- else -%}
{%- if is_state('device_tracker.katherinestonesiphone', 'not_home') -%}
Katherine is currently inbetween stops and could be home in {{states.sensor.kat_ett_home.attributes.duration_in_traffic}}
{%- else -%}
Katherine is at {{ states.device_tracker.katherinestonesiphone.state }}
{% endif %}
{% endif %}