Home-AssistantConfig/packages/alarm.yaml

306 lines
8.5 KiB
YAML
Executable File

#-------------------------------------------
# ALarm Related Packages
# @CCOSTAN
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
#-------------------------------------------
homeassistant:
customize_glob:
"device_tracker.nodemcu*":
icon: mdi:chip
emulated_hue_hidden: True
hidden: True
"sensor.nodemcu*":
icon: mdi:alarm-bell
emulated_hue_hidden: True
hidden: False
"binary_sensor.mcu?_gpio*":
icon: mdi:security-home
emulated_hue_hidden: True
hidden: False
customize:
binary_sensor.MCU1_GPIO4:
friendly_name: 'Paige Window'
binary_sensor.MCU1_GPIO5:
friendly_name: 'Front Door'
binary_sensor.MCU1_GPIO10:
friendly_name: 'Dining Room Windows'
binary_sensor.MCU1_GPIO12:
friendly_name: 'Interior Garage Door'
binary_sensor.MCU1_GPIO13:
friendly_name: 'Front Den Windows'
binary_sensor.MCU1_GPIO14:
friendly_name: 'Office Window'
binary_sensor.MCU2_GPIO4:
friendly_name: 'Dinette Windows'
binary_sensor.MCU2_GPIO5:
friendly_name: 'Back Door'
binary_sensor.MCU2_GPIO9:
friendly_name: 'Master Slider'
binary_sensor.MCU2_GPIO10:
friendly_name: 'Master Bathroom Window'
binary_sensor.MCU2_GPIO12:
friendly_name: 'Main Slider'
binary_sensor.MCU2_GPIO13:
friendly_name: 'Upstairs Bedroom Window'
binary_sensor.MCU2_GPIO14:
friendly_name: 'Justin Window'
binary_sensor.MCU3_GPIO4:
friendly_name: 'Stacey Bedroom Window'
binary_sensor.MCU3_GPIO5:
friendly_name: 'Carlo Bedroom Window'
binary_sensor.MCU3_GPIO10:
friendly_name: 'Master Bedroom Window'
binary_sensor.MCU3_GPIO14:
friendly_name: 'Upstairs Windows'
binary_sensor.MCU3_Light:
friendly_name: 'Panel Door'
group.entry_points:
friendly_name: Alarm Entry Points
homebridge_hidden: true
group.interior_door:
friendly_name: Interior doors
homebridge_hidden: true
#-------------------------------------------
binary_sensor:
- platform: mqtt
state_topic: "NodeMCU1/GPIO4/Status"
name: "MCU1_GPIO4"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU1/GPIO5/Status"
name: "MCU1_GPIO5"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU1/GPIO10/Status"
name: "MCU1_GPIO10"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU1/GPIO12/Status"
name: "MCU1_GPIO12"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU1/GPIO13/Status"
name: "MCU1_GPIO13"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU1/GPIO14/Status"
name: "MCU1_GPIO14"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO4/Status"
name: "MCU2_GPIO4"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO5/Status"
name: "MCU2_GPIO5"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO9/Status"
name: "MCU2_GPIO9"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO10/Status"
name: "MCU2_GPIO10"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO12/Status"
name: "MCU2_GPIO12"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO13/Status"
name: "MCU2_GPIO13"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU2/GPIO14/Status"
name: "MCU2_GPIO14"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU3/GPIO4/Status"
name: "MCU3_GPIO4"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU3/GPIO5/Status"
name: "MCU3_GPIO5"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU3/GPIO10/Status"
name: "MCU3_GPIO10"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU3/GPIO14/Status"
name: "MCU3_GPIO14"
payload_on: 1
payload_off: 0
device_class: opening
- platform: mqtt
state_topic: "NodeMCU3/Light/Status"
name: "MCU3_Light"
payload_on: 1
payload_off: 0
device_class: opening
# input_boolean:
# elephant:
# name: Elephant
# initial: off
#-------------------------------------------
sensor:
- platform: template
sensors:
nodemcu1:
friendly_name: 'NodeMCU1'
value_template: "{{ 'Online' if is_state('device_tracker.NodeMCU1', 'home') else 'Offline' }}"
- platform: template
sensors:
nodemcu2:
friendly_name: 'NodeMCU2'
value_template: "{{ 'Online' if is_state('device_tracker.NodeMCU2', 'home') else 'Offline' }}"
- platform: template
sensors:
nodemcu3:
friendly_name: 'NodeMCU3'
value_template: "{{ 'Online' if is_state('device_tracker.NodeMCU3', 'home') else 'Offline' }}"
#-------------------------------------------
group:
entry_points:
entities:
- binary_sensor.MCU1_GPIO4
- binary_sensor.MCU1_GPIO5
- binary_sensor.MCU1_GPIO10
- binary_sensor.MCU1_GPIO12
- binary_sensor.MCU1_GPIO13
- binary_sensor.MCU1_GPIO14
- binary_sensor.MCU2_GPIO4
- binary_sensor.MCU2_GPIO5
- binary_sensor.MCU2_GPIO9
- binary_sensor.MCU2_GPIO10
- binary_sensor.MCU2_GPIO12
- binary_sensor.MCU2_GPIO13
- binary_sensor.MCU2_GPIO14
- binary_sensor.MCU2_GPIO15
- binary_sensor.MCU3_GPIO4
- binary_sensor.MCU3_GPIO5
- binary_sensor.MCU3_GPIO10
- binary_sensor.MCU3_GPIO14
# interior_door: - Moved out to Doors Group.
# entities:
# - binary_sensor.kitchen_door_opened
# - binary_sensor.MCU3_Light
#-------------------------------------------#-------------------------------------------
automation:
- alias: 'Turn off HVAC in window/door is opened'
trigger:
- platform: state
entity_id:
- binary_sensor.MCU1_GPIO4
- binary_sensor.MCU1_GPIO5
- binary_sensor.MCU1_GPIO10
- binary_sensor.MCU1_GPIO12
- binary_sensor.MCU1_GPIO13
- binary_sensor.MCU1_GPIO14
- binary_sensor.MCU2_GPIO4
- binary_sensor.MCU2_GPIO5
- binary_sensor.MCU2_GPIO9
- binary_sensor.MCU2_GPIO10
- binary_sensor.MCU2_GPIO12
- binary_sensor.MCU2_GPIO13
- binary_sensor.MCU2_GPIO14
- binary_sensor.MCU3_GPIO4
- binary_sensor.MCU3_GPIO5
- binary_sensor.MCU3_GPIO10
- binary_sensor.MCU3_GPIO14
to: 'on'
from: 'off'
for:
minutes: 5
condition:
- condition: template
value_template: "{{ states('climate.downstairs') != 'off' }}"
action:
- service: climate.set_operation_mode
data:
entity_id: climate.downstairs
operation_mode: 'off'
- service: script.speech_engine
data_template:
value1: "The {{ trigger.to_state.attributes.friendly_name }} has been opened for about 5 minutes. I will shut down the Air Conditioner so you can enjoy the fresh air."
call_outside_weather: 1
call_inside_weather: 1
#-------------------------------------------#-------------------------------------------
- alias: 'Turn HVAC back on when all doors/windows are closed.'
trigger:
- platform: state
entity_id:
- group.entry_points
to: 'off'
from: 'on'
for:
minutes: 5
condition:
- condition: template
value_template: "{{ states('climate.downstairs') == 'off' }}"
action:
- service: climate.set_operation_mode
data:
entity_id: climate.downstairs
operation_mode: 'auto'
#-------------------------------------------#---
- alias: "Panel Door opened"
hide_entity: True
trigger:
- platform: state
entity_id:
- binary_sensor.MCU3_Light
to: 'off'
from: 'on'
action:
- service: script.notify_engine
data_template:
value1: 'Someone has opened up the Alarm Panel Door!'