mysmarthome/packages/emergency.yaml

289 lines
11 KiB
YAML

# ###############################################################################
# # @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!"
# # # 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: Disable Emergency Mode Upon Disabling Home Security
# initial_state: true
# trigger:
# platform: state
# entity_id: alarm_control_panel.home
# to: 'disarmed'
# condition:
# - condition: template
# value_template: "{{ states('input_boolean.emergency_mode') == '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.home.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!"
# script:
# # 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.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_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