changed notification system
This commit is contained in:
parent
b9cfeeeea2
commit
20bdf8ed76
|
@ -76,8 +76,6 @@ cards:
|
|||
# - script.home_mode_away
|
||||
# - script.home_status
|
||||
# - script.led_message
|
||||
# - script.notify_me
|
||||
# - script.notify_me_with_picture
|
||||
# - script.patio_cam
|
||||
# - script.patio_camera_text_overlay
|
||||
# - script.pill_taken
|
||||
|
|
|
@ -76,9 +76,13 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ trigger.to_state.state | int > 0 and trigger.to_state.state | int < 30 }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "{{ trigger.entity_id.split('.')[1].split('_')[0] | title }}'s Birthday is only {{ trigger.to_state.state }} days to go!"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# Celebrate Birthday!!!
|
||||
|
@ -95,9 +99,14 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ trigger.to_state.state | int == 0 }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "Hurray! Today is {{ trigger.entity_id.split('.')[1].split('_')[0] | title }}'s Birthday!"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- voice
|
||||
|
||||
###############################################################################
|
||||
# Announce Happy Birthday message every hour starting 7 am until 9 PM
|
||||
|
@ -124,15 +133,13 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states('input_label.mallika_birthday_days2go') | int == 0 }}"
|
||||
action:
|
||||
- service: script.voice_notify
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: !include ../templates/birthday_wishes.yaml
|
||||
- delay:
|
||||
minutes: 1
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: "Alexa, Sing Happy Birthday Song."
|
||||
greeting: "no"
|
||||
notify_options:
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
|
||||
- alias: Update Birthdays
|
||||
initial_state: true
|
||||
|
|
|
@ -108,7 +108,7 @@ switch:
|
|||
body_on: '{"state": "start"}'
|
||||
body_off: '{"state": "stop"}'
|
||||
is_on_template: '{{ value_json is not none and value_json.state == "running" }}'
|
||||
|
||||
|
||||
binary_sensor:
|
||||
- platform: hikvision
|
||||
name: Frontdoor Camera
|
||||
|
@ -348,7 +348,7 @@ automation:
|
|||
images:
|
||||
- "/config/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
||||
|
||||
- service: script.notify_me_with_picture
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
title: "Front Door Motion"
|
||||
message: >
|
||||
|
@ -363,8 +363,10 @@ automation:
|
|||
{% else %}
|
||||
Motion detected at the front door on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif %}
|
||||
file: "/config/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
||||
caption: "Front Door Motion"
|
||||
url: "/config/www/downloads/camera/frontdoor/frontdoor_latest.jpg"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- condition: template
|
||||
value_template: >
|
||||
|
@ -428,7 +430,7 @@ automation:
|
|||
{{ " detected in the driveway" }}
|
||||
{%- endif -%}
|
||||
|
||||
- service: script.notify_me_with_picture
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
title: "Driveway Motion"
|
||||
message: >
|
||||
|
@ -443,8 +445,10 @@ automation:
|
|||
{% else %}
|
||||
Motion detected at the driveway on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif -%}
|
||||
file: "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||
caption: "Driveway Motion"
|
||||
url: "/config/www/downloads/camera/driveway/driveway_latest.jpg"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- service: notify.notify_smtp
|
||||
data_template:
|
||||
|
@ -537,7 +541,7 @@ automation:
|
|||
{{ " detected in the garage." }}
|
||||
{%- endif -%}
|
||||
|
||||
- service: script.notify_me_with_picture
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
title: "Garage Motion"
|
||||
message: >
|
||||
|
@ -552,8 +556,10 @@ automation:
|
|||
{% else %}
|
||||
Motion detected in the garage on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif -%}
|
||||
file: "/config/www/downloads/camera/garage/garage_latest.jpg"
|
||||
caption: "Garage Motion"
|
||||
url: "/config/www/downloads/camera/garage/garage_latest.jpg"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- service: notify.notify_smtp
|
||||
data_template:
|
||||
|
@ -623,9 +629,9 @@ automation:
|
|||
{{ " detected in the backyard." }}
|
||||
{%- endif -%}
|
||||
|
||||
- service: script.notify_me_with_picture
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
title: "Backyardge Motion"
|
||||
title: "Backyard Motion"
|
||||
message: >
|
||||
{%- set e_id = "image_processing.doods_patio_camera" -%}
|
||||
{%- if state_attr(e_id, 'summary') -%}
|
||||
|
@ -638,8 +644,10 @@ automation:
|
|||
{% else %}
|
||||
Motion detected in the backyard on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please see the images below.
|
||||
{%- endif -%}
|
||||
file: "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||
caption: "Backyard Motion"
|
||||
url: "/config/www/downloads/camera/patio/patio_latest.jpg"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- service: notify.notify_smtp
|
||||
data_template:
|
||||
|
@ -854,7 +862,7 @@ automation:
|
|||
(states.binary_sensor.motion_sensor_158d00024e57fb.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
caption: "Garage"
|
||||
|
||||
|
||||
- service: notify.notify_smtp
|
||||
data_template:
|
||||
title: 'Driveway motion {{ now().strftime("%d %h %Y, %I:%M:%S %p") }}'
|
||||
|
@ -1238,4 +1246,4 @@ script:
|
|||
- service: input_label.set_value
|
||||
data_template:
|
||||
entity_id: input_label.current_stream
|
||||
value: "{{ name }}"
|
||||
value: "{{ name }}"
|
||||
|
|
|
@ -156,7 +156,7 @@ automation:
|
|||
# Turn outdoor lights on 15 minutes before sunset
|
||||
###############################################################################
|
||||
- alias: Evening Outdoor Lights ON (At Sunset)
|
||||
# initial_state: true
|
||||
# initial_state: true
|
||||
trigger:
|
||||
platform: sun
|
||||
event: sunset
|
||||
|
@ -315,9 +315,6 @@ automation:
|
|||
state: "on"
|
||||
action:
|
||||
- service: script.all_indoor_lights_off
|
||||
# - service: script.notify_me
|
||||
# data:
|
||||
# message: "It is bed time, turned lights off!"
|
||||
|
||||
###############################################################################
|
||||
# Provide Bed time Report via TTS
|
||||
|
@ -333,12 +330,11 @@ automation:
|
|||
action:
|
||||
- service: script.good_night_tts
|
||||
|
||||
###############################################################################
|
||||
# TOGGLE WORKING IN OFFICE BOOLEAN
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# TOGGLE WORKING IN OFFICE BOOLEAN
|
||||
###############################################################################
|
||||
|
||||
- alias: Suresh Working in Office Start
|
||||
- alias: Suresh Working in Office Start
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: time
|
||||
|
|
|
@ -77,7 +77,6 @@ binary_sensor:
|
|||
payload_off: "off"
|
||||
value_template: "{{ value }}"
|
||||
|
||||
|
||||
###############################################################################
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
|
@ -140,20 +139,10 @@ automation:
|
|||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.garage
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: >
|
||||
{% if trigger.to_state.state | lower == "on" %}
|
||||
{{ trigger.to_state.attributes.friendly_name }} is now OPENED!
|
||||
{% elif trigger.to_state.state | lower == "off" %}
|
||||
{{ trigger.to_state.attributes.friendly_name }} is now CLOSED!
|
||||
{% endif %}
|
||||
- service: script.led_message
|
||||
data_template:
|
||||
<<: *door_notification_script
|
||||
- service: script.voice_notify
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
<<: *door_notification_script
|
||||
notify_options: ["voice", "led", "tv"]
|
||||
- delay: "00:00:05"
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
|
@ -163,9 +152,9 @@ automation:
|
|||
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}"
|
||||
|
||||
- service: script.notify_me_with_picture
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
title: 'Garage Door Status {{ now().strftime("%d %h %Y, %I:%M:%S %p") }}'
|
||||
title: "{{ trigger.to_state.attributes.friendly_name }}: {{ 'OPEN' if trigger.to_state.state == 'on' else 'CLOSED' }}"
|
||||
message: >-
|
||||
{%- set doors = "" -%}
|
||||
{%- if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" and
|
||||
|
@ -181,11 +170,12 @@ automation:
|
|||
('Closed' if states('binary_sensor.door_window_sensor_158d0004231f7b') == 'off' else 'OPEN') %}
|
||||
{%- endif %}
|
||||
Your {{doors}} on {{ now().strftime("%d %h %Y, at %I:%M:%S %p") }}. Please check the garage snapshot below.
|
||||
file: >
|
||||
url: >
|
||||
{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||
((state_attr('automation.notify_garage_door_status', 'last_triggered') |string).replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg') }}
|
||||
caption: "{{ trigger.to_state.attributes.friendly_name }}: {{ 'OPEN' if trigger.to_state.state == 'on' else 'CLOSED' }}"
|
||||
notify_options:
|
||||
- telegram
|
||||
|
||||
- service: notify.notify_smtp
|
||||
data_template:
|
||||
|
@ -230,7 +220,7 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
||||
action:
|
||||
- service: script.voice_notify
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% if trigger.to_state.state | lower == "on" %}
|
||||
|
@ -242,21 +232,11 @@ automation:
|
|||
{% elif trigger.to_state.state | lower == "off" %}
|
||||
Your {{ trigger.to_state.attributes.friendly_name.replace('Sensor', '') }} is CLOSED!
|
||||
{% endif %}
|
||||
greeting: "no"
|
||||
only_at_night: >
|
||||
{% if states('alarm_control_panel.home') == 'armed_home' %}
|
||||
no
|
||||
{% else %}
|
||||
yes
|
||||
{% endif %}
|
||||
- service: script.led_message
|
||||
data_template:
|
||||
message: >
|
||||
{% if trigger.to_state.state | lower == "on" %}
|
||||
Your {{ trigger.to_state.attributes.friendly_name.replace('Sensor', '') |lower -}} is open.
|
||||
{% else %}
|
||||
Your {{ trigger.to_state.attributes.friendly_name.replace('Sensor', '') |lower -}} is closed.
|
||||
{% endif %}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- voice
|
||||
|
||||
- alias: When Front Door Opens Turn Front Room Lights ON
|
||||
initial_state: true
|
||||
|
@ -415,4 +395,4 @@ automation:
|
|||
state: "on"
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.guest_bathroom_lights
|
||||
entity_id: switch.guest_bathroom_lights
|
||||
|
|
|
@ -59,9 +59,13 @@ automation:
|
|||
data:
|
||||
message: "Today is {{ states('sensor.holiday') }}."
|
||||
title: "{{ states('sensor.holiday') }}"
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "Today is: {{states('sensor.holiday') }}"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
- alias: Notify Indian Holidays
|
||||
initial_state: true
|
||||
|
@ -91,7 +95,7 @@ automation:
|
|||
false
|
||||
{%- endif -%}
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >-
|
||||
{%- set days2NextEvent = 0 -%}
|
||||
|
@ -109,3 +113,7 @@ automation:
|
|||
{{ states.calendar.holidays_in_india.attributes.message | replace(".", "") | title }}. is day after tomorrow.
|
||||
{%- endif -%}
|
||||
{%- endif -%}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
|
|
@ -68,7 +68,7 @@ automation:
|
|||
entity_id: alarm_control_panel.home
|
||||
to: "triggered"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% set ns = namespace(openDoorCount=0, doorNames="") %}
|
||||
|
@ -81,15 +81,21 @@ automation:
|
|||
'binary_sensor.motion_sensor_158d000272bf48','binary_sensor.motion_sensor_158d000272bfd7','binary_sensor.motion_sensor_158d000464c25a',
|
||||
'binary_sensor.motion_sensor_158d00047b6f69'
|
||||
] -%}
|
||||
|
||||
|
||||
{%- for item in sensors if states(item) == "on" %}
|
||||
{% set ns.doorNames = ns.doorNames + state_attr(item, "friendly_name") + (", " if not loop.last else " ") %}
|
||||
{% set ns.openDoorCount = ns.openDoorCount + 1 %}
|
||||
{%- endfor %}
|
||||
|
||||
|
||||
Your Home Security System is triggered. {{ "But ALL Doors are CLOSED! Must be a spider on one of the sensor(s) triggered it!" if ns.openDoorCount == 0 else 'Following sensors are ON currently:' }}
|
||||
{{ ns.doorNames }}
|
||||
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- voice
|
||||
|
||||
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
entity_id: "camera.frontdoor_camera"
|
||||
|
@ -164,27 +170,15 @@ automation:
|
|||
condition:
|
||||
- condition: template
|
||||
value_template: "{{ states('input_boolean.security_system_alerts') == 'on' }}"
|
||||
# - condition: template
|
||||
# value_template: >
|
||||
# {%- if state_attr('automation.notify_home_security_status_change', 'last_triggered') -%}
|
||||
# {{ (as_timestamp(now()) - as_timestamp(state_attr('automation.notify_home_security_status_change', 'last_triggered'))) > 90 }}
|
||||
# {%- else -%}
|
||||
# true
|
||||
# {%- endif -%}
|
||||
- condition: template
|
||||
value_template: >
|
||||
{%- if state_attr('automation.notify_home_security_status_change', 'last_triggered') -%}
|
||||
{{ (as_timestamp(now()) - as_timestamp(state_attr('automation.notify_home_security_status_change', 'last_triggered'))) > 90 }}
|
||||
{%- else -%}
|
||||
true
|
||||
{%- endif -%}
|
||||
action:
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: >
|
||||
{% if states('alarm_control_panel.home') == "armed_home" %}
|
||||
Your home is now secured!
|
||||
{% elif states('alarm_control_panel.home') == "armed_away" %}
|
||||
Your Home Security System is now set to Away mode!
|
||||
{% elif states('alarm_control_panel.home') == "triggered" %}
|
||||
Attention!: Your Home Security System is triggered! It has been notified to the authorities.
|
||||
{% elif states('alarm_control_panel.home') == "disarmed" %}
|
||||
Attention!: Your Home Security System is turned OFF.
|
||||
{% endif %}
|
||||
- service: script.voice_notify
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% if states('alarm_control_panel.home') == "armed_home" %}
|
||||
|
@ -196,6 +190,12 @@ automation:
|
|||
{% elif states('alarm_control_panel.home') == "disarmed" %}
|
||||
Attention!: Your Home Security System is turned OFF.
|
||||
{% endif %}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- voice
|
||||
|
||||
- condition: template
|
||||
value_template: "{{ states('alarm_control_panel.home') != 'disarmed' }}"
|
||||
- service: input_boolean.turn_on
|
||||
|
@ -213,9 +213,12 @@ automation:
|
|||
for:
|
||||
minutes: 10
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: "Home Security System is OFF for more than 10 minutes!"
|
||||
notify_options:
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# A gentle reminder that the home security is OFF for more than 30 minutes
|
||||
|
@ -232,34 +235,12 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states('input_boolean.security_system_alerts') == 'on' }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: "Home Security System is OFF for more than 30 minutes!"
|
||||
|
||||
###############################################################################
|
||||
# When home security system is turned OFF or turned to Home mode from "away"
|
||||
# means, someone reached home from outside
|
||||
###############################################################################
|
||||
# - alias: Turn ON Thermostat upon reaching home
|
||||
# initial_state: true
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id: alarm_control_panel.home
|
||||
# condition:
|
||||
# - condition: template
|
||||
# value_template: >
|
||||
# {% if trigger.from_state.state == 'armed_away' and
|
||||
# (trigger.to_state.state == 'armed_home' or trigger.to_state.state == 'disarmed') %}
|
||||
# true
|
||||
# {% else %}
|
||||
# false
|
||||
# {% endif %}
|
||||
# action:
|
||||
# - service: climate.set_preset_mode
|
||||
# target:
|
||||
# entity_id: climate.dining_room
|
||||
# data:
|
||||
# preset_mode: "eco"
|
||||
notify_options:
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# TURN HOME SECURITY SYSTEM ON AT BED TIME
|
||||
|
@ -285,9 +266,13 @@ automation:
|
|||
- service: alarm_control_panel.alarm_arm_home
|
||||
data:
|
||||
entity_id: alarm_control_panel.home
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: "It's bedtime, you forgot to turn ON Home Security System. Turned it ON for you."
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# Check for Garage Door Status when Home Security System State changes
|
||||
|
@ -312,139 +297,20 @@ automation:
|
|||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.garage
|
||||
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: >
|
||||
Attention! Your home Security system is set to {{ states('alarm_control_panel.home').split('_')[1] | upper }} mode. BUT THE {% if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" -%}DOUBLE CAR {%- else %}SINGLE CAR {% endif %}GARAGE DOOR IS STILL OPEN!
|
||||
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
entity_id: "camera.garage"
|
||||
filename: "{{ '/config/www/downloads/camera/garage/garage_' ~ (state_attr('automation.home_security_system_and_garage_door_check','last_updated') ~ '').replace('-','_').replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
|
||||
- service: notify.telegram
|
||||
data_template:
|
||||
title: "Garage"
|
||||
message: "Home Security System is ON, but Garage Doors are OPEN!"
|
||||
data:
|
||||
photo:
|
||||
- file: "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
caption: "Garage"
|
||||
|
||||
- condition: template
|
||||
value_template: "{{ states('alarm_control_panel.home') == 'armed_home' }}"
|
||||
|
||||
- service: script.voice_notify
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{%- set doors = "" %}
|
||||
{%- if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" and states('binary_sensor.door_window_sensor_158d0004248d5b') == "on" %}
|
||||
{%- set doors = "Both garage doors" %}
|
||||
{%- elif states('binary_sensor.door_window_sensor_158d0004248d5b') == "on"%}
|
||||
{%- set doors = state_attr('binary_sensor.door_window_sensor_158d0004248d5b', 'friendly_name') %}
|
||||
{%- elif states('binary_sensor.door_window_sensor_158d0004248d5b') == "on" %}
|
||||
{%- set doors = state_attr('binary_sensor.door_window_sensor_158d0004231f7b', 'friendly_name') %}
|
||||
{%- endif %}
|
||||
Attention! Your home Security system is set to {{ states('alarm_control_panel.home').split('_')[1] | upper }} mode.
|
||||
BUT the {{ doors }} {{ 'are' if doors.endswith('s') else 'is' }} open.
|
||||
Attention! Your home Security system is set to {{ states('alarm_control_panel.home').split('_')[1] | upper }} mode. BUT THE {% if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" -%}DOUBLE CAR {%- else %}SINGLE CAR {% endif %}GARAGE DOOR IS STILL OPEN!
|
||||
url: "{{ '/config/www/downloads/camera/garage/garage_' ~
|
||||
(states.binary_sensor.motion_sensor_158d00024ee084.last_updated ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- voice
|
||||
|
||||
###############################################################################
|
||||
# Turn Home Security System ON at sunset time
|
||||
###############################################################################
|
||||
# - alias: Turn On Home Security System At Sunset
|
||||
# initial_state: true
|
||||
# trigger:
|
||||
# platform: sun
|
||||
# event: sunset
|
||||
# offset: '+00:00:00'
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: alarm_control_panel.home
|
||||
# state: 'disarmed'
|
||||
# action:
|
||||
# - service_template: >-
|
||||
# {% if states('binary_sensor.back_door_sensor_sensor') == "off" and
|
||||
# states('binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor') == "off" and
|
||||
# states('binary_sensor.door_window_sensor_158d0004231f7b') == "off" and
|
||||
# states('binary_sensor.door_window_sensor_158d0004248d5b') == "off" %}
|
||||
# alarm_control_panel.alarm_arm_home
|
||||
# {% else %}
|
||||
# alarm_control_panel.disarm
|
||||
# {% endif %}
|
||||
# data:
|
||||
# entity_id: alarm_control_panel.home
|
||||
# - service: script.voice_notify
|
||||
# data_template:
|
||||
# message: >
|
||||
# {% if states('binary_sensor.back_door_sensor_sensor') == "off" and
|
||||
# states('binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor') == "off" and
|
||||
# states('binary_sensor.door_window_sensor_158d0004231f7b') == "off" and
|
||||
# states('binary_sensor.door_window_sensor_158d0004248d5b') == "off" %}
|
||||
# It's getting dark outside, and your home security system is now set to HOME mode.
|
||||
# {% else %}
|
||||
# It is getting dark outside.
|
||||
# {%- if states('binary_sensor.back_door_sensor_sensor') == "on" -%}
|
||||
# {%- set doors = doors ~ " Back Door" -%}
|
||||
# {%- endif -%}
|
||||
# {%- if states('binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor') == "on" -%}
|
||||
# {% if doors | trim != "" %}
|
||||
# {%- set doors = doors ~ " and Front Door" -%}
|
||||
# {% else %}
|
||||
# {%- set doors = doors ~ " Front Door" -%}
|
||||
# {% endif %}
|
||||
# {%- endif -%}
|
||||
# {%- if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" -%}
|
||||
# {% if doors | trim != "" %}
|
||||
# {%- set doors = doors ~ " and Two Car Garage Door" -%}
|
||||
# {% else %}
|
||||
# {%- set doors = doors ~ " Two Car Garage Door" -%}
|
||||
# {% endif %}
|
||||
# {%- endif -%}
|
||||
# {%- if states('binary_sensor.door_window_sensor_158d0004248d5b') == "on" -%}
|
||||
# {% if doors | trim != "" %}
|
||||
# {%- set doors = doors ~ " and Single Car Garage Door" -%}
|
||||
# {% else %}
|
||||
# {%- set doors = doors ~ " Single Car Garage Door" -%}
|
||||
# {% endif %}
|
||||
# {%- endif -%}
|
||||
# Your{{ doors }} {%- if 'and' in doors -%}s are {%- else %} is {%- endif %} open. Home Security System could not be turned on.
|
||||
# {% endif %}
|
||||
# - service: script.notify_me
|
||||
# data_template:
|
||||
# message: >
|
||||
# {% if states('binary_sensor.back_door_sensor_sensor') == "off" and
|
||||
# states('binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor') == "off" and
|
||||
# states('binary_sensor.door_window_sensor_158d0004231f7b') == "off" and
|
||||
# states('binary_sensor.door_window_sensor_158d0004248d5b') == "off" %}
|
||||
# It's getting dark outside, and your home security system is now set to HOME mode.
|
||||
# {% else %}
|
||||
# It is getting dark outside.
|
||||
# {%- if states('binary_sensor.back_door_sensor_sensor') == "on" -%}
|
||||
# {%- set doors = doors ~ " Back Door" -%}
|
||||
# {%- endif -%}
|
||||
# {%- if states('binary_sensor.aeotec_zw120_door_window_sensor_gen5_sensor') == "on" -%}
|
||||
# {% if doors | trim != "" %}
|
||||
# {%- set doors = doors ~ " and Front Door" -%}
|
||||
# {% else %}
|
||||
# {%- set doors = doors ~ " Front Door" -%}
|
||||
# {% endif %}
|
||||
# {%- endif -%}
|
||||
# {%- if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" -%}
|
||||
# {% if doors | trim != "" %}
|
||||
# {%- set doors = doors ~ " and Two Car Garage Door" -%}
|
||||
# {% else %}
|
||||
# {%- set doors = doors ~ " Two Car Garage Door" -%}
|
||||
# {% endif %}
|
||||
# {%- endif -%}
|
||||
# {%- if states('binary_sensor.door_window_sensor_158d0004248d5b') == "on" -%}
|
||||
# {% if doors | trim != "" %}
|
||||
# {%- set doors = doors ~ " and Single Car Garage Door" -%}
|
||||
# {% else %}
|
||||
# {%- set doors = doors ~ " Single Car Garage Door" -%}
|
||||
# {% endif %}
|
||||
# {%- endif -%}
|
||||
# Your {{ doors}} {%- if 'and' in doors -%}s are {%- else %} is {%- endif %} open. Home Security System could not be turned on.
|
||||
# {% endif %}
|
||||
|
|
|
@ -4,20 +4,19 @@ automation:
|
|||
###############################################################################
|
||||
# Display Weather Information on LED Screen
|
||||
###############################################################################
|
||||
- alias: Display Weather Changes on LED Screen
|
||||
- alias: Notify Weather Changes
|
||||
initial_state: true
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.dark_sky_apparent_temperature, sensor.dark_sky_hourly_summary
|
||||
action:
|
||||
- service: script.led_message
|
||||
data_template:
|
||||
message: >
|
||||
{{ states('sensor.dark_sky_apparent_temperature') |int }} degrees, {{ states('sensor.dark_sky_hourly_summary') }}
|
||||
- service: script.notify_tv
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{{ states('sensor.dark_sky_apparent_temperature') |int }} degrees, {{ states('sensor.dark_sky_hourly_summary') }}
|
||||
notify_options:
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# Display Garage Door Status on LED Screen
|
||||
|
@ -37,25 +36,7 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states('input_boolean.garage_door_notifications') == 'on' }}"
|
||||
action:
|
||||
- service: script.led_message
|
||||
data_template:
|
||||
message: >
|
||||
{% set doors = "" %}
|
||||
{% if states('binary_sensor.door_window_sensor_158d0004231f7b') == "on" and
|
||||
states('binary_sensor.door_window_sensor_158d0004248d5b') == "on" %}
|
||||
{% set doors = "Attention! Both Garage Doors are OPEN" %}
|
||||
{% elif states('binary_sensor.door_window_sensor_158d0004231f7b') == "off" and
|
||||
states('binary_sensor.door_window_sensor_158d0004248d5b') == "off" %}
|
||||
{% set doors = "Both Garage Doors are now CLOSED" %}
|
||||
{% else %}
|
||||
{% if trigger.to_state.state | lower == "on" %}
|
||||
Attention! Your {{ trigger.to_state.attributes.friendly_name }} is now OPENED!
|
||||
{% elif trigger.to_state.state | lower == "off" %}
|
||||
Your {{ trigger.to_state.attributes.friendly_name }} is now CLOSED!
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{{ doors }}
|
||||
- service: script.notify_tv
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% set doors = "" %}
|
||||
|
@ -73,6 +54,10 @@ automation:
|
|||
{% endif %}
|
||||
{% endif %}
|
||||
{{ doors }}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# Display Zone based Messages on LED Screen
|
||||
|
@ -90,12 +75,12 @@ automation:
|
|||
to: "home"
|
||||
for: "00:02:00"
|
||||
action:
|
||||
- service: script.led_message
|
||||
data_template:
|
||||
message: "Welcome home, {{ trigger.entity_id.split('.')[1].split('_')[1] | title }}"
|
||||
- service: script.notify_tv
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "Welcome home, {{ trigger.entity_id.split('.')[1].split('_')[1] | title }}"
|
||||
notify_options:
|
||||
- tv
|
||||
- led
|
||||
|
||||
- alias: Alert When Someone Enters a Zone on LED Screen
|
||||
initial_state: true
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
homeassistant:
|
||||
customize:
|
||||
input_label.aeotec_zw120_door_window_sensor_gen5_sensor:
|
||||
unit_of_measurement: "count"
|
||||
input_label.back_door_sensor_sensor:
|
||||
unit_of_measurement: "count"
|
||||
input_label.basement_door_sensor_sensor:
|
||||
|
|
|
@ -37,27 +37,6 @@ nest:
|
|||
###############################################################################
|
||||
|
||||
automation:
|
||||
###############################################################################
|
||||
# Turn OFF AC after 3 hours of cooling
|
||||
# Where we live, 3 hours is plenty to cool the house down!
|
||||
###############################################################################
|
||||
- alias: Turn Off AC After 3 Hours of Cooling
|
||||
initial_state: true
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: climate.dining_room
|
||||
to: "cool"
|
||||
for: "03:00:00"
|
||||
action:
|
||||
- service: climate.set_away_mode
|
||||
data:
|
||||
entity_id: climate.dining_room
|
||||
away_mode: "true"
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: "Air Condition has been ON for 3 hours.
|
||||
Turning it Off to save power."
|
||||
|
||||
###############################################################################
|
||||
# Nest Thermostat automatically changes based on activity at home.
|
||||
# This automation is to keep an eye on what's going on with Nest
|
||||
|
@ -68,23 +47,11 @@ automation:
|
|||
- platform: state
|
||||
entity_id: sensor.dining_room_thermostat_operation_mode
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "Nest Thermostat changed from '{{ trigger.from_state.state }}' to '{{ trigger.to_state.state }}'."
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: >
|
||||
{% set state = trigger.to_state.state %}
|
||||
{% if state == "off" %}
|
||||
Your home's thermostat is switched off.
|
||||
{% elif state == "eco" %}
|
||||
Your home's thermostat is set to eco or away mode.
|
||||
{% elif state == "heat" %}
|
||||
Your central heating is ON.
|
||||
{% elif state == "cool" %}
|
||||
Your central air condition is switched ON
|
||||
{% elif state == "heat-cool" %}
|
||||
Your home's thermostat is set to automatic mode.
|
||||
{% else %}
|
||||
Your home's thermostat is set to {{ state }} mode.
|
||||
{% endif %}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- voice
|
||||
|
|
|
@ -53,15 +53,128 @@ tts:
|
|||
# Telegram Configuration
|
||||
#
|
||||
telegram_bot:
|
||||
# Setup Broadcast for sending messages
|
||||
- platform: broadcast
|
||||
api_key: !secret telegram_apikey
|
||||
allowed_chat_ids:
|
||||
- !secret telegram_chatid
|
||||
|
||||
# Add Polling
|
||||
- platform: polling
|
||||
api_key: !secret telegram_apikey
|
||||
parse_mode: html
|
||||
allowed_chat_ids:
|
||||
- !secret telegram_chatid
|
||||
|
||||
script:
|
||||
notify_family:
|
||||
sequence:
|
||||
- condition: template
|
||||
value_template: '{{ message | trim != "" }}'
|
||||
|
||||
- service: script.notify_on_led_screen
|
||||
data_template:
|
||||
message: "{{ message }}"
|
||||
notify_options: "{{ notify_options }}"
|
||||
|
||||
- service: script.notify_firestick
|
||||
data_template:
|
||||
url: "{{ url }}"
|
||||
title: "{{ title }}"
|
||||
message: "{{ message }}"
|
||||
notify_options: "{{ notify_options }}"
|
||||
|
||||
- service: script.notify_telegram
|
||||
data_template:
|
||||
file: "{{ url }}"
|
||||
title: "{{ title }}"
|
||||
message: "{{ message }}"
|
||||
notify_options: "{{ notify_options }}"
|
||||
|
||||
- service: script.notify_email
|
||||
data_template:
|
||||
title: "{{ title }}"
|
||||
message: "{{ message }}"
|
||||
notify_options: "{{ notify_options }}"
|
||||
|
||||
- service: script.notify_voice
|
||||
data_template:
|
||||
message: "{{ message }}"
|
||||
notify_options: "{{ notify_options }}"
|
||||
|
||||
###############################################################################
|
||||
# NOTIFY OPTIONS
|
||||
# 1. tv
|
||||
# 2. telegram
|
||||
# 3. led
|
||||
# 4. email
|
||||
# 5. voice
|
||||
###############################################################################
|
||||
|
||||
notify_firestick:
|
||||
sequence:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.firetv_alerts
|
||||
# state: "on"
|
||||
- condition: template
|
||||
value_template: "{{ 'tv' in notify_options }}"
|
||||
- service: notify.android_tv_fire_tv
|
||||
data:
|
||||
message: "{{ message }}"
|
||||
title: Mahasri Bot
|
||||
data:
|
||||
color: red
|
||||
duration: 7
|
||||
image:
|
||||
path: "{{ url }}" #/config/www/downloads/camera/driveway/driveway_20220604_185216.jpg
|
||||
icon:
|
||||
path: /config/www/{{- [ "suresh.jpg", "srinika.jpg", "mallika.jpg", "hasika.jpg" ] | random -}}
|
||||
|
||||
notify_telegram:
|
||||
sequence:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.text_alerts
|
||||
# state: "on"
|
||||
- condition: template
|
||||
value_template: "{{ 'telegram' in notify_options }}"
|
||||
- service: telegram_bot.send_message
|
||||
data:
|
||||
title: "{{- title -}}"
|
||||
message: "{{- message -}}"
|
||||
data:
|
||||
photo:
|
||||
- file: "{{- file -}}"
|
||||
caption: "{{- title -}}"
|
||||
|
||||
notify_email:
|
||||
sequence:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.email_alerts
|
||||
# state: "on"
|
||||
- condition: template
|
||||
value_template: "{{ 'email' in notify_options }}"
|
||||
- service: script.notify_smtp
|
||||
data_template:
|
||||
title: "{{ title }}"
|
||||
message: "{{ message }}"
|
||||
|
||||
notify_voice:
|
||||
sequence:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.voice_alerts
|
||||
# state: "on"
|
||||
- condition: template
|
||||
value_template: "{{ 'voice' in notify_options }}"
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: "{{ message }}"
|
||||
|
||||
notify_on_led_screen:
|
||||
sequence:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.led_alerts
|
||||
# state: "on"
|
||||
- condition: template
|
||||
value_template: "{{ 'led' in notify_options }}"
|
||||
- service: mqtt.publish
|
||||
data_template:
|
||||
topic: messageboard/messages
|
||||
payload: "{{ message }}"
|
||||
|
|
|
@ -117,3 +117,39 @@ automation:
|
|||
entity_id: timer.timer_pill_reminder
|
||||
action:
|
||||
- service_template: script.remind_pill
|
||||
|
||||
script:
|
||||
###############################################################################
|
||||
# Notifies to take pills, starts timer again!
|
||||
# Voice notifications at home - only if the option is selected.
|
||||
###############################################################################
|
||||
remind_pill:
|
||||
sequence:
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: "ALERT: PLEASE TAKE YOUR TABLETS!"
|
||||
notify_options:
|
||||
- telegram
|
||||
- service: timer.start
|
||||
entity_id: timer.timer_pill_reminder
|
||||
|
||||
###############################################################################
|
||||
# Stops timer, Records that the pills are taken, and notifies!
|
||||
###############################################################################
|
||||
pill_taken:
|
||||
sequence:
|
||||
- service: timer.cancel
|
||||
entity_id: timer.timer_pill_reminder
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.pill_taken
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
Thank you for taking tablets.
|
||||
{%- if state_attr('sensor.allergy_index_today', 'rating') != None %}
|
||||
{{- " Today's pollen level is : " ~ state_attr('sensor.allergy_index_today', 'rating') }}.
|
||||
{%- endif -%}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
|
|
@ -37,7 +37,7 @@ homeassistant:
|
|||
friendly_name: Drive 3 Status
|
||||
sensor.kalavala_nas_smart_status_drive_0_4:
|
||||
friendly_name: Drive 4 Status
|
||||
|
||||
|
||||
sensor.kalavala_nas_temperature_drive_0_1:
|
||||
friendly_name: Drive 1 Temperature
|
||||
sensor.kalavala_nas_temperature_drive_0_2:
|
||||
|
@ -78,16 +78,15 @@ sensor:
|
|||
- drive_smart_status
|
||||
- drive_temp
|
||||
|
||||
|
||||
# The following sensors are required, as the automations with trigger platform `numeric_state`,
|
||||
# above a certain value using `above: x` AND `for: 00:05:00` combination is not supported.
|
||||
#
|
||||
# Apparently `for:` is ONLY supportd for trigger platform 'state'
|
||||
#
|
||||
# By creating the folowing sensor, we can now have an automation with trigger platform as 'state'
|
||||
# with a combination of `to:` and `for:`
|
||||
#
|
||||
# See the automations 'Notify NAS Memory Usage' and 'Notify NAS CPU Usage' that uses these sensor values
|
||||
# The following sensors are required, as the automations with trigger platform `numeric_state`,
|
||||
# above a certain value using `above: x` AND `for: 00:05:00` combination is not supported.
|
||||
#
|
||||
# Apparently `for:` is ONLY supportd for trigger platform 'state'
|
||||
#
|
||||
# By creating the folowing sensor, we can now have an automation with trigger platform as 'state'
|
||||
# with a combination of `to:` and `for:`
|
||||
#
|
||||
# See the automations 'Notify NAS Memory Usage' and 'Notify NAS CPU Usage' that uses these sensor values
|
||||
|
||||
- platform: template
|
||||
sensors:
|
||||
|
@ -100,92 +99,106 @@ sensor:
|
|||
value_template: "{{ states('sensor.kalavala_nas_cpu_usage') | int > 80 }}"
|
||||
|
||||
###############################################################################
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||
#
|
||||
#
|
||||
###############################################################################
|
||||
automation:
|
||||
|
||||
- alias: Notify NAS Status Change
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- sensor.kalavala_nas_status
|
||||
entity_id:
|
||||
- sensor.kalavala_nas_status
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "NAS Status changed to: {{ trigger.to_state.state| upper }}"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- alias: Notify NAS Drive Status Change
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- sensor.kalavala_nas_smart_status_drive_01
|
||||
- sensor.kalavala_nas_smart_status_drive_02
|
||||
- sensor.kalavala_nas_smart_status_drive_03
|
||||
- sensor.kalavala_nas_smart_status_drive_04
|
||||
entity_id:
|
||||
- sensor.kalavala_nas_smart_status_drive_01
|
||||
- sensor.kalavala_nas_smart_status_drive_02
|
||||
- sensor.kalavala_nas_smart_status_drive_03
|
||||
- sensor.kalavala_nas_smart_status_drive_04
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
||||
value_template: "{{ trigger.from_state.state != trigger.to_state.state }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "NAS Drive state changed to:
|
||||
{{ trigger.to_state.state| upper }} from
|
||||
'{{ trigger.from_state.state| upper }}'"
|
||||
message: "NAS Drive state changed to: {{ trigger.to_state.state| upper }} from '{{ trigger.from_state.state| upper }}'"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- alias: Notify NAS CPU Temperature
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: numeric_state
|
||||
entity_id: sensor.kalavala_nas_cpu_temperature
|
||||
entity_id: sensor.kalavala_nas_cpu_temperature
|
||||
above: 125
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "NAS CPU temperature is going crazy hot, needs your attention!!!
|
||||
The current cpu temp is: {{ trigger.to_state.state }}"
|
||||
message: "NAS CPU temperature is going crazy hot, needs your attention!!! Current cpu temp is: {{ trigger.to_state.state }}"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- alias: Notify NAS Disk Usage
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: numeric_state
|
||||
entity_id: sensor.kalavala_nas_volume_used_datavol1
|
||||
entity_id: sensor.kalavala_nas_volume_used_datavol1
|
||||
above: 80
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "Attention! NAS disk usage is above 80 percent. Time to clean up?"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- alias: Notify NAS Memory Usage
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.nas_memory_usage_above_80
|
||||
to: 'True'
|
||||
for: '00:05:00'
|
||||
to: "True"
|
||||
for: "00:05:00"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "FYI - NAS Memory is above 80 percent for more than 5 minutes."
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
||||
- alias: Notify NAS CPU Usage
|
||||
initial_state: true
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.nas_cpu_usage_above_80
|
||||
to: 'True'
|
||||
for: '00:05:00'
|
||||
entity_id: sensor.nas_cpu_usage_above_80
|
||||
to: "True"
|
||||
for: "00:05:00"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "FYI - NAS CPU is above 80 percent for more than 5 minutes."
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
|
|
@ -127,7 +127,7 @@ sensor:
|
|||
{% set month = states.sensor.date_time.state.split(',')[0].split('-')[1] %}
|
||||
{% set date = states.sensor.date_time.state.split(',')[0].split('-')[2] %}
|
||||
{% set today = strptime(year ~ '-' ~ month ~ '-' ~ date , '%Y-%m-%d') %}
|
||||
{%- set pickupDay = states.sensor.trash_pickup_day.state | lower -%}
|
||||
{%- set pickupDay = states.sensor.trash_pickup_day.state | lower -%}
|
||||
{%- if as_timestamp(today)| timestamp_custom('%A', true) | lower == pickupDay -%}
|
||||
yes
|
||||
{%- else -%}
|
||||
|
@ -145,7 +145,7 @@ sensor:
|
|||
{% set year = states.sensor.date_time.state.split(',')[0].split('-')[0] %}
|
||||
{% set month = states.sensor.date_time.state.split(',')[0].split('-')[1] %}
|
||||
{% set date = states.sensor.date_time.state.split(',')[0].split('-')[2] %}
|
||||
{% set today = strptime(year ~ '-' ~ month ~ '-' ~ date , '%Y-%m-%d') %}
|
||||
{% set today = strptime(year ~ '-' ~ month ~ '-' ~ date , '%Y-%m-%d') %}
|
||||
{%- set pickupDay = states.sensor.recycle_pickup_day.state | lower -%}
|
||||
{% if states.input_select.recycle_pickup_week.state | lower == "even weeks" %}
|
||||
{%- set evenWeekPickup = "true" %}
|
||||
|
@ -154,7 +154,7 @@ sensor:
|
|||
{% endif %}
|
||||
{%- macro day_of_week(timestamp) -%}
|
||||
{{ as_timestamp(timestamp)| timestamp_custom('%A', true) | lower }}
|
||||
{%- endmacro %}
|
||||
{%- endmacro %}
|
||||
{%- macro week_number_of_year() -%}
|
||||
{{ as_timestamp(today) | timestamp_custom('%U', true) | int }}
|
||||
{%- endmacro %}
|
||||
|
@ -284,7 +284,7 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states('input_boolean.trash_reminders') == 'on' }}"
|
||||
- condition: template
|
||||
value_template: "{{ states('input_boolean.home_mode_away') == 'off' }}"
|
||||
value_template: "{{ states('input_boolean.home_mode_away') == 'off' }}"
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
|
@ -294,7 +294,7 @@ automation:
|
|||
entity_id: sensor.recycle_day
|
||||
state: "yes"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% if states.sensor.trash_day.state == "yes" and states.sensor.recycle_day.state == "yes" %}
|
||||
|
@ -304,18 +304,10 @@ automation:
|
|||
{% elif states.sensor.recycle_day.state == "yes" %}
|
||||
Attention!: Tomorrow is the Recycle Pickup day. Please don't forget to put the recycle bin outside tonight!
|
||||
{% endif %}
|
||||
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: >
|
||||
{% if states.sensor.trash_day.state == "yes" and states.sensor.recycle_day.state == "yes" %}
|
||||
Attention!: Tomorrow is the Trash and Recycle Pickup day.
|
||||
Please don't forget to leave Trash bin and recycle bin outside tonight!
|
||||
{% elif states.sensor.trash_day.state == "yes" %}
|
||||
Attention!: Tomorrow is the Trash Pickup day. Please don't forget to put the Trash bin outside tonight!
|
||||
{% elif states.sensor.recycle_day.state == "yes" %}
|
||||
Attention!: Tomorrow is the Recycle Pickup day. Please don't forget to put the recycle bin outside tonight!
|
||||
{% endif %}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
- alias: Reset Trash Reminders
|
||||
initial_state: true
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# @author : Mahasri Kalavala
|
||||
# @date : 09/20/2018
|
||||
# @package : scripts
|
||||
# @description : All my scripts are here in one place!
|
||||
# @description : All my scripts are here in one place. Well, not ALL!
|
||||
################################################################################
|
||||
# _____ _ _
|
||||
# / ____| (_) | |
|
||||
|
@ -83,10 +83,12 @@ script:
|
|||
- service: alarm_control_panel.alarm_arm_away
|
||||
data:
|
||||
entity_id: alarm_control_panel.home
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: >
|
||||
No one is at home. Cameras rolling, Indoor lights are OFF. Your home security system is turned ON!
|
||||
notify_options:
|
||||
- telegram
|
||||
|
||||
###############################################################################
|
||||
# The following script runs when no one is home. It excludes some lights
|
||||
|
@ -168,48 +170,6 @@ script:
|
|||
# |___/
|
||||
# Notify Related Scripts
|
||||
###############################################################################
|
||||
notify_me_with_picture:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.text_alerts
|
||||
state: "on"
|
||||
- condition: template
|
||||
value_template: '{{- message | trim != "" -}}'
|
||||
- service: telegram_bot.send_message
|
||||
data:
|
||||
title: "{{- title -}}"
|
||||
message: "{{- message -}}"
|
||||
data:
|
||||
photo:
|
||||
- file: "{{- file -}}"
|
||||
caption: "{{- caption -}}"
|
||||
|
||||
notify_tv:
|
||||
sequence:
|
||||
- service: notify.android_tv_fire_tv
|
||||
data:
|
||||
message: "{{ message }}"
|
||||
title: Mahasri Bot
|
||||
data:
|
||||
color: red
|
||||
duration: 7
|
||||
transparency: 1%
|
||||
icon:
|
||||
path: /config/www/{{- [ "suresh.jpg", "srinika.jpg", "mallika.jpg", "hasika.jpg" ] | random -}}
|
||||
|
||||
notify_me:
|
||||
sequence:
|
||||
- condition: state
|
||||
entity_id: input_boolean.text_alerts
|
||||
state: "on"
|
||||
- condition: template
|
||||
value_template: '{{ message | trim != "" }}'
|
||||
- service: telegram_bot.send_message
|
||||
data:
|
||||
message: "{{ message }}"
|
||||
- service: script.notify_tv
|
||||
data:
|
||||
message: "{{ message }}"
|
||||
|
||||
good_night_tts:
|
||||
sequence:
|
||||
|
@ -338,44 +298,3 @@ script:
|
|||
data_template:
|
||||
topic: messageboard/messages
|
||||
payload: "{{ message }}"
|
||||
|
||||
###############################################################################
|
||||
# Notifies to take pills, starts timer again!
|
||||
# Voice notifications at home - only if the option is selected.
|
||||
###############################################################################
|
||||
remind_pill:
|
||||
sequence:
|
||||
- service: script.notify_me
|
||||
data:
|
||||
message: "ALERT: PLEASE TAKE YOUR TABLETS!"
|
||||
- service: timer.start
|
||||
entity_id: timer.timer_pill_reminder
|
||||
- condition: template
|
||||
value_template: "{{ states('input_boolean.pill_voice_notification') == 'on' }}"
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: >
|
||||
Please take the tablets. It looks like you have forgotten to take today's
|
||||
dose of tablets... Once again, this is a reminder for you to take the tablets.
|
||||
|
||||
###############################################################################
|
||||
# Stops timer, Records that the pills are taken, and notifies!
|
||||
###############################################################################
|
||||
pill_taken:
|
||||
sequence:
|
||||
- service: timer.cancel
|
||||
entity_id: timer.timer_pill_reminder
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.pill_taken
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: >
|
||||
Thank you for taking tablets.
|
||||
{%- if state_attr('sensor.allergy_index_today', 'rating') != None %}
|
||||
{{- " Today's pollen level is : " ~ state_attr('sensor.allergy_index_today', 'rating') }}.
|
||||
{%- endif -%}
|
||||
- condition: template
|
||||
value_template: "{{ states('input_boolean.pill_voice_notification') == 'on' }}"
|
||||
- service: script.voice_notify
|
||||
data:
|
||||
message: "Thank you for taking tablets on time!"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#########################################################################################
|
||||
# @Author: Suresh Kalavala
|
||||
# @Date: 09/13/2017
|
||||
# @Description: This Season sensor is used in the voice notifications to notify of Pollen
|
||||
# @Description: This Season sensor is used in the voice notifications to notify of Pollen
|
||||
# levels ONLY during Spring - because I am allergic to spring pollen ;)
|
||||
# There you have it!!!
|
||||
#
|
||||
|
@ -11,16 +11,15 @@
|
|||
homeassistant:
|
||||
|
||||
###############################################################################
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# _ _ _
|
||||
# /\ | | | | (_)
|
||||
# / \ _ _| |_ ___ _ __ ___ __ _| |_ _ ___ _ __ ___
|
||||
# / /\ \| | | | __/ _ \| '_ ` _ \ / _` | __| |/ _ \| '_ \/ __|
|
||||
# / ____ \ |_| | || (_) | | | | | | (_| | |_| | (_) | | | \__ \
|
||||
# /_/ \_\__,_|\__\___/|_| |_| |_|\__,_|\__|_|\___/|_| |_|___/
|
||||
#
|
||||
#
|
||||
###############################################################################
|
||||
automation:
|
||||
|
||||
- alias: Season Change Notification
|
||||
initial_state: true
|
||||
trigger:
|
||||
|
@ -30,7 +29,10 @@ automation:
|
|||
- condition: template
|
||||
value_template: '{{ trigger.from_state.state | lower != "unknown" }}'
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
Good bye {{ trigger.from_state.state }}, and Say Hello to {{ trigger.to_state.state }}!
|
||||
message: >
|
||||
Good bye {{ trigger.from_state.state }}, and Say Hello to {{ trigger.to_state.state }}!
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
|
|
|
@ -116,7 +116,7 @@ input_number:
|
|||
step: 5
|
||||
mode: box
|
||||
|
||||
######################### CLOSET LIGHTS
|
||||
######################### CLOSET LIGHTS
|
||||
hasika_bedroom_closet_lights:
|
||||
name: Hasika Closet Lights Duration
|
||||
min: 5
|
||||
|
@ -128,7 +128,7 @@ input_number:
|
|||
min: 5
|
||||
max: 120
|
||||
step: 5
|
||||
mode: box
|
||||
mode: box
|
||||
|
||||
sensor:
|
||||
- platform: template
|
||||
|
@ -331,9 +331,11 @@ automation:
|
|||
- platform: state
|
||||
entity_id: input_boolean.do_not_disturb
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "The Do Not Disturb Mode is {{ trigger.to_state.state |upper }}."
|
||||
notify_options:
|
||||
- led
|
||||
|
||||
# Hourly Reports
|
||||
######################################################
|
||||
|
|
|
@ -32,9 +32,12 @@ automation:
|
|||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: "It has been two hours, are you still working in the garage? Changing the status to 'Not working'!"
|
||||
message: "It has been two hours, are you still working in the garage?"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.working_in_garage
|
||||
|
||||
|
@ -61,18 +64,15 @@ automation:
|
|||
entity_id: input_boolean.light_automations
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: >
|
||||
Your {{ trigger.to_state.attributes.friendly_name }} is OPEN for more than 5 minutes!
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: >
|
||||
Attention! Your {{ trigger.to_state.attributes.friendly_name }} is open for more than 5 minutes.
|
||||
- service: script.led_message
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
Your {{ trigger.to_state.attributes.friendly_name }} is OPEN for more than 5 minutes!
|
||||
notify_options:
|
||||
- telegram
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
|
||||
# Outdoor Lights:
|
||||
# Keeps and eye on the patio and backyard lights...
|
||||
|
@ -98,10 +98,14 @@ automation:
|
|||
- service: switch.turn_off
|
||||
data_template:
|
||||
entity_id: "{{ trigger.entity_id }}"
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{{ trigger.to_state.attributes.friendly_name }} is ON during the day time. Saving power by turning it off!
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
# General Watch Dog automation:
|
||||
# Keeps and eye on the lights & switches, turns off after 10 PM if they are on.
|
||||
|
@ -265,10 +269,9 @@ automation:
|
|||
data_template:
|
||||
entity_id: "{{ trigger.entity_id }}"
|
||||
|
||||
|
||||
#############################################################################
|
||||
# CLOSET LIGHTS WATCH DOG
|
||||
#############################################################################
|
||||
#############################################################################
|
||||
# CLOSET LIGHTS WATCH DOG
|
||||
#############################################################################
|
||||
|
||||
- alias: Srinika Bedroom Closet WatchDog
|
||||
initial_state: true
|
||||
|
@ -305,114 +308,3 @@ automation:
|
|||
- service: homeassistant.turn_off
|
||||
data_template:
|
||||
entity_id: "{{ trigger.entity_id }}"
|
||||
|
||||
- alias: Notify Plex User Status
|
||||
initial_state: true
|
||||
trigger:
|
||||
# - platform: numeric_state
|
||||
# entity_id: sensor.plex_mahasri_nas
|
||||
# above: 0
|
||||
# for:
|
||||
# minutes: 2
|
||||
- platform: state
|
||||
entity_id:
|
||||
- media_player.plex_adi_bh_plex_for_roku_roku3
|
||||
- media_player.plex_adi_bh_plex_for_roku_rokuultra
|
||||
- media_player.plex_prade5_plex_for_roku_roku_express
|
||||
to: 'playing'
|
||||
for:
|
||||
minutes: 2
|
||||
action:
|
||||
- service: script.notify_me
|
||||
data_template:
|
||||
message: >-
|
||||
{%- set tag_map = {'adi.bh':'Adi', 'prade5':'Pradeep'} -%}
|
||||
{% for item in states.media_player if item.state == 'playing' and state_attr(item.entity_id, 'media_title') != None
|
||||
and state_attr(item.entity_id, 'username') != 'kalavala'
|
||||
and tag_map[state_attr(item.entity_id, 'username')] |trim != '' %}
|
||||
|
||||
{{ tag_map[state_attr(item.entity_id, 'username')] }} is watching {% if state_attr(item.entity_id, 'media_content_type') == "movie" -%}
|
||||
{{ "a movie, " + state_attr(item.entity_id, 'media_title') |title }}
|
||||
{% endif %}
|
||||
{%- if state_attr(item.entity_id, 'media_content_type') == "tvshow" %}
|
||||
TV Show - {{ state_attr(item.entity_id, 'media_series_title') }}
|
||||
Season: {{ state_attr(item.entity_id, 'media_season') }}, Episode: {{ state_attr(item.entity_id, 'media_episode') }} ({{ state_attr(item.entity_id, 'media_title') }})
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
# - alias: Lights And Switches WatchDog 10 Min
|
||||
# initial_state: true
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id:
|
||||
# - switch.guest_bathroom_exhaust
|
||||
# - switch.master_bathroom_toilet_exhaust
|
||||
# to: "on"
|
||||
# for:
|
||||
# minutes: 10
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.light_automations
|
||||
# state: "on"
|
||||
# action:
|
||||
# - service: homeassistant.turn_off
|
||||
# data_template:
|
||||
# entity_id: "{{ trigger.entity_id }}"
|
||||
|
||||
#
|
||||
# Main master Bathoom has more CFM to vent out... keep it for 20 minutes
|
||||
#
|
||||
# - alias: Lights And Switches WatchDog 20 Min
|
||||
# initial_state: true
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id:
|
||||
# - switch.master_bathroom_shower_exhaust
|
||||
# to: "on"
|
||||
# for:
|
||||
# minutes: 20
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.light_automations
|
||||
# state: "on"
|
||||
# action:
|
||||
# - service: homeassistant.turn_off
|
||||
# data_template:
|
||||
# entity_id: "{{ trigger.entity_id }}"
|
||||
|
||||
# - alias: Lights And Switches WatchDog 30 Min
|
||||
# initial_state: true
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id:
|
||||
# - switch.guest_bathroom_lights
|
||||
# - switch.master_bathroom_toilet_light
|
||||
# to: "on"
|
||||
# for:
|
||||
# minutes: 30
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.light_automations
|
||||
# state: "on"
|
||||
# action:
|
||||
# - service: homeassistant.turn_off
|
||||
# data_template:
|
||||
# entity_id: "{{ trigger.entity_id }}"
|
||||
|
||||
# - alias: Lights And Switches WatchDog 45 Min
|
||||
# initial_state: true
|
||||
# trigger:
|
||||
# - platform: state
|
||||
# entity_id:
|
||||
# - switch.garage_shop_lights
|
||||
# to: "on"
|
||||
# for:
|
||||
# minutes: 45
|
||||
# condition:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.light_automations
|
||||
# state: "on"
|
||||
# action:
|
||||
# - service: homeassistant.turn_off
|
||||
# data_template:
|
||||
# entity_id: "{{ trigger.entity_id }}"
|
|
@ -101,11 +101,11 @@ binary_sensor:
|
|||
good_weather_to_fly_drones:
|
||||
friendly_name: Good Weather To Fly Drone?
|
||||
value_template: >-
|
||||
{% if states.sensor.dark_sky_wind_speed.state | round(0) | int > 12 or
|
||||
states.sensor.dark_sky_precip.state |lower == "rain" or
|
||||
{% if states.sensor.dark_sky_wind_speed.state | round(0) | int > 12 or
|
||||
states.sensor.dark_sky_precip.state |lower == "rain" or
|
||||
states.sensor.dark_sky_precip.state |lower == "snow" or
|
||||
states.sensor.dark_sky_visibility.state | round(0) | int < 2 or
|
||||
states.sensor.dark_sky_temperature.state | round(0) | int < 32 or
|
||||
states.sensor.dark_sky_visibility.state | round(0) | int < 2 or
|
||||
states.sensor.dark_sky_temperature.state | round(0) | int < 32 or
|
||||
states.sensor.dark_sky_cloud_coverage.state | round(0) | int > 30 %}
|
||||
false
|
||||
{% else %}
|
||||
|
@ -192,7 +192,7 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{% if states.sensor.dark_sky_wind_speed.state | round < 8 %} false {% else %} true {% endif %}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% set windspeed = states.sensor.dark_sky_wind_speed.state | round %}
|
||||
|
@ -207,6 +207,10 @@ automation:
|
|||
{% elif ( windspeed > 60 ) and (states.input_boolean.hurricane_wind_alert.state == 'off') %}
|
||||
HURRICANE WINDS. FIND SHELTER, AND STAY INDOORS!
|
||||
{% endif %}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- service: input_boolean.turn_on
|
||||
data_template:
|
||||
entity_id: >-
|
||||
|
@ -283,15 +287,19 @@ automation:
|
|||
true
|
||||
{%- endif -%}
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{% set windspeed = states.sensor.dark_sky_wind_speed.state | round %}
|
||||
{% if ( windspeed > 40 ) and ( windspeed <= 60 ) and (states.input_boolean.super_heavy_wind_alert.state == 'off') %}
|
||||
Warning! Wind speed is {{windspeed}} MPH. FIND SHELTER IMMEDIATELY!
|
||||
Warning! Wind speed is {{windspeed}} MPH. FIND SHELTER IMMEDIATELY!
|
||||
{% elif ( windspeed > 60 ) and ( windspeed <= 100 ) and (states.input_boolean.hurricane_wind_alert.state == 'off') %}
|
||||
HURRICANE WINDS. FIND SHELTER, AND STAY INDOORS! DO NOT GO OUT AND RISK YOUR LIFE!
|
||||
{% endif %}
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
|
||||
- alias: Rain Alerts
|
||||
initial_state: true
|
||||
|
@ -309,12 +317,13 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states.sensor.dark_sky_precip_probability.state | int == 1 }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "{{ trigger.to_state.state | title }} with intensity {{ states.sensor.dark_sky_precip_intensity.state | float }} inches per hour"
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: "{{ trigger.to_state.state }} with intensity {{ states.sensor.dark_sky_precip_intensity.state | float}} inches per hour"
|
||||
notify_options:
|
||||
- telegram
|
||||
- tv
|
||||
- led
|
||||
- service: input_boolean.turn_on
|
||||
data_template:
|
||||
entity_id: >
|
||||
|
@ -339,12 +348,14 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states.sensor.dark_sky_precip_probability.state | int == 1 }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "{{ trigger.to_state.state | title }} with intensity {{ states.sensor.dark_sky_precip_intensity.state | float }} inches per hour"
|
||||
- service: script.voice_notify
|
||||
data_template:
|
||||
message: "{{ trigger.to_state.state }} with intensity {{ states.sensor.dark_sky_precip_intensity.state | float}} inches per hour"
|
||||
notify_options:
|
||||
- telegram
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
- service: input_boolean.turn_on
|
||||
data_template:
|
||||
entity_id: >
|
||||
|
|
|
@ -473,9 +473,14 @@ script:
|
|||
|
||||
doorbell_camera_pics:
|
||||
sequence:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data:
|
||||
message: "ALERT! Someone is at the front door!"
|
||||
notify_options:
|
||||
- telegram
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
- service: camera.snapshot
|
||||
data_template:
|
||||
entity_id: "camera.frontdoor_camera"
|
||||
|
@ -489,7 +494,7 @@ script:
|
|||
filename:
|
||||
"{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||
(state_attr('script.doorbell_camera_pics', 'last_triggered') ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
- service: notify.telegram
|
||||
data_template:
|
||||
title: "Door Bell"
|
||||
|
@ -503,4 +508,13 @@ script:
|
|||
- file: "{{ '/config/www/downloads/camera/driveway/driveway_' ~
|
||||
(state_attr('script.doorbell_camera_pics', 'last_triggered') ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
caption: "Someone rang door bell!"
|
||||
caption: "Someone rang door bell!"
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: Someone rang door bell!
|
||||
url: "{{ '/config/www/downloads/camera/frontdoor/frontdoor_' ~
|
||||
(state_attr('script.doorbell_camera_pics', 'last_triggered') ~ '').replace('-','_')
|
||||
.replace(' ', '_').replace(':','_').replace('.','_').replace('+','_') ~ '.jpg' }}"
|
||||
notify_options:
|
||||
- tv
|
||||
- led
|
||||
|
|
|
@ -53,15 +53,15 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states('input_boolean.zone_alerts') == 'on' }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
{{ 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('_')[1] | title}} just entered {{ trigger.zone.attributes.friendly_name }}!
|
||||
greeting: "no"
|
||||
notify_options:
|
||||
- telegram
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
|
||||
- alias: Alert When Someone Leaves a Zone
|
||||
initial_state: true
|
||||
|
@ -78,17 +78,14 @@ automation:
|
|||
- condition: template
|
||||
value_template: "{{ states('input_boolean.zone_alerts') == 'on' }}"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
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('_')[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') | int) + 5 }} minutes.
|
||||
{% endif %}
|
||||
greeting: "no"
|
||||
notify_options:
|
||||
- telegram
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
|
||||
###############################################################################
|
||||
# Welcome family members when they come home
|
||||
|
@ -110,15 +107,14 @@ automation:
|
|||
entity_id: input_boolean.zone_alerts
|
||||
state: "on"
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: >
|
||||
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('_')[1] | lower }}!"
|
||||
greeting: "no"
|
||||
notify_options:
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.home_mode_away
|
||||
- service: switch.turn_on
|
||||
|
@ -165,11 +161,16 @@ automation:
|
|||
- condition: template
|
||||
value_template: '{{ states.proximity.home.attributes.dir_of_travel == "towards" }}'
|
||||
action:
|
||||
- service: script.notify_me
|
||||
- service: script.notify_family
|
||||
data_template:
|
||||
message: "Suresh is on his way home, he is within the 5 miles range. Should be home soon!"
|
||||
notify_options:
|
||||
- telegram
|
||||
- voice
|
||||
- tv
|
||||
- led
|
||||
|
||||
####################################################################################
|
||||
####################################################################################
|
||||
- alias: Srinika Left Home
|
||||
initial_state: true
|
||||
trigger:
|
||||
|
@ -188,7 +189,7 @@ automation:
|
|||
- switch.srinika_bedroom_closet
|
||||
- switch.srinika_bedroom_accent_lights
|
||||
|
||||
####################################################################################
|
||||
####################################################################################
|
||||
- alias: Hasika Left Home
|
||||
initial_state: true
|
||||
trigger:
|
||||
|
|
Loading…
Reference in New Issue