update to 97 version.

This commit is contained in:
Mahasri Kalavala 2019-08-18 20:21:05 -04:00
parent c9a658171f
commit 0f8de89732
20 changed files with 1248 additions and 1326 deletions

View File

@ -16,13 +16,13 @@ homeassistant:
packages: !include_dir_named packages
whitelist_external_dirs:
- '/home/homeassistant/.homeassistant/www/downloads/camera/patio/'
- '/home/homeassistant/.homeassistant/www/downloads/camera/garage/'
- '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/'
- '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/'
- '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/'
- '/home/homeassistant/.homeassistant/www/downloads/camera/kitchen/'
- '/home/homeassistant/.homeassistant/www/downloads/camera/frontroom/'
- "/home/homeassistant/.homeassistant/www/downloads/camera/patio/"
- "/home/homeassistant/.homeassistant/www/downloads/camera/garage/"
- "/home/homeassistant/.homeassistant/www/downloads/camera/playarea/"
- "/home/homeassistant/.homeassistant/www/downloads/camera/driveway/"
- "/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/"
- "/home/homeassistant/.homeassistant/www/downloads/camera/kitchen/"
- "/home/homeassistant/.homeassistant/www/downloads/camera/frontroom/"
sun:
alexa:
@ -79,6 +79,13 @@ zeroconf:
owntracks:
system_health:
life360:
accounts:
- username: !secret life360_username
password: !secret life360_password
circles:
include: [Family]
mqtt:
broker: !secret mqtt_server
port: !secret mqtt_port
@ -96,26 +103,26 @@ person:
id: suresh
device_trackers:
- device_tracker.suresh
- device_tracker.suresh_suresh
- device_tracker.suresh_kalavala
- device_tracker.tesla_model_3_5yj3e1ea8jf010610_location_tracker
- name: Mallika
id: mallika
device_trackers:
- device_tracker.mallika
- device_tracker.mallika_mallika
- device_tracker.life360_mallika
- name: Srinika
id: srinika
device_trackers:
- device_tracker.srinika
- device_tracker.srinika_srinika
- device_tracker.life360_srinika
- name: Hasika
id: hasika
device_trackers:
- device_tracker.hasika
- device_tracker.hasika_hasika
- device_tracker.life360_hasika
lovelace:
mode: yaml
@ -147,54 +154,53 @@ ios:
push:
categories:
- name: Single Car Garage Door
identifier: '1CAR_GARAGE'
identifier: "1CAR_GARAGE"
actions:
- identifier: '1CAR_GARAGE_CLOSE'
title: 'Close Garage Door'
activationMode: 'background'
- identifier: "1CAR_GARAGE_CLOSE"
title: "Close Garage Door"
activationMode: "background"
authenticationRequired: yes
destructive: yes
behavior: 'default'
behavior: "default"
- name: Two Car Garage Door
identifier: '2CAR_GARAGE'
identifier: "2CAR_GARAGE"
actions:
- identifier: '2CAR_GARAGE_CLOSE'
title: 'Close Garage Door'
activationMode: 'background'
- identifier: "2CAR_GARAGE_CLOSE"
title: "Close Garage Door"
activationMode: "background"
authenticationRequired: yes
destructive: yes
behavior: 'default'
behavior: "default"
- name: Trash Recycle
identifier: 'trash_recycle'
identifier: "trash_recycle"
actions:
- identifier: 'TRASH_LEFT'
title: 'Done'
activationMode: 'background'
- identifier: "TRASH_LEFT"
title: "Done"
activationMode: "background"
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'TRASH_REMIND_LATER'
title: 'Remind Later'
activationMode: 'background'
behavior: "default"
- identifier: "TRASH_REMIND_LATER"
title: "Remind Later"
activationMode: "background"
authenticationRequired: yes
destructive: yes
behavior: 'default'
behavior: "default"
- name: Welcome Home
identifier: 'welcome_home'
identifier: "welcome_home"
actions:
- identifier: 'DISABLE_SECURITY'
title: 'Yes'
activationMode: 'background'
- identifier: "DISABLE_SECURITY"
title: "Yes"
activationMode: "background"
authenticationRequired: yes
destructive: yes
behavior: 'default'
behavior: "default"
telegram_bot:
- platform: broadcast
api_key: !secret telegram_apikey
allowed_chat_ids:
- !secret telegram_chatid
# influxdb:
# host: 192.168.1.125
# include:

View File

@ -12,11 +12,11 @@ cards:
- font-weight: bold
- color: rgb(255, 255, 255)
state:
- value: 'disarmed'
- value: "disarmed"
color: rgb(255,0,0)
- value: 'armed_home'
- value: "armed_home"
color: rgb(0, 128, 0)
- value: 'armed_away'
- value: "armed_away"
color: rgb(0, 0, 255)
action: more_info
@ -29,11 +29,11 @@ cards:
- font-weight: bold
- color: rgb(255, 255, 255)
state:
- value: 'heat'
- value: "heat"
color: rgb(255,0,0)
- value: 'eco'
- value: "eco"
color: rgb(0, 128, 0)
- value: 'cool'
- value: "cool"
color: rgb(0, 0, 255)
action: service
service:
@ -44,36 +44,34 @@ cards:
title: Device Trackers
show_header_toggle: false
entities:
- device_tracker.hasika_hasika
- device_tracker.mallika_mallika
- device_tracker.srinika_srinika
- device_tracker.suresh_suresh
- entity: device_tracker.life360_suresh
name: Suresh
- entity: device_tracker.life360_mallika
name: Mallika
- entity: device_tracker.life360_srinika
name: Srinika
- entity: device_tracker.life360_hasika
name: Hasika
- entity: device_tracker.tesla_model_3_5yj3e1ea8jf010610_location_tracker
name: Tesla
state_filter:
- 'home'
- "home"
card:
type: glance
title: Kalavala Family
- type: entities
title: Master Bedroom Occupancy Value
show_header_toggle: false
entities:
- sensor.master_bed_sensor
- type: entity-filter
title: For Your Information
show_empty: false
show_header_toggle: false
entities:
- entity: sensor.hasika_iphone_battery_state
- entity: sensor.hasika_battery_state
name: Hasika
- entity: sensor.mallika_iphone_battery_state
- entity: sensor.mallika_battery_state
name: Mallika
- entity: sensor.srinika_iphone_battery_state
- entity: sensor.srinika_battery_state
name: Srinika
- entity: sensor.srinika_iphone_battery_state
- entity: sensor.srinika_battery_state
name: Suresh
- entity: sensor.hasika_iphone_wifi_state
name: Hasika
@ -86,26 +84,17 @@ cards:
- sensor.recycle_day
- sensor.trash_day
state_filter:
- 'Charging'
- 'yes'
- 'Not Connected'
- "Charging"
- "yes"
- "Not Connected"
card:
type: glance
title: FYI
- type: entities
title: Where Is Everyone
show_header_toggle: false
entities:
- sensor.hasika_location
- sensor.mallika_location
- sensor.srinika_location
- sensor.suresh_location
- type: conditional
conditions:
- entity: input_boolean.emergency_mode
state: 'on'
state: "on"
card:
type: entities
title: Emergency Scripts
@ -146,9 +135,9 @@ cards:
- entity: binary_sensor.two_car_garage_door_tilt_sensor_sensor
name: Double Car Garage Door
state_filter:
- 'on'
- 'opened'
- 'Open'
- "on"
- "opened"
- "Open"
card:
type: glance
title: Doors
@ -159,7 +148,7 @@ cards:
cards:
- type: gauge
name: Suresh Phone
unit: '%'
unit: "%"
entity: input_label.suresh_battery
severity:
green: 75
@ -167,7 +156,7 @@ cards:
red: 30
- type: gauge
name: Mallika Phone
unit: '%'
unit: "%"
entity: input_label.mallika_battery
severity:
green: 75
@ -177,7 +166,7 @@ cards:
cards:
- type: gauge
name: Srinika Phone
unit: '%'
unit: "%"
entity: input_label.srinika_battery
severity:
green: 75
@ -185,7 +174,7 @@ cards:
red: 30
- type: gauge
name: Hasika Phone
unit: '%'
unit: "%"
entity: input_label.hasika_battery
severity:
green: 75
@ -230,7 +219,7 @@ cards:
- type: conditional
conditions:
- entity: sensor.season
state: 'spring'
state: "spring"
card:
type: vertical-stack
cards:
@ -238,7 +227,7 @@ cards:
cards:
- type: gauge
name: Pollen Today
unit: '%'
unit: "%"
entity: sensor.allergy_index_today
max: 12.0
severity:
@ -247,7 +236,7 @@ cards:
red: 7
- type: gauge
name: Pollen Tomorrow
unit: '%'
unit: "%"
entity: sensor.allergy_index_tomorrow
max: 12.0
severity:
@ -258,7 +247,7 @@ cards:
cards:
- type: gauge
name: Asthma Today
unit: '%'
unit: "%"
entity: sensor.asthma_index_forecasted_average
severity:
green: 0
@ -266,7 +255,7 @@ cards:
red: 7
- type: gauge
name: Asthma Tomorrow
unit: '%'
unit: "%"
entity: sensor.asthma_index_tomorrow
severity:
green: 0
@ -301,10 +290,10 @@ cards:
- binary_sensor.two_car_garage_door_tilt_sensor_sensor
- binary_sensor.upstairs_multi_sensor_sensor
state_filter:
- 'on'
- 'detected'
- 'opened'
- 'Open'
- "on"
- "detected"
- "opened"
- "Open"
card:
type: entities
title: Motion Sensors

View File

@ -46,9 +46,9 @@ cards:
show_header_toggle: false
entities:
- switch.garage
- entity: switch.tesla_model_3_5yj3e1ea8jf010610_charger_switch
- entity: switch.tesla_model_3_charger_switch
name: Tesla Charger Switch
- entity: switch.tesla_model_3_5yj3e1ea8jf010610_maxrange_switch
- entity: switch.tesla_model_3_maxrange_switch
name: Tesla Max Range Switch
- type: entities

View File

@ -13,7 +13,7 @@ cards:
hours_to_show: 12
- type: gauge
entity: sensor.dining_room_thermostat_humidity
unit: '%'
unit: "%"
name: Home Humidity
severity:
green: 40
@ -25,7 +25,7 @@ cards:
show_header_toggle: false
entities:
- climate.dining_room
- climate.tesla_model_3_5yj3e1ea8jf010610_hvac_climate_system
- climate.tesla_model_3_hvac_climate_system
- binary_sensor.dining_room_thermostat_fan
- binary_sensor.dining_room_thermostat_has_leaf
- binary_sensor.dining_room_thermostat_is_locked
@ -38,7 +38,7 @@ cards:
- sensor.dining_room_thermostat_temperature
- type: history-graph
title: 'Temperature'
title: "Temperature"
entities:
- entity: sensor.dark_sky_apparent_temperature
name: Outside

View File

@ -7,16 +7,16 @@ cards:
cards:
- type: gauge
name: Tesla Battery
unit: '%'
entity: sensor.tesla_model_3_5yj3e1ea8jf010610_battery_sensor
unit: "%"
entity: sensor.tesla_model_3_battery_sensor
severity:
green: 75
yellow: 40
red: 25
- type: gauge
name: Battery Range
unit: 'miles'
entity: sensor.tesla_model_3_5yj3e1ea8jf010610_range_sensor
unit: "miles"
entity: sensor.tesla_model_3_range_sensor
max: 320
min: 0
severity:
@ -24,15 +24,15 @@ cards:
yellow: 100
red: 75
- type: thermostat
entity: climate.tesla_model_3_5yj3e1ea8jf010610_hvac_climate_system
entity: climate.tesla_model_3_hvac_climate_system
- type: horizontal-stack
cards:
- type: sensor
entity: sensor.tesla_model_3_5yj3e1ea8jf010610_temperature_sensor_inside
entity: sensor.tesla_model_3_temperature_sensor_inside
name: Temperature Inside
graph: line
- type: sensor
entity: sensor.tesla_model_3_5yj3e1ea8jf010610_temperature_sensor_outside
entity: sensor.tesla_model_3_temperature_sensor_outside
name: Temperature outside
graph: line
@ -41,14 +41,14 @@ cards:
show_header_toggle: false
entities:
- device_tracker.tesla_model_3_5yj3e1ea8jf010610_location_tracker
- binary_sensor.tesla_model_3_5yj3e1ea8jf010610_parking_brake_sensor
- lock.tesla_model_3_5yj3e1ea8jf010610_door_lock
- sensor.tesla_model_3_5yj3e1ea8jf010610_mileage_sensor
- binary_sensor.tesla_model_3_parking_brake_sensor
- lock.tesla_model_3_door_lock
- sensor.tesla_model_3_mileage_sensor
- type: entities
title: Charging
show_header_toggle: false
entities:
- binary_sensor.tesla_model_3_5yj3e1ea8jf010610_charger_sensor
- switch.tesla_model_3_5yj3e1ea8jf010610_charger_switch
- switch.tesla_model_3_5yj3e1ea8jf010610_maxrange_switch
- binary_sensor.tesla_model_3_charger_sensor
- switch.tesla_model_3_charger_switch
- switch.tesla_model_3_maxrange_switch

View File

@ -62,6 +62,9 @@ cards:
- type: media-control
entity: media_player.attic_tv
- type: media-control
entity: media_player.chromecastultra7021
# - type: media-control
# entity: media_player.my_denon_receiver

View File

@ -29,7 +29,7 @@ cards:
- type: conditional
conditions:
- entity: input_boolean.alarm_clock
state: 'on'
state: "on"
card:
type: entities
title: Alarm Clock
@ -46,7 +46,6 @@ cards:
title: Zone Based Alerts
show_header_toggle: false
entities:
- automation.alert_life365_error
- automation.alert_private_zone_enter
- automation.alert_private_zone_leaves
- automation.alert_when_everyone_is_away
@ -138,8 +137,6 @@ cards:
title: Home Security Automations
show_header_toggle: false
entities:
- automation.disable_emergency_mode_upon_disabling_home_security
- automation.home_security_away_motion_deteted_inside
- automation.home_security_status_leeo_color
- automation.home_security_system_watchdog_10_minutes
- automation.home_security_system_watchdog_30_minutes
@ -150,7 +147,7 @@ cards:
- type: conditional
conditions:
- entity: input_boolean.light_automations
state: 'on'
state: "on"
card:
type: entities
title: Light Automations
@ -233,7 +230,6 @@ cards:
- automation.weather_input_boolean_updates
- automation.rain_alerts
- automation.snow_and_sleet_alerts
- automation.update_openuv_every_30_minutes_during_the_daytime
- automation.alert_super_heavy_winds
- type: entities
@ -252,7 +248,6 @@ cards:
show_header_toggle: false
entities:
- automation.notify_home_status_when_away
- automation.emergency_mode_disabled
- automation.home_mode_away_on
- automation.hourly_report_during_day_time
- automation.check_wi_fi_status_of_iphones_at_home
@ -288,7 +283,6 @@ cards:
- automation.update_available_notification
- automation.update_zwave_battery_levels
- automation.ups_state_change
- automation.water_leak_detected
- type: entities
title: Misc Automations

View File

@ -6,7 +6,6 @@
###############################################################################
homeassistant:
customize:
group.batteries:
order: 2
@ -38,7 +37,6 @@ homeassistant:
friendly_name: Suresh Phone Wi-Fi Status
sensor:
- platform: mqtt
state_topic: "owntracks/mallika/mallika"
name: "Mallika iPhone Battery (OT)"
@ -154,31 +152,31 @@ sensor:
- platform: mqtt
state_topic: "owntracks/mallika/mallika"
name: "Mallika Driving Speed"
value_template: '{{ value_json.vel |int|round}}'
value_template: "{{ value_json.vel |int|round}}"
unit_of_measurement: miles
- platform: mqtt
state_topic: "owntracks/suresh/suresh"
name: "Suresh Driving Speed"
value_template: '{{ value_json.vel |int|round}}'
value_template: "{{ value_json.vel |int|round}}"
unit_of_measurement: miles
- platform: mqtt
state_topic: "owntracks/srinika/srinika"
name: "Srinika Driving Speed"
value_template: '{{ value_json.vel |int|round}}'
value_template: "{{ value_json.vel |int|round}}"
unit_of_measurement: miles
- platform: mqtt
state_topic: "owntracks/hasika/hasika"
name: "Hasika Driving Speed"
value_template: '{{ value_json.vel |int|round}}'
value_template: "{{ value_json.vel |int|round}}"
unit_of_measurement: miles
- platform: template
sensors:
suresh_iphone_battery_ot:
unit_of_measurement: '%'
unit_of_measurement: "%"
value_template: >
{% if states('sensor.suresh_iphone_battery_ot') != "unknown" %}
{{ states('sensor.suresh_iphone_battery_ot')| int }}
@ -221,7 +219,7 @@ sensor:
- platform: template
sensors:
mallika_iphone_battery_ot:
unit_of_measurement: '%'
unit_of_measurement: "%"
value_template: "{{ states('sensor.mallika_iphone_battery_ot')|int(-1) }}"
icon_template: >-
{% if states('sensor.mallika_iphone_battery_ot') != "unknown" %}
@ -259,7 +257,7 @@ sensor:
- platform: template
sensors:
srinika_iphone_battery_ot:
unit_of_measurement: '%'
unit_of_measurement: "%"
value_template: "{{ states('sensor.srinika_iphone_battery_ot')|int(-1) }}"
icon_template: >-
{% if states('sensor.srinika_iphone_battery_ot') != "unknown" %}
@ -297,7 +295,7 @@ sensor:
- platform: template
sensors:
hasika_iphone_battery_ot:
unit_of_measurement: '%'
unit_of_measurement: "%"
value_template: "{{ states('sensor.hasika_iphone_battery_ot')|int(-1) }}"
icon_template: >-
{% if states('sensor.hasika_iphone_battery_ot') != "unknown" %}
@ -343,7 +341,6 @@ sensor:
###############################################################################
automation:
#
# This automation alerts family members when they are "moving" - meaning either in driving from work,
# kids got on the school bus, and bus is moving...etc
@ -390,11 +387,11 @@ automation:
trigger:
platform: numeric_state
entity_id:
- device_tracker.suresh_suresh
- device_tracker.mallika_mallika
- device_tracker.srinika_srinika
- device_tracker.hasika_hasika
value_template: '{{ state.attributes.battery }}'
- device_tracker.life360_suresh
- device_tracker.life360_mallika
- device_tracker.life360_srinika
- device_tracker.life360_hasika
value_template: "{{ state.attributes.battery }}"
below: 25
condition:
- condition: template
@ -402,11 +399,10 @@ automation:
action:
- service: script.notify_me
data_template:
message: "{{ trigger.to_state.attributes.friendly_name | title }}'s phone battery is : {{ trigger.to_state.attributes.battery }}%."
message: "{{ trigger.to_state.attributes.friendly_name.split(' ')[1] | title }}'s phone battery is : {{ trigger.to_state.attributes.battery }}%."
- service: script.voice_notify
data_template:
message: "{{ trigger.to_state.attributes.friendly_name }}'s phone battery is : {{ trigger.to_state.attributes.battery }}%."
message: "{{ trigger.to_state.attributes.friendly_name.split(' ')[1] }}'s phone battery is : {{ trigger.to_state.attributes.battery }}%."
- alias: Alert Low Battery
trigger:
@ -477,28 +473,28 @@ automation:
trigger:
- platform: state
entity_id:
- device_tracker.mallika_mallika
- device_tracker.suresh_suresh
- device_tracker.srinika_srinika
- device_tracker.hasika_hasika
from: 'not_home'
to: 'home'
for: '00:05:00'
- device_tracker.life360_mallika
- device_tracker.life360_suresh
- device_tracker.life360_srinika
- device_tracker.life360_hasika
from: "not_home"
to: "home"
for: "00:05:00"
condition:
condition: or
conditions:
- condition: state
entity_id: sensor.hasika_iphone_wifi_state
state: 'Not Connected'
state: "Not Connected"
- condition: state
entity_id: sensor.mallika_iphone_wifi_state
state: 'Not Connected'
state: "Not Connected"
- condition: state
entity_id: sensor.srinika_iphone_wifi_state
state: 'Not Connected'
state: "Not Connected"
- condition: state
entity_id: sensor.suresh_iphone_wifi_state
state: 'Not Connected'
state: "Not Connected"
action:
- service: script.notify_me
data_template:

View File

@ -74,7 +74,6 @@ camera:
file_path: "/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_latest.jpg"
binary_sensor:
- platform: hikvision
name: Frontdoor Camera
ssl: false
@ -134,7 +133,7 @@ rest_command:
username: !secret camera_username
password: !secret camera_password
method: PUT
content_type: 'text/xml'
content_type: "text/xml"
payload: >-
<?xml version="1.0" encoding="UTF-8"?>
<TextOverlay version="1.0" xmlns="http://www.hikvision.com/ver10/XMLSchema">
@ -148,7 +147,7 @@ rest_command:
username: !secret camera_username
password: !secret camera_password
method: PUT
content_type: 'text/xml'
content_type: "text/xml"
payload: >-
<?xml version="1.0" encoding="UTF-8"?>
<TextOverlay version="1.0" xmlns="http://www.hikvision.com/ver10/XMLSchema">
@ -162,7 +161,7 @@ rest_command:
username: !secret camera_username
password: !secret camera_password
method: PUT
content_type: 'text/xml'
content_type: "text/xml"
payload: >-
<?xml version="1.0" encoding="UTF-8"?>
<TextOverlay version="1.0" xmlns="http://www.hikvision.com/ver10/XMLSchema">
@ -176,7 +175,7 @@ rest_command:
username: !secret camera_username
password: !secret camera_password
method: PUT
content_type: 'text/xml'
content_type: "text/xml"
payload: >-
<?xml version="1.0" encoding="UTF-8"?>
<TextOverlay version="1.0" xmlns="http://www.hikvision.com/ver10/XMLSchema">
@ -196,7 +195,6 @@ rest_command:
# |_|
#
script:
###############################################################################
# Camera Text Overlay Script - sets a given text as an overlay on camera feed
#
@ -234,7 +232,7 @@ script:
- service: script.stream2chromecast
data_template:
url: !secret frontdoor_camera_stream_url
name: 'frontyard'
name: "frontyard"
stream_driveway_camera_to_chromecast:
sequence:
@ -243,7 +241,7 @@ script:
- service: script.stream2chromecast
data_template:
url: !secret driveway_camera_stream_url
name: 'driveway'
name: "driveway"
stream_patio_camera_to_chromecast:
sequence:
@ -252,7 +250,7 @@ script:
- service: script.stream2chromecast
data_template:
url: !secret patio_camera_stream_url
name: 'patio'
name: "patio"
stream_playarea_camera_to_chromecast:
sequence:
@ -261,7 +259,7 @@ script:
- service: script.stream2chromecast
data_template:
url: !secret playarea_camera_stream_url
name: 'playarea'
name: "playarea"
###############################################################################
# Stream2Chromecast script streams a given URL to Chromecast
@ -294,7 +292,6 @@ script:
###############################################################################
automation:
#
# Scan front door and driveway cameras when motion detected
# if the garage doors are open, scan garage cameras as well
@ -306,14 +303,14 @@ automation:
- platform: state
entity_id:
- binary_sensor.motion_sensor_158d00024ee084
to: 'on'
to: "on"
action:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
- service: script.stream2chromecast
data_template:
url: !secret frontdoor_camera_stream_url
name: 'frontyard'
name: "frontyard"
- condition: template
value_template: "{{ states('alarm_control_panel.simplisafe') == 'armed_home' or states('alarm_control_panel.simplisafe') == 'armed_away' }}"
- service: image_processing.scan
@ -345,7 +342,7 @@ automation:
{%- endfor -%}
{{ " detected in the front yard." }}
{%- endif -%}
greeting: 'no'
greeting: "no"
- service: notify.notify_smtp
data_template:
title: 'Front door motion {{ now().strftime("%d %h %Y, %I:%M:%S %p") }}'
@ -386,14 +383,14 @@ automation:
- platform: state
entity_id:
- binary_sensor.motion_sensor_158d00024e57fb
to: 'on'
to: "on"
action:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
- service: script.stream2chromecast
data_template:
url: !secret driveway_camera_stream_url
name: 'driveway'
name: "driveway"
- condition: template
value_template: "{{ states('alarm_control_panel.simplisafe') == 'armed_home' or states('alarm_control_panel.simplisafe') == 'armed_away' }}"
- service: image_processing.scan
@ -466,7 +463,7 @@ automation:
- platform: state
entity_id:
- binary_sensor.motion_sensor_158d000272bf48
to: 'on'
to: "on"
condition:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
@ -541,14 +538,14 @@ automation:
- platform: state
entity_id:
- binary_sensor.motion_sensor_158d00024e842c
to: 'on'
to: "on"
action:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
- service: script.stream2chromecast
data_template:
url: !secret playarea_camera_stream_url
name: 'backyard'
name: "backyard"
- condition: template
value_template: "{{ states('alarm_control_panel.simplisafe') == 'armed_home' or states('alarm_control_panel.simplisafe') == 'armed_away' }}"
- service: image_processing.scan
@ -639,7 +636,7 @@ automation:
trigger:
platform: state
entity_id: binary_sensor.motion_sensor_158d00024ee084
to: 'on'
to: "on"
condition:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
@ -650,19 +647,22 @@ automation:
- service: camera.snapshot
data_template:
entity_id: "camera.frontdoor_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: camera.snapshot
data_template:
entity_id: "camera.driveway_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: camera.snapshot
data_template:
entity_id: "camera.garage_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: notify.notify_smtp
@ -681,7 +681,7 @@ automation:
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- condition: template
value_template: "{{ states.device_tracker.suresh_suresh.state == 'home' }}"
value_template: "{{ states.device_tracker.life360_suresh.state == 'home' }}"
- service: notify.ios_devices
data_template:
message: "Check Front Door camera!"
@ -707,7 +707,7 @@ automation:
trigger:
platform: state
entity_id: binary_sensor.motion_sensor_158d00024e57fb
to: 'on'
to: "on"
condition:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
@ -717,19 +717,22 @@ automation:
- service: camera.snapshot
data_template:
entity_id: "camera.frontdoor_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/frontdoor/frontdoor_' ~
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: camera.snapshot
data_template:
entity_id: "camera.driveway_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/driveway/driveway_' ~
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: camera.snapshot
data_template:
entity_id: "camera.garage_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/garage/garage_' ~
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: notify.notify_smtp
@ -748,7 +751,7 @@ automation:
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- condition: template
value_template: "{{ states.device_tracker.suresh_suresh.state == 'home' }}"
value_template: "{{ states.device_tracker.life360_suresh.state == 'home' }}"
- service: notify.ios_devices
data_template:
message: "Check Driveway camera!"
@ -774,7 +777,7 @@ automation:
trigger:
platform: state
entity_id: binary_sensor.motion_sensor_158d00024e842c
to: 'on'
to: "on"
condition:
- condition: template
value_template: "{{ states('input_boolean.notify_camera_alerts') == 'on' }}"
@ -795,13 +798,15 @@ automation:
- service: camera.snapshot
data_template:
entity_id: "camera.patio_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/patio/patio_' ~
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: camera.snapshot
data_template:
entity_id: "camera.playarea_camera"
filename: "{{ '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_' ~
filename:
"{{ '/home/homeassistant/.homeassistant/www/downloads/camera/playarea/playarea_' ~
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- service: notify.notify_smtp
@ -817,7 +822,7 @@ automation:
(states.binary_sensor.motion_sensor_158d00024e842c.last_updated ~ '').replace('-','_')
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
- condition: template
value_template: "{{ states.device_tracker.suresh_suresh.state == 'home' }}"
value_template: "{{ states.device_tracker.life360_suresh.state == 'home' }}"
- service: notify.ios_devices
data_template:
message: "Check Patio camera!"
@ -829,7 +834,6 @@ automation:
url: "{{ states.camera.patio_camera.attributes.entity_picture }}"
content-type: jpg
###############################################################################
# _______ _ ____ _
# |__ __| | | / __ \ | |
@ -848,7 +852,7 @@ automation:
- alias: Show Outdoor Temperature on Camera
trigger:
- platform: time_pattern
minutes: '/2'
minutes: "/2"
condition:
- condition: template
value_template: >
@ -904,12 +908,12 @@ automation:
trigger:
- platform: state
entity_id: media_player.attic_tv
to: 'off'
to: "off"
for:
seconds: 30
- platform: state
entity_id: media_player.attic_tv
to: 'idle'
to: "idle"
for:
seconds: 30
action:
@ -933,7 +937,7 @@ automation:
- alias: Restore Frontyard Stream
trigger:
- platform: time_pattern
seconds: '/5'
seconds: "/5"
condition:
- condition: template
value_template: "{{ states('input_label.current_stream') != 'frontyard' }}"
@ -945,4 +949,4 @@ automation:
- service: script.stream2chromecast
data_template:
url: !secret frontdoor_camera_stream_url
name: 'frontyard'
name: "frontyard"

View File

@ -1,312 +1,312 @@
###############################################################################
# @author : Mahasri Kalavala
# @date : 11/22/2017
# @package : Emergency Stuff
# @description : When $hit hapens, this package gets called!
#
# In case of emergency - turn on the emergency_mode (input boolean)
# lights, crazy sounds and alarms repeatedly until someone turns off
# input boolean and/or Home Security System is turned OFF.
#
# All automations that alert during emerency situations, will turn on
# input boolean emergency_mode and notify using standard notification
#
# My Home TTS/voice notifications will not work when music is being played
# The automations will stop MPD media player ( just to makesure), so that
# the TTS notifications will be played in case if someone plays music and
# forgot to turn if off.
###############################################################################
homeassistant:
customize:
script.emergency_script:
friendly_name: Emergency Script
hidden: true
script.emergency_script_loop:
friendly_name: Emergency Script Loop
hidden: true
script.emergency_all_lights_switches_on:
friendly_name: All Lights & Switches ON
script.all_indoor_lights_off:
friendly_name: All Indoor Lights OFF
input_boolean:
emergency_mode:
name: Emergency Mode
initial: 'off'
###############################################################################
# _ _ _
# /\ | | | | (_)
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
#
###############################################################################
automation:
###############################################################################
# When emergency mode is OFF, Keep the lights ON
###############################################################################
- alias: Emergency Mode Disabled
initial_state: true
trigger:
platform: state
entity_id: input_boolean.emergency_mode
from: 'on'
to: 'off'
action:
- delay: '00:00:05'
- service: script.voice_notify
data_template:
message: "Attention! Emergency mode is now deactivated!"
- service: script.notify_me
data_template:
message: "Emergency mode is now deactivated!"
# Water Leak detected - initiate the emergency process
###############################################################################
- alias: Water Leak Detected
initial_state: true
trigger:
- platform: state
entity_id: sensor.aeotec_water_sensor_flood
from: '0'
to: '2'
action:
- service: input_boolean.turn_on
entity_id: input_boolean.emergency_mode
- service: script.emergency_all_lights_switches_on
- service: script.notify_me
data_template:
message: "EMERGENCY! Water Leak Detected in the Basement!"
- service: script.emergency_script
data:
volume_level: 25
alarm_code: 2
message: "ALERT! Water Leak Detected in the Basement!"
# # Carbon Monoxide Detected in the house
# ###############################################################################
# - alias: CO Detected
# # @author : Mahasri Kalavala
# # @date : 11/22/2017
# # @package : Emergency Stuff
# # @description : When $hit hapens, this package gets called!
# #
# # In case of emergency - turn on the emergency_mode (input boolean)
# # lights, crazy sounds and alarms repeatedly until someone turns off
# # input boolean and/or Home Security System is turned OFF.
# #
# # All automations that alert during emerency situations, will turn on
# # input boolean emergency_mode and notify using standard notification
# #
# # My Home TTS/voice notifications will not work when music is being played
# # The automations will stop MPD media player ( just to makesure), so that
# # the TTS notifications will be played in case if someone plays music and
# # forgot to turn if off.
# ###############################################################################
# homeassistant:
# customize:
# script.emergency_script:
# friendly_name: Emergency Script
# hidden: true
# script.emergency_script_loop:
# friendly_name: Emergency Script Loop
# hidden: true
# script.emergency_all_lights_switches_on:
# friendly_name: All Lights & Switches ON
# script.all_indoor_lights_off:
# friendly_name: All Indoor Lights OFF
# input_boolean:
# emergency_mode:
# name: Emergency Mode
# initial: 'off'
# ###############################################################################
# # _ _ _
# # /\ | | | | (_)
# # / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
# # / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
# # / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
# # /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
# #
# ###############################################################################
# automation:
# ###############################################################################
# # When emergency mode is OFF, Keep the lights ON
# ###############################################################################
# - alias: Emergency Mode Disabled
# initial_state: true
# trigger:
# platform: state
# entity_id: input_boolean.emergency_mode
# from: 'on'
# to: 'off'
# action:
# - delay: '00:00:05'
# - service: script.voice_notify
# data_template:
# message: "Attention! Emergency mode is now deactivated!"
# - service: script.notify_me
# data_template:
# message: "Emergency mode is now deactivated!"
# # Water Leak detected - initiate the emergency process
# ###############################################################################
# - alias: Water Leak Detected
# initial_state: true
# trigger:
# - platform: state
# entity_id: sensor.audio_detector_carbon_monoxide
# entity_id: sensor.aeotec_water_sensor_flood
# from: '0'
# condition:
# - condition: template
# value_template: "{{ trigger.to_state.state != '0' }}"
# to: '2'
# action:
# - service: script.voice_notify
# data_template:
# message: "Attention!: CARBON MONOXIDE DETECTED! GET THE HELL OUT OF THE HOUSE!"
# - service: script.notify_me
# data_template:
# message: "Attention!: CARBON MONOXIDE DETECTED!. GET THE HELL OUT OF THE HOUSE!"
# - service: input_boolean.turn_on
# entity_id: input_boolean.emergency_mode
# - service: media_player.media_stop
# entity_id: media_player.mpd
# - service: script.emergency_all_lights_switches_on
# - service: script.notify_me
# data_template:
# message: "EMERGENCY! Water Leak Detected in the Basement!"
# - service: script.emergency_script
# data:
# volume_level: 99
# volume_level: 25
# alarm_code: 2
# message: "Attention! Cabon Monoxide detected. Leave the house immediately!"
# message: "ALERT! Water Leak Detected in the Basement!"
# # Smoke Detected in the house
# # # Carbon Monoxide Detected in the house
# # ###############################################################################
# # - alias: CO Detected
# # initial_state: true
# # trigger:
# # - platform: state
# # entity_id: sensor.audio_detector_carbon_monoxide
# # from: '0'
# # condition:
# # - condition: template
# # value_template: "{{ trigger.to_state.state != '0' }}"
# # action:
# # - service: script.voice_notify
# # data_template:
# # message: "Attention!: CARBON MONOXIDE DETECTED! GET THE HELL OUT OF THE HOUSE!"
# # - service: script.notify_me
# # data_template:
# # message: "Attention!: CARBON MONOXIDE DETECTED!. GET THE HELL OUT OF THE HOUSE!"
# # - service: input_boolean.turn_on
# # entity_id: input_boolean.emergency_mode
# # - service: media_player.media_stop
# # entity_id: media_player.mpd
# # - service: script.emergency_script
# # data:
# # volume_level: 99
# # alarm_code: 2
# # message: "Attention! Cabon Monoxide detected. Leave the house immediately!"
# # # Smoke Detected in the house
# # ###############################################################################
# # - alias: Smoke Detected
# # initial_state: true
# # trigger:
# # - platform: state
# # entity_id: sensor.audio_detector_smoke
# # from: '0'
# # condition:
# # - condition: template
# # value_template: "{{ trigger.to_state.state != '0' }}"
# # action:
# # - service: script.voice_notify
# # data_template:
# # message: "Attention!: SMOKE DETECTED! CALL 911!"
# # - service: script.notify_me
# # data_template:
# # message: "Attention!: SMOKE DETECTED!. CALL 911!"
# # - service: input_boolean.turn_on
# # entity_id: input_boolean.emergency_mode
# # - service: media_player.media_stop
# # entity_id: media_player.mpd
# # - service: script.emergency_script
# # data:
# # volume_level: 99
# # alarm_code: 2
# # message: "Smoke Detected. Please get out of the home and call 911 immediately!"
# # Disable Emergency Mode upon Disabling Home Security System
# ###############################################################################
# - alias: Smoke Detected
# - alias: Disable Emergency Mode Upon Disabling Home Security
# initial_state: true
# trigger:
# - platform: state
# entity_id: sensor.audio_detector_smoke
# from: '0'
# platform: state
# entity_id: alarm_control_panel.simplisafe
# to: 'disarmed'
# condition:
# - condition: template
# value_template: "{{ trigger.to_state.state != '0' }}"
# value_template: '{{ states.input_boolean.emergency_mode.state == "on" }}'
# action:
# - service: input_boolean.turn_off
# entity_id: input_boolean.emergency_mode
# - alias: Home Security Away Motion Deteted Inside
# initial_state: true
# trigger:
# platform: state
# entity_id:
# - binary_sensor.back_door_sensor_sensor
# - binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor
# - binary_sensor.basement_door_sensor_sensor
# - binary_sensor.garage_door_sensor_sensor
# - binary_sensor.front_room_multi_sensor_sensor
# - binary_sensor.tv_multi_sensor_sensor
# - binary_sensor.kitchen_motion_sensor_sensor
# - binary_sensor.stairs_motion_sensor_sensor
# - binary_sensor.upstairs_multi_sensor_sensor
# - binary_sensor.two_car_garage_door_tilt_sensor_sensor
# - binary_sensor.single_car_garage_door_tilt_sensor_sensor
# - binary_sensor.motion_sensor_158d0001a662fe
# - binary_sensor.motion_sensor_158d0001a25041
# - binary_sensor.motion_sensor_158d00016db6d2
# - binary_sensor.motion_sensor_158d00016c2d0e
# from: 'off'
# to: 'on'
# condition:
# - condition: template
# value_template: "{{ trigger.from_state }}"
# - condition: template
# value_template: >
# {% set state = states.alarm_control_panel.simplisafe.state %}
# {% if state != "" and state != "unknown" and state == "armed_away" %}
# true
# {% else %}
# false
# {% endif %}
# - condition: template
# value_template: >
# {% set suresh = states.device_tracker.suresh_suresh.state %}
# {% set mallika = states.device_tracker.mallika_mallika.state %}
# {% set srinika = states.device_tracker.srinika_srinika.state %}
# {% set hasika = states.device_tracker.hasika_hasika.state %}
# {% if suresh != "home" and mallika != "home" and srinika != "home" and hasika != "home" %}
# True
# {% else %}
# False
# {% endif %}
# action:
# - service: script.voice_notify
# data_template:
# message: "Attention!: SMOKE DETECTED! CALL 911!"
# - service: script.notify_me
# data_template:
# message: "Attention!: SMOKE DETECTED!. CALL 911!"
# - service: input_boolean.turn_on
# entity_id: input_boolean.emergency_mode
# - service: media_player.media_stop
# entity_id: media_player.mpd
# - service: script.emergency_all_lights_switches_on
# - service: script.notify_me
# data_template:
# message: "MOTION DETECTED '{{ trigger.to_state.attributes.friendly_name | upper }}',
# BUT NO ONE IS HOME. CALL FOR EMERGENCY!"
# - service: notify.ios_devices
# data_template:
# title: >
# {{ trigger.to_state.attributes.friendly_name }}
# message: >
# Attention: "MOTION DETECTED '{{ trigger.to_state.attributes.friendly_name | upper }}',
# BUT NO ONE IS HOME. CALL FOR EMERGENCY!"
# - service: script.emergency_script
# data:
# volume_level: 99
# alarm_code: 2
# message: "Smoke Detected. Please get out of the home and call 911 immediately!"
# alarm_code: 1
# message: "Police are on the way!...Police are on the way!...Police are on the way!...Police are on the way!...Police are on the way!"
# Disable Emergency Mode upon Disabling Home Security System
###############################################################################
- alias: Disable Emergency Mode Upon Disabling Home Security
initial_state: true
trigger:
platform: state
entity_id: alarm_control_panel.simplisafe
to: 'disarmed'
condition:
- condition: template
value_template: '{{ states.input_boolean.emergency_mode.state == "on" }}'
action:
- service: input_boolean.turn_off
entity_id: input_boolean.emergency_mode
# script:
- alias: Home Security Away Motion Deteted Inside
initial_state: true
trigger:
platform: state
entity_id:
- binary_sensor.back_door_sensor_sensor
- binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor
- binary_sensor.basement_door_sensor_sensor
- binary_sensor.garage_door_sensor_sensor
- binary_sensor.front_room_multi_sensor_sensor
- binary_sensor.tv_multi_sensor_sensor
- binary_sensor.kitchen_motion_sensor_sensor
- binary_sensor.stairs_motion_sensor_sensor
- binary_sensor.upstairs_multi_sensor_sensor
- binary_sensor.two_car_garage_door_tilt_sensor_sensor
- binary_sensor.single_car_garage_door_tilt_sensor_sensor
- binary_sensor.motion_sensor_158d0001a662fe
- binary_sensor.motion_sensor_158d0001a25041
- binary_sensor.motion_sensor_158d00016db6d2
- binary_sensor.motion_sensor_158d00016c2d0e
from: 'off'
to: 'on'
condition:
- condition: template
value_template: "{{ trigger.from_state }}"
- condition: template
value_template: >
{% set state = states.alarm_control_panel.simplisafe.state %}
{% if state != "" and state != "unknown" and state == "armed_away" %}
true
{% else %}
false
{% endif %}
- condition: template
value_template: >
{% set suresh = states.device_tracker.suresh_suresh.state %}
{% set mallika = states.device_tracker.mallika_mallika.state %}
{% set srinika = states.device_tracker.srinika_srinika.state %}
{% set hasika = states.device_tracker.hasika_hasika.state %}
{% if suresh != "home" and mallika != "home" and srinika != "home" and hasika != "home" %}
True
{% else %}
False
{% endif %}
action:
- service: input_boolean.turn_on
entity_id: input_boolean.emergency_mode
- service: script.emergency_all_lights_switches_on
- service: script.notify_me
data_template:
message: "MOTION DETECTED '{{ trigger.to_state.attributes.friendly_name | upper }}',
BUT NO ONE IS HOME. CALL FOR EMERGENCY!"
- service: notify.ios_devices
data_template:
title: >
{{ trigger.to_state.attributes.friendly_name }}
message: >
Attention: "MOTION DETECTED '{{ trigger.to_state.attributes.friendly_name | upper }}',
BUT NO ONE IS HOME. CALL FOR EMERGENCY!"
- service: script.emergency_script
data:
volume_level: 99
alarm_code: 1
message: "Police are on the way!...Police are on the way!...Police are on the way!...Police are on the way!...Police are on the way!"
# # Main Emergency Script
# ###############################################################################
# emergency_script:
# sequence:
# - condition: template
# value_template: '{{ states.input_boolean.emergency_mode.state | lower == "on" }}'
# - service: script.voice_notify
# data_template:
# message: '{{ message }}'
# greeting: 'no'
# - service: xiaomi_aqara.play_ringtone
# data_template:
# ringtone_id: '{{ alarm_code }}'
# ringtone_vol: '{{ volume_level }}'
# - delay: '00:00:01'
# - service: script.emergency_script_loop
# data_template:
# message: '{{ message }}'
# alarm_code: '{{ alarm_code }}'
# volume_level: '{{ volume_level }}'
script:
# # This script checks for the emergency_mode input_boolean and continue to
# # stay in emergency mode based on the input_boolean value
# ###############################################################################
# emergency_script_loop:
# sequence:
# - condition: template
# value_template: '{{ states.input_boolean.emergency_mode.state == "on" }}'
# - delay: '00:00:02'
# - service: script.emergency_script
# data_template:
# message: '{{ message }}'
# alarm_code: '{{ alarm_code }}'
# volume_level: '{{ volume_level }}'
# Main Emergency Script
###############################################################################
emergency_script:
sequence:
- condition: template
value_template: '{{ states.input_boolean.emergency_mode.state | lower == "on" }}'
- service: script.voice_notify
data_template:
message: '{{ message }}'
greeting: 'no'
- service: xiaomi_aqara.play_ringtone
data_template:
ringtone_id: '{{ alarm_code }}'
ringtone_vol: '{{ volume_level }}'
- delay: '00:00:01'
- service: script.emergency_script_loop
data_template:
message: '{{ message }}'
alarm_code: '{{ alarm_code }}'
volume_level: '{{ volume_level }}'
# This script checks for the emergency_mode input_boolean and continue to
# stay in emergency mode based on the input_boolean value
###############################################################################
emergency_script_loop:
sequence:
- condition: template
value_template: '{{ states.input_boolean.emergency_mode.state == "on" }}'
- delay: '00:00:02'
- service: script.emergency_script
data_template:
message: '{{ message }}'
alarm_code: '{{ alarm_code }}'
volume_level: '{{ volume_level }}'
# Turns ALL lights & Switches ON (Lights in RED where possible)
###############################################################################
emergency_all_lights_switches_on:
sequence:
- service: script.xiaomi_red
- service: script.ifttt_leeo_color_change
data_template:
value1: "#FF0000"
- service: light.turn_on
entity_id: light.family_room
data:
transition: 0
brightness: 255
rgb_color: [255,0,0]
- service: light.turn_on
entity_id: light.master_bedroom
data:
transition: 0
brightness: 255
rgb_color: [255,0,0]
- service: switch.turn_on
entity_id:
- switch.basement_left
- switch.basement_right
- switch.garage
- switch.guest_bedroom
- switch.prayer_room
- switch.kids_bed_accent
- switch.kids_bedroom
- switch.office_room
- switch.smart_outlet_1
- switch.kitchen
- switch.zwave_smart_switch_switch
- switch.rf_switch_five
- switch.rf_switch_four
- switch.rf_switch_one
- switch.rf_switch_three
- switch.rf_switch_two
- switch.wemobackyardlightswitch
- switch.frontyard_light
- switch.downstairs_bathroom_fragrance_outlet
- switch.downstairs_fragrance
- switch.upstairs_fragrance
- switch.kitchen_siren_switch
- switch.kitchen_siren_switch_2
- switch.kitchen_siren_switch_3
- switch.kitchen_siren_switch_4
- switch.kitchen_siren_switch_5
- switch.wemoswitch1
# # Turns ALL lights & Switches ON (Lights in RED where possible)
# ###############################################################################
# emergency_all_lights_switches_on:
# sequence:
# - service: script.xiaomi_red
# - service: script.ifttt_leeo_color_change
# data_template:
# value1: "#FF0000"
# - service: light.turn_on
# entity_id: light.family_room
# data:
# transition: 0
# brightness: 255
# rgb_color: [255,0,0]
# - service: light.turn_on
# entity_id: light.master_bedroom
# data:
# transition: 0
# brightness: 255
# rgb_color: [255,0,0]
# - service: switch.turn_on
# entity_id:
# - switch.basement_left
# - switch.basement_right
# - switch.garage
# - switch.guest_bedroom
# - switch.prayer_room
# - switch.kids_bed_accent
# - switch.kids_bedroom
# - switch.office_room
# - switch.smart_outlet_1
# - switch.kitchen
# - switch.zwave_smart_switch_switch
# - switch.rf_switch_five
# - switch.rf_switch_four
# - switch.rf_switch_one
# - switch.rf_switch_three
# - switch.rf_switch_two
# - switch.wemobackyardlightswitch
# - switch.frontyard_light
# - switch.downstairs_bathroom_fragrance_outlet
# - switch.downstairs_fragrance
# - switch.upstairs_fragrance
# - switch.kitchen_siren_switch
# - switch.kitchen_siren_switch_2
# - switch.kitchen_siren_switch_3
# - switch.kitchen_siren_switch_4
# - switch.kitchen_siren_switch_5
# - switch.wemoswitch1

View File

@ -1,52 +1,51 @@
homeassistant:
customize:
# homeassistant:
# customize:
# # Locations
# sensor.suresh_location:
# friendly_name: Suresh
# icon: mdi:map-marker
# sensor.mallika_location:
# friendly_name: Mallika
# icon: mdi:map-marker
# sensor.srinika_location:
# friendly_name: Srinika
# icon: mdi:map-marker
# sensor.hasika_location:
# friendly_name: Hasika
# icon: mdi:map-marker
# Locations
sensor.suresh_location:
friendly_name: Suresh
icon: mdi:map-marker
sensor.mallika_location:
friendly_name: Mallika
icon: mdi:map-marker
sensor.srinika_location:
friendly_name: Srinika
icon: mdi:map-marker
sensor.hasika_location:
friendly_name: Hasika
icon: mdi:map-marker
# # Google Calendar
# google:
# client_id: !secret google_client_id
# client_secret: !secret google_client_secret
# Google Calendar
google:
client_id: !secret google_client_id
client_secret: !secret google_client_secret
# # Google Travel Times and Geo Code/Location
# sensor:
# # Address/Location Details
# - platform: google_geocode
# name: Suresh Location
# api_key: !secret google_maps_geocoding_api
# origin: device_tracker.life360_suresh
# options: formatted_address
# display_zone: hide
# Google Travel Times and Geo Code/Location
sensor:
# Address/Location Details
- platform: google_geocode
name: Suresh Location
api_key: !secret google_maps_geocoding_api
origin: device_tracker.suresh_suresh
options: formatted_address
display_zone: hide
# - platform: google_geocode
# name: Mallika Location
# api_key: !secret google_maps_geocoding_api
# origin: device_tracker.life360_mallika
# options: formatted_address
# display_zone: hide
- platform: google_geocode
name: Mallika Location
api_key: !secret google_maps_geocoding_api
origin: device_tracker.mallika_mallika
options: formatted_address
display_zone: hide
# - platform: google_geocode
# name: Srinika Location
# api_key: !secret google_maps_geocoding_api
# origin: device_tracker.life360_srinika
# options: formatted_address
# display_zone: hide
- platform: google_geocode
name: Srinika Location
api_key: !secret google_maps_geocoding_api
origin: device_tracker.srinika_srinika
options: formatted_address
display_zone: hide
- platform: google_geocode
name: Hasika Location
api_key: !secret google_maps_geocoding_api
origin: device_tracker.hasika_hasika
options: formatted_address
display_zone: hide
# - platform: google_geocode
# name: Hasika Location
# api_key: !secret google_maps_geocoding_api
# origin: device_tracker.life360_hasika
# options: formatted_address
# display_zone: hide

View File

@ -6,7 +6,6 @@
###############################################################################
homeassistant:
customize:
group.home_security_system:
order: 7
@ -130,13 +129,13 @@ automation:
- platform: state
entity_id:
- alarm_control_panel.simplisafe
to: 'disarmed'
to: "disarmed"
for:
minutes: 10
condition:
- condition: state
entity_id: group.all_devices
state: 'home'
state: "home"
action:
- service: script.notify_me
data:
@ -151,13 +150,13 @@ automation:
- platform: state
entity_id:
- alarm_control_panel.simplisafe
to: 'disarmed'
to: "disarmed"
for:
minutes: 30
condition:
- condition: state
entity_id: group.all_devices
state: 'home'
state: "home"
- condition: template
value_template: "{{ states('input_boolean.security_system_alerts') == 'on' }}"
action:
@ -187,7 +186,7 @@ automation:
- service: climate.set_away_mode
data_template:
entity_id: climate.dining_room
away_mode: 'false'
away_mode: "false"
###############################################################################
# TURN HOME SECURITY SYSTEM ON AT BED TIME
@ -196,18 +195,18 @@ automation:
initial_state: true
trigger:
platform: time_pattern
minutes: '/5'
minutes: "/5"
seconds: 00
condition:
- condition: template
value_template: '{{ states.sensor.bedtime_hour.state|int == now().hour|int }}'
value_template: "{{ states.sensor.bedtime_hour.state|int == now().hour|int }}"
- condition: template
value_template: '{{ states.sensor.bedtime_minute.state|int == now().minute|int }}'
value_template: "{{ states.sensor.bedtime_minute.state|int == now().minute|int }}"
- condition: template
value_template: "{{ states('alarm_control_panel.simplisafe') != 'away' }}"
- condition: state
entity_id: group.all_devices
state: 'home'
state: "home"
- condition: template
value_template: "{{ states('alarm_control_panel.simplisafe') == 'disarmed' }}"
- condition: template
@ -219,7 +218,6 @@ automation:
- service: script.notify_me
data:
message: "It's bedtime, you forgot to turn ON Home Security System. Turned it ON for you."
###############################################################################
# Check for Garage Door Status when Home Security System State changes
###############################################################################
@ -412,7 +410,7 @@ automation:
# initial_state: true
# trigger:
# - platform: state
# entity_id: device_tracker.suresh_suresh
# entity_id: device_tracker.life360_suresh
# from: 'not_home'
# to: 'home'
# condition:

View File

@ -1,51 +0,0 @@
###############################################################################
# PACKAGE: LIFE365 SENSOR
# Description: The Life365 sensor requires username, password and mqtt topic.
# Whatever the topic you specify, the data will be dumped there.
# Use the exact topic name in the Parse Life365 Data automation.
#
# What is Life365?
# It is Life360 sensor, much simpler and a lot better ;)
# this component used to be life360, until it has a conflict with official
# component..., so I simply changed to Life365!
###############################################################################
homeassistant:
customize:
sensor.life365_sensor:
friendly_name: Life 365
hidden: true
sensor:
- platform: life365
username: !secret life360_username
password: !secret life360_password
mqtt_topic: "/life360/data"
scan_interval: 15
###############################################################################
# _ _ _
# /\ | | | | (_)
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
#
###############################################################################
automation:
###############################################################################
# Alert me When the sensor fails
###############################################################################
- alias: Alert Life365 Error
initial_state: true
trigger:
platform: state
entity_id: sensor.life365_sensor
to: 'error'
for: '00:05:00'
action:
- service: script.notify_me
data_template:
message: "Life365 Sensor state changed to: {{ trigger.to_state.state| upper }}."

View File

@ -7,7 +7,6 @@
homeassistant:
customize:
# Media Players
media_player.snapcast_client_b827eb8604f5:
friendly_name: Front Room Music
@ -96,17 +95,17 @@ media_player:
binary_sensor:
- platform: mqtt
name: Sharp TV
state_topic: '/home/sharptv'
payload_on: 'on'
payload_off: 'off'
value_template: '{{ value }}'
state_topic: "/home/sharptv"
payload_on: "on"
payload_off: "off"
value_template: "{{ value }}"
- platform: mqtt
name: Sharp TV Command State
state_topic: '/home/sharp_tv_cmd'
payload_on: 'on'
payload_off: 'off'
value_template: '{{ value }}'
state_topic: "/home/sharp_tv_cmd"
payload_on: "on"
payload_off: "off"
value_template: "{{ value }}"
input_select:
snapcast_server:
@ -149,7 +148,6 @@ script:
###############################################################################
automation:
###############################################################################
# Snapcast Server Management
###############################################################################

View File

@ -10,45 +10,45 @@ input_datetime:
name: Summer Bed Time
has_date: false
has_time: true
initial: '23:00:00'
initial: "23:00:00"
summer_wakeup_time:
name: Summer Wakeup Time
has_date: false
has_time: true
initial: '06:00:00'
initial: "06:00:00"
autumn_bed_time:
name: Autumn Bed Time
has_date: false
has_time: true
initial: '22:00:00'
initial: "22:00:00"
autumn_wakeup_time:
name: Autumn Wakeup Time
has_date: false
has_time: true
initial: '05:30:00'
initial: "05:30:00"
winter_bed_time:
name: Winter Bed Time
has_date: false
has_time: true
initial: '22:00:00'
initial: "22:00:00"
winter_wakeup_time:
name: Winter Wakeup Time
has_date: false
has_time: true
initial: '05:30:00'
initial: "05:30:00"
spring_bed_time:
name: Spring Bed Time
has_date: false
has_time: true
initial: '22:00:00'
initial: "22:00:00"
spring_wakeup_time:
name: Spring Wakeup Time
has_date: false
has_time: true
initial: '05:30:00'
initial: "05:30:00"
input_number:
calendar_remind_before_days:
@ -141,7 +141,7 @@ input_boolean:
icon: mdi:do-not-disturb
movie_time:
name: 'Movie Time'
name: "Movie Time"
initial: off
icon: mdi:movie-roll
@ -251,7 +251,6 @@ input_boolean:
###############################################################################
automation:
# Do not disturb for 2 hours
# Simply turns ON the Do Not Disturb Flag ad resets
# after 2 hours. The Do Not Disturb flag is used in
@ -262,7 +261,7 @@ automation:
trigger:
- platform: state
entity_id: input_boolean.do_not_disturb
to: 'on'
to: "on"
for:
hours: 2
minutes: 0
@ -277,7 +276,7 @@ automation:
trigger:
- platform: state
entity_id: input_boolean.movie_time
to: 'on'
to: "on"
for:
hours: 3
action:
@ -302,7 +301,7 @@ automation:
initial_state: true
trigger:
platform: time_pattern
hours: '/01'
hours: "/01"
minutes: 05
seconds: 00
condition:
@ -310,7 +309,7 @@ automation:
value_template: '{{ states.input_boolean.hourly_report.state == "on" }}'
- condition: state
entity_id: group.all_devices
state: 'home'
state: "home"
- condition: template
value_template: >
{% set hour = now().hour | int %}

View File

@ -6,7 +6,6 @@
###############################################################################
homeassistant:
customize:
sun.sun:
friendly_name: Sun
@ -125,17 +124,17 @@ weather:
openuv:
api_key: !secret openuv_apikey
iqvia:
zip_code: !secret zip_code
monitored_conditions:
- allergy_average_forecasted
- allergy_index_today
- allergy_index_tomorrow
- asthma_average_forecasted
- asthma_index_today
- asthma_index_tomorrow
- disease_average_forecasted
- disease_index_today
# iqvia:
# zip_code: !secret zip_code
# monitored_conditions:
# - allergy_average_forecasted
# - allergy_index_today
# - allergy_index_tomorrow
# - asthma_average_forecasted
# - asthma_index_today
# - asthma_index_tomorrow
# - disease_average_forecasted
# - disease_index_today
sensor:
- platform: darksky
@ -190,7 +189,6 @@ sensor:
###############################################################################
automation:
# Script to alert when enjoyable weather is outside
# For me, enjoyable is:
# 1. Must be above 70 Degrees F
@ -207,11 +205,11 @@ automation:
value_template: '{{ states.input_boolean.enjoyable_weather_reminders.state == "on" }}'
- condition: state
entity_id: sun.sun
state: 'above_horizon'
state: "above_horizon"
- condition: template
value_template: '{% if states.sensor.dark_sky_apparent_temperature.state | round > 70 %} true {% else %} false {% endif %}'
value_template: "{% if states.sensor.dark_sky_apparent_temperature.state | round > 70 %} true {% else %} false {% endif %}"
- condition: template
value_template: '{% if states.sensor.dark_sky_wind_speed.state | round < 8 %} false {% else %} true {% endif %}'
value_template: "{% if states.sensor.dark_sky_wind_speed.state | round < 8 %} false {% else %} true {% endif %}"
action:
- service: script.notify_me
data_template:
@ -258,7 +256,7 @@ automation:
- input_boolean.rain_alert
- input_boolean.snow_alert
- input_boolean.sleet_alert
to: 'on'
to: "on"
for:
minutes: 15
action:
@ -300,14 +298,14 @@ automation:
value_template: '{{ trigger.to_state.state | lower == "rain" }}'
- condition: state
entity_id: group.all_devices
state: 'home'
state: "home"
- condition: state
entity_id: sun.sun
state: 'above_horizon'
state: "above_horizon"
- condition: template
value_template: '{% if trigger.to_state.state == "unknown" or trigger.to_state.state == "" %} false {% else %} true {% endif %}'
- condition: template
value_template: '{{ states.sensor.dark_sky_precip_probability.state | int == 1 }}'
value_template: "{{ states.sensor.dark_sky_precip_probability.state | int == 1 }}"
action:
- service: script.notify_me
data_template:
@ -333,14 +331,14 @@ automation:
value_template: '{{ states.sensor.season.state | lower == "winter" }}'
- condition: state
entity_id: group.all_devices
state: 'home'
state: "home"
- condition: state
entity_id: sun.sun
state: 'above_horizon'
state: "above_horizon"
- condition: template
value_template: '{% if trigger.to_state.state == "unknown" or trigger.to_state.state == "" %} false {% else %} true {% endif %}'
- condition: template
value_template: '{{ states.sensor.dark_sky_precip_probability.state | int == 1 }}'
value_template: "{{ states.sensor.dark_sky_precip_probability.state | int == 1 }}"
action:
- service: script.notify_me
data_template:
@ -358,21 +356,12 @@ automation:
input_boolean.sleet_alert
{%- endif %}
- alias: Update OpenUV every 30 minutes during the daytime
- alias: Update OpenUV every hour (24 of 50 calls per day)
trigger:
platform: time_pattern
minutes: "/30"
seconds: 00
condition:
condition: and
conditions:
- condition: sun
after: sunrise
- condition: sun
before: sunset
minutes: "/60"
action:
service: openuv.update_data
# Weather sensors - TBD, too lazy to create them
#
# {{ states.sun.sun.state }}

View File

@ -12,7 +12,7 @@ homeassistant:
timer:
wfh_timer:
duration: '00:30:00'
duration: "00:30:00"
###############################################################################
# _ _ _
@ -25,24 +25,23 @@ timer:
###############################################################################
automation:
# Start WFH timer if Suresh is HOME during weekdays between 10 AM and 5 PM
###############################################################################
- alias: WFH Timer Start
initial_state: false
trigger:
- platform: time_pattern
minutes: '/5'
minutes: "/5"
seconds: 00
condition:
- condition: template
value_template: '{{ states.binary_sensor.workday_sensor.state == "on" }}'
- condition: template
value_template: '{{ now().hour|int >= 10 and now().hour|int < 17 }}'
value_template: "{{ now().hour|int >= 10 and now().hour|int < 17 }}"
- condition: template
value_template: '{{ states.timer.wfh_timer.state == "idle" }}'
- condition: template
value_template: '{{ states.device_tracker.suresh_suresh.state == "home" }}'
value_template: '{{ states.device_tracker.life360_suresh.state == "home" }}'
action:
- service: timer.start
entity_id: timer.wfh_timer
@ -66,7 +65,7 @@ automation:
{% endif %}
entity_id: timer.wfh_timer
- condition: template
value_template: '{{ now().hour|int >= 10 and now().hour|int < 17 }}'
value_template: "{{ now().hour|int >= 10 and now().hour|int < 17 }}"
- service: script.voice_notify
data_template:
message: "It is time to stand up and walk around!"
@ -77,7 +76,7 @@ automation:
initial_state: false
trigger:
- platform: zone
entity_id: device_tracker.suresh_suresh
entity_id: device_tracker.life360_suresh
zone: zone.home
event: leave
condition:

View File

@ -6,7 +6,6 @@
###############################################################################
homeassistant:
customize:
input_boolean.home_mode_away:
friendly_name: Away Mode
zone.home:
@ -26,15 +25,15 @@ zone:
input_boolean:
home_mode_away:
name: Away
initial: 'off'
initial: "off"
proximity:
home:
devices: device_tracker.suresh_suresh
devices: device_tracker.life360_suresh
tolerance: 50
unit_of_measurement: mi
work:
devices: device_tracker.suresh_suresh
devices: device_tracker.life360_suresh
tolerance: 50
unit_of_measurement: mi
@ -57,14 +56,14 @@ automation:
trigger:
- platform: zone
entity_id:
- device_tracker.hasika_hasika
- device_tracker.mallika_mallika
- device_tracker.srinika_srinika
- device_tracker.suresh_suresh
- device_tracker.life360_hasika
- device_tracker.life360_mallika
- device_tracker.life360_srinika
- device_tracker.life360_suresh
zone: zone.home
event: enter
- platform: zone
entity_id: device_tracker.suresh_suresh
entity_id: device_tracker.life360_suresh
zone: zone.work
event: enter
condition:
@ -74,26 +73,26 @@ automation:
- service: script.notify_me
data_template:
message: >
{{ trigger.entity_id.split('.')[1].split('_')[0] | title}} just entered {{ trigger.zone.attributes.friendly_name }}!
{{ trigger.entity_id.split('.')[1].split('_')[1] | title}} just entered {{ trigger.zone.attributes.friendly_name }}!
- service: script.voice_notify
data_template:
message: >
{{ trigger.entity_id.split('.')[1].split('_')[0] | title}} just entered {{ trigger.zone.attributes.friendly_name }}!
greeting: 'no'
{{ trigger.entity_id.split('.')[1].split('_')[1] | title}} just entered {{ trigger.zone.attributes.friendly_name }}!
greeting: "no"
- alias: Alert When Someone Leaves a Zone
initial_state: true
trigger:
- platform: zone
entity_id:
- device_tracker.hasika_hasika
- device_tracker.mallika_mallika
- device_tracker.srinika_srinika
- device_tracker.suresh_suresh
- device_tracker.life360_hasika
- device_tracker.life360_mallika
- device_tracker.life360_srinika
- device_tracker.life360_suresh
zone: zone.home
event: leave
- platform: zone
entity_id: device_tracker.suresh_suresh
entity_id: device_tracker.life360_suresh
zone: zone.work
event: leave
condition:
@ -102,15 +101,15 @@ automation:
action:
- service: script.notify_me
data_template:
message: "{{ trigger.entity_id.split('.')[1].split('_')[0] | title}} just left {{ trigger.zone.attributes.friendly_name }}."
message: "{{ trigger.entity_id.split('.')[1].split('_')[1] | title}} just left {{ trigger.zone.attributes.friendly_name }}."
- service: script.voice_notify
data_template:
message: >-
{{ trigger.entity_id.split('.')[1].split('_')[0] | title }} just left {{ trigger.zone.attributes.friendly_name }}.
{% if trigger.entity_id.split('.')[1].split('_')[0] == "suresh" and trigger.zone.attributes.friendly_name | lower == "office" %}
{{ trigger.entity_id.split('.')[1].split('_')[1] | title }} just left {{ trigger.zone.attributes.friendly_name }}.
{% if trigger.entity_id.split('.')[1].split('_')[1] == "suresh" and trigger.zone.attributes.friendly_name | lower == "office" %}
and will be home in {{ (states.sensor.suresh2home.state | int) + 5 }} minutes.
{% endif %}
greeting: 'no'
greeting: "no"
###############################################################################
# Welcome family members when they come home
@ -120,27 +119,27 @@ automation:
trigger:
- platform: state
entity_id:
- device_tracker.mallika_mallika
- device_tracker.suresh_suresh
- device_tracker.srinika_srinika
- device_tracker.hasika_hasika
from: 'not_home'
to: 'home'
for: '00:02:00'
- device_tracker.life360_mallika
- device_tracker.life360_suresh
- device_tracker.life360_srinika
- device_tracker.life360_hasika
from: "not_home"
to: "home"
for: "00:02:00"
condition:
- condition: state
entity_id: input_boolean.zone_alerts
state: 'on'
state: "on"
action:
- service: script.notify_me
data_template:
message: >
Welcome home, {{ trigger.entity_id.split('.')[1].split('_')[0] | title }}!
Welcome home, {{ trigger.entity_id.split('.')[1].split('_')[1] | title }}!
- service: script.voice_notify
data_template:
message: >
"Welcome home, {{ trigger.entity_id.split('.')[1].split('_')[0] | lower }}!"
greeting: 'no'
"Welcome home, {{ trigger.entity_id.split('.')[1].split('_')[1] | lower }}!"
greeting: "no"
- service: input_boolean.turn_off
entity_id: input_boolean.home_mode_away
@ -152,16 +151,16 @@ automation:
trigger:
platform: time_pattern
minutes: 00
seconds: '/30'
seconds: "/30"
condition:
- condition: template
value_template: '{{ states.input_boolean.home_mode_away.state == "off" }}'
- condition: template
value_template: >
{% set suresh = states.device_tracker.suresh_suresh.state %}
{% set mallika = states.device_tracker.mallika_mallika.state %}
{% set srinika = states.device_tracker.srinika_srinika.state %}
{% set hasika = states.device_tracker.hasika_hasika.state %}
{% set suresh = states.device_tracker.life360_suresh.state %}
{% set mallika = states.device_tracker.life360_mallika.state %}
{% set srinika = states.device_tracker.life360_srinika.state %}
{% set hasika = states.device_tracker.life360_hasika.state %}
{% if suresh != "home" and mallika != "home" and srinika != "home" and hasika != "home" %}
True
{% else %}
@ -176,7 +175,7 @@ automation:
trigger:
platform: state
entity_id: input_boolean.home_mode_away
to: 'on'
to: "on"
action:
- service: script.home_mode_away
@ -199,10 +198,10 @@ automation:
message: "Suresh is on his way home, he is within the 5 miles range. Should be home soon!"
- condition: template
value_template: >
{% set suresh = states.device_tracker.suresh_suresh.state %}
{% set mallika = states.device_tracker.mallika_mallika.state %}
{% set srinika = states.device_tracker.srinika_srinika.state %}
{% set hasika = states.device_tracker.hasika_hasika.state %}
{% set suresh = states.device_tracker.life360_suresh.state %}
{% set mallika = states.device_tracker.life360_mallika.state %}
{% set srinika = states.device_tracker.life360_srinika.state %}
{% set hasika = states.device_tracker.life360_hasika.state %}
{% if suresh != "home" and mallika != "home" and srinika != "home" and hasika != "home" %}
True
{% else %}
@ -211,7 +210,7 @@ automation:
- service: climate.set_away_mode
data:
entity_id: climate.dining_room
away_mode: 'false'
away_mode: "false"
- service: script.notify_me
data_template:
message: "Your Nest thermostat is set to HOME mode. Thank you!"

View File

@ -162,7 +162,7 @@
{# Drone Flying Weather #}
{%- macro drone_weather() -%}
{% if states.binary_sensor.good_weather_to_fly_drones.state| lower == "on" and
states.device_tracker.suresh_suresh.state == "home" and
states.device_tracker.life360_suresh.state == "home" and
states.sun.sun.state == "above_horizon" %}
It is now a great weather to fly drone outside.
{% endif %}

View File

@ -22,7 +22,7 @@
</CommandClass>
<CommandClass id="48" name="COMMAND_CLASS_SENSOR_BINARY" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="True" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
<SensorMap index="0" type="47" />
<SensorMap index="0" type="55" />
<SensorMap index="0" type="63" />
@ -34,10 +34,10 @@
</CommandClass>
<CommandClass id="49" name="COMMAND_CLASS_SENSOR_MULTILEVEL" version="5" innif="true">
<Instance index="1" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="72.3" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="72.1" />
<Value type="decimal" genre="user" instance="1" index="3" label="Luminance" units="lux" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0" />
<Value type="decimal" genre="user" instance="1" index="4" label="Power" units="W" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="46" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="39" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="40" />
</CommandClass>
<CommandClass id="90" name="COMMAND_CLASS_DEVICE_RESET_LOCALLY" version="1" request_flags="4" after_mark="true" innif="true">
<Instance index="1" />
@ -168,7 +168,7 @@
</CommandClass>
<CommandClass id="128" name="COMMAND_CLASS_BATTERY" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="100" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="64" />
</CommandClass>
<CommandClass id="130" name="COMMAND_CLASS_HAIL" version="1" request_flags="4" after_mark="true" innif="true">
<Instance index="1" />
@ -208,7 +208,7 @@
</CommandClass>
<CommandClass id="48" name="COMMAND_CLASS_SENSOR_BINARY" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="True" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
<SensorMap index="0" type="46" />
<SensorMap index="0" type="62" />
<SensorMap index="0" type="193" />
@ -216,9 +216,9 @@
</CommandClass>
<CommandClass id="49" name="COMMAND_CLASS_SENSOR_MULTILEVEL" version="5" innif="true">
<Instance index="1" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="73.4" />
<Value type="decimal" genre="user" instance="1" index="3" label="Luminance" units="lux" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="58" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="33" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="73.0" />
<Value type="decimal" genre="user" instance="1" index="3" label="Luminance" units="lux" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="39" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="36" />
<Value type="decimal" genre="user" instance="1" index="27" label="Ultraviolet" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0" />
</CommandClass>
<CommandClass id="90" name="COMMAND_CLASS_DEVICE_RESET_LOCALLY" version="1" request_flags="4" after_mark="true" innif="true">
@ -350,7 +350,7 @@
</CommandClass>
<CommandClass id="128" name="COMMAND_CLASS_BATTERY" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="100" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="82" />
</CommandClass>
<CommandClass id="130" name="COMMAND_CLASS_HAIL" version="1" request_flags="4" after_mark="true" innif="true">
<Instance index="1" />
@ -379,7 +379,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="4" name="Two Car Garage Door Tilt Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="4" name="Two Car Garage Door Tilt Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="4" id="3" name="Garage Door Tilt Sensor" />
</Manufacturer>
@ -490,7 +490,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="5" name="Single Car Garage Door Tilt Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="5" name="Single Car Garage Door Tilt Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="4" id="3" name="Garage Door Tilt Sensor" />
</Manufacturer>
@ -601,7 +601,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="6" name="Back Door Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="6" name="Back Door Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="4" id="2" name="Door Sensor" />
</Manufacturer>
@ -612,7 +612,7 @@
</CommandClass>
<CommandClass id="48" name="COMMAND_CLASS_SENSOR_BINARY" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="True" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
<SensorMap index="0" type="127" />
<SensorMap index="0" type="191" />
<SensorMap index="0" type="223" />
@ -635,7 +635,7 @@
<Value type="byte" genre="user" instance="1" index="0" label="Alarm Type" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="1" label="Alarm Level" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="2" label="SourceNodeId" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="9" label="Access Control" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="22" />
<Value type="byte" genre="user" instance="1" index="9" label="Access Control" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="23" />
<Value type="byte" genre="user" instance="1" index="10" label="Burglar" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="11" label="Power Management" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
</CommandClass>
@ -728,9 +728,9 @@
</CommandClass>
<CommandClass id="49" name="COMMAND_CLASS_SENSOR_MULTILEVEL" version="5" innif="true">
<Instance index="1" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="70.3" />
<Value type="decimal" genre="user" instance="1" index="3" label="Luminance" units="lux" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="87" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="46" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="76.5" />
<Value type="decimal" genre="user" instance="1" index="3" label="Luminance" units="lux" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="137" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="44" />
<Value type="decimal" genre="user" instance="1" index="27" label="Ultraviolet" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0" />
</CommandClass>
<CommandClass id="90" name="COMMAND_CLASS_DEVICE_RESET_LOCALLY" version="1" request_flags="4" innif="true">
@ -1006,11 +1006,11 @@
</CommandClass>
<CommandClass id="50" name="COMMAND_CLASS_METER" version="3" request_flags="2" innif="true">
<Instance index="1" />
<Value type="decimal" genre="user" instance="1" index="0" label="Energy" units="kWh" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="48.280" />
<Value type="decimal" genre="user" instance="1" index="1" label="Previous Reading" units="kWh" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="48.280" />
<Value type="int" genre="user" instance="1" index="2" label="Interval" units="seconds" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="2522" />
<Value type="decimal" genre="user" instance="1" index="0" label="Energy" units="kWh" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="50.014" />
<Value type="decimal" genre="user" instance="1" index="1" label="Previous Reading" units="kWh" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="50.014" />
<Value type="int" genre="user" instance="1" index="2" label="Interval" units="seconds" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="365" />
<Value type="decimal" genre="user" instance="1" index="8" label="Power" units="W" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0.000" />
<Value type="decimal" genre="user" instance="1" index="16" label="Voltage" units="V" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="117.357" />
<Value type="decimal" genre="user" instance="1" index="16" label="Voltage" units="V" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="116.082" />
<Value type="decimal" genre="user" instance="1" index="20" label="Current" units="A" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0.000" />
<Value type="bool" genre="user" instance="1" index="32" label="Exporting" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
<Value type="button" genre="system" instance="1" index="33" label="Reset" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
@ -1181,7 +1181,7 @@
</CommandClass>
<CommandClass id="129" name="COMMAND_CLASS_CLOCK" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="list" genre="user" instance="1" index="0" label="Day" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" vindex="4" size="1">
<Value type="list" genre="user" instance="1" index="0" label="Day" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" vindex="3" size="1">
<Item label="Monday" value="1" />
<Item label="Tuesday" value="2" />
<Item label="Wednesday" value="3" />
@ -1190,8 +1190,8 @@
<Item label="Saturday" value="6" />
<Item label="Sunday" value="7" />
</Value>
<Value type="byte" genre="user" instance="1" index="1" label="Hour" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="13" />
<Value type="byte" genre="user" instance="1" index="2" label="Minute" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="19" />
<Value type="byte" genre="user" instance="1" index="1" label="Hour" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="15" />
<Value type="byte" genre="user" instance="1" index="2" label="Minute" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="9" />
</CommandClass>
<CommandClass id="130" name="COMMAND_CLASS_HAIL" version="1" request_flags="4" after_mark="true" innif="true">
<Instance index="1" />
@ -1328,7 +1328,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="17" name="Stairs Motion Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="17" name="Stairs Motion Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="4" id="1" name="Motion Detector" />
</Manufacturer>
@ -1339,7 +1339,7 @@
</CommandClass>
<CommandClass id="48" name="COMMAND_CLASS_SENSOR_BINARY" version="1" request_flags="4" innif="true">
<Instance index="1" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="True" />
<Value type="bool" genre="user" instance="1" index="0" label="Sensor" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
<SensorMap index="0" type="255" />
</CommandClass>
<CommandClass id="90" name="COMMAND_CLASS_DEVICE_RESET_LOCALLY" version="1">
@ -1369,7 +1369,7 @@
<Value type="byte" genre="user" instance="1" index="0" label="Alarm Type" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="1" label="Alarm Level" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="2" label="SourceNodeId" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="10" label="Burglar" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="8" />
<Value type="byte" genre="user" instance="1" index="10" label="Burglar" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
<Value type="byte" genre="user" instance="1" index="11" label="Power Management" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
</CommandClass>
<CommandClass id="114" name="COMMAND_CLASS_MANUFACTURER_SPECIFIC" version="1" request_flags="4" innif="true">
@ -1703,7 +1703,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="25" name="Basement Door Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="25" name="Basement Door Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="4" id="2" name="Unknown: type=0004, id=0002" />
</Manufacturer>
@ -1965,7 +1965,7 @@
</CommandClass>
<CommandClass id="128" name="COMMAND_CLASS_BATTERY" version="1" request_flags="5" innif="true">
<Instance index="1" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="37" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="100" />
</CommandClass>
<CommandClass id="132" name="COMMAND_CLASS_WAKE_UP" version="2" request_flags="1" innif="true">
<Instance index="1" />
@ -2023,7 +2023,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="28" name="Audio Detector" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3073" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="28" name="Audio Detector" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3073" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="5" id="f" name="FireFighter" />
</Manufacturer>
@ -2038,7 +2038,7 @@
</CommandClass>
<CommandClass id="49" name="COMMAND_CLASS_SENSOR_MULTILEVEL" version="7" innif="true">
<Instance index="1" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="74.66" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="73.94" />
</CommandClass>
<CommandClass id="90" name="COMMAND_CLASS_DEVICE_RESET_LOCALLY" version="1" request_flags="4" innif="true">
<Instance index="1" />
@ -2132,7 +2132,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="29" name="Garage Door Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="29" name="Garage Door Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3072" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="14a" name="Ecolink">
<Product type="4" id="2" name="Unknown: type=0004, id=0002" />
</Manufacturer>
@ -2238,7 +2238,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="31" name="Aeotec Water Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3079" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="31" name="Aeotec Water Sensor" location="" basic="4" generic="7" specific="1" roletype="6" devicetype="3079" nodetype="0" type="Notification Sensor" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Dynamic">
<Manufacturer id="86" name="Aeotec">
<Product type="102" id="7a" name="Unknown: type=0102, id=007a" />
</Manufacturer>
@ -2341,7 +2341,7 @@
</CommandClass>
<CommandClass id="128" name="COMMAND_CLASS_BATTERY" version="1" request_flags="5" innif="true">
<Instance index="1" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="29" />
<Value type="byte" genre="user" instance="1" index="0" label="Battery Level" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="14" />
</CommandClass>
<CommandClass id="132" name="COMMAND_CLASS_WAKE_UP" version="2" request_flags="1" innif="true">
<Instance index="1" />
@ -2405,9 +2405,9 @@
</CommandClass>
<CommandClass id="49" name="COMMAND_CLASS_SENSOR_MULTILEVEL" version="5" innif="true">
<Instance index="1" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="76.6" />
<Value type="decimal" genre="user" instance="1" index="1" label="Temperature" units="F" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="76.7" />
<Value type="decimal" genre="user" instance="1" index="3" label="Luminance" units="lux" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="40" />
<Value type="decimal" genre="user" instance="1" index="5" label="Relative Humidity" units="%" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="42" />
<Value type="decimal" genre="user" instance="1" index="27" label="Ultraviolet" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0" />
<Value type="decimal" genre="user" instance="1" index="37" label="Radon Concentration" units="bq/m3" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="60" />
</CommandClass>
@ -2653,7 +2653,7 @@
</CommandClass>
</CommandClasses>
</Node>
<Node id="36" name="" location="" basic="4" generic="33" specific="1" type="Routing Multilevel Sensor" listening="true" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">
<Node id="36" name="" location="" basic="4" generic="33" specific="1" type="Routing Multilevel Sensor" listening="true" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="CacheLoad">
<Manufacturer id="0" name="">
<Product type="0" id="0" name="" />
</Manufacturer>