initial commit
This commit is contained in:
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
secrets.yaml
|
292
configuration.yaml
Normal file
292
configuration.yaml
Normal file
@ -0,0 +1,292 @@
|
||||
automation: !include_dir_merge_list configuration/automation
|
||||
|
||||
# Loads default set of integrations. Do not remove.
|
||||
default_config:
|
||||
|
||||
mobile_app:
|
||||
ios:
|
||||
|
||||
# Load frontend themes from the themes folder
|
||||
frontend:
|
||||
themes: !include_dir_merge_named themes
|
||||
|
||||
script: !include scripts.yaml
|
||||
|
||||
####################################################################################################
|
||||
### CAMERAS #################################################################### DEVICES ###
|
||||
####################################################################################################
|
||||
camera: !include_dir_merge_list configuration/camera
|
||||
|
||||
####################################################################################################
|
||||
### FANS ####################################################################### DEVICES ###
|
||||
####################################################################################################
|
||||
fan: !include_dir_merge_list configuration/fan
|
||||
|
||||
homeassistant:
|
||||
name: !secret system_name
|
||||
latitude: !secret system_latitude
|
||||
longitude: !secret system_longitude
|
||||
elevation: !secret system_elevation
|
||||
unit_system: metric
|
||||
time_zone: !secret system_timezone
|
||||
external_url: https://house.savin.nyc
|
||||
internal_url: https://house.savin.nyc
|
||||
|
||||
####################################################################################################
|
||||
### AUTHENTICATION PROVIDERS ####################################################### AAA ###
|
||||
####################################################################################################
|
||||
auth_providers:
|
||||
- type: homeassistant
|
||||
# - type: trusted_networks
|
||||
# trusted_networks:
|
||||
# - !secret trusted_network_01
|
||||
# - !secret trusted_network_02
|
||||
# - !secret trusted_network_03
|
||||
# - !secret trusted_network_04
|
||||
# - fd00::/8
|
||||
# - ::ffff:959a:a7c9/32
|
||||
# trusted_users:
|
||||
# 10.10.12.0/24:
|
||||
# - !secret trusted_user_id_01
|
||||
# - !secret trusted_user_id_02
|
||||
# 10.10.14.0/24:
|
||||
# - !secret trusted_user_id_01
|
||||
# - !secret trusted_user_id_02
|
||||
# 10.10.16.0/24:
|
||||
# - !secret trusted_user_id_01
|
||||
# - !secret trusted_user_id_02
|
||||
# # - type: legacy_api_password
|
||||
|
||||
####################################################################################################
|
||||
### HASSIO DOCKER PATH STARTS FROM /config ######################################## NOTE ###
|
||||
####################################################################################################
|
||||
allowlist_external_dirs:
|
||||
# - '/config/snapshots'
|
||||
- '/config/www'
|
||||
customize: !include_dir_merge_named configuration/customize
|
||||
|
||||
####################################################################################################
|
||||
### HTTP #######################################################################################
|
||||
####################################################################################################
|
||||
http:
|
||||
# api_password: !secret system_http_api
|
||||
cors_allowed_origins:
|
||||
- https://google.com
|
||||
- https://www.home-assistant.io
|
||||
- https://telegram.org
|
||||
- https://house.savin.nyc
|
||||
use_x_forwarded_for: true
|
||||
trusted_proxies:
|
||||
- 10.10.10.10
|
||||
- 10.10.11.11
|
||||
# - !secret trusted_proxy_01
|
||||
# ip_ban_enabled: true
|
||||
# login_attempts_threshold: 5
|
||||
|
||||
####################################################################################################
|
||||
### INPUT BOOLEAN ############################################################# SETTINGS ###
|
||||
####################################################################################################
|
||||
input_boolean: !include_dir_merge_named configuration/input_boolean
|
||||
|
||||
####################################################################################################
|
||||
### INPUT DATE TIME ########################################################### SETTINGS ###
|
||||
####################################################################################################
|
||||
input_datetime: !include_dir_merge_named configuration/input_datetime
|
||||
|
||||
####################################################################################################
|
||||
### INPUT NUMBERS ############################################################# SETTINGS ###
|
||||
####################################################################################################
|
||||
input_number: !include_dir_merge_named configuration/input_number
|
||||
|
||||
####################################################################################################
|
||||
### INPUT SELECT ############################################################## SETTINGS ###
|
||||
####################################################################################################
|
||||
input_select: !include_dir_merge_named configuration/input_select
|
||||
|
||||
####################################################################################################
|
||||
### INPUT TEXT ################################################################ SETTINGS ###
|
||||
####################################################################################################
|
||||
input_text: !include_dir_merge_named configuration/input_text
|
||||
|
||||
light: !include_dir_merge_list configuration/light
|
||||
|
||||
#logger:
|
||||
# default: info
|
||||
# logs:
|
||||
# custom_components.: critical
|
||||
|
||||
####################################################################################################
|
||||
### LOVELACE ################################################################### SERVICE ###
|
||||
####################################################################################################
|
||||
lovelace:
|
||||
mode: yaml
|
||||
##################################################################################################
|
||||
### CUSTOM MODULES ######################################################### RESOURCES ###
|
||||
##################################################################################################
|
||||
##################################################################################################
|
||||
### CUSTOM MODULES ######################################################### RESOURCES ###
|
||||
##################################################################################################
|
||||
resources:
|
||||
- url: /local/community/webrtc/webrtc-camera.js
|
||||
type: module
|
||||
- url: /local/community/layout-card/layout-card.js
|
||||
type: module
|
||||
- url: /local/community/xiaomi-vacuum-map-card/xiaomi-vacuum-map-card.js
|
||||
type: module
|
||||
- url: /local/community/mini-graph-card/mini-graph-card-bundle.js
|
||||
type: module
|
||||
- url: /local/community/apexcharts-card/apexcharts-card.js
|
||||
type: module
|
||||
- url: /local/community/sidebar-card/sidebar-card.js
|
||||
type: module
|
||||
- url: /local/community/flipdown-timer-card/flipdown-timer-card.js
|
||||
type: module
|
||||
- url: /local/community/mini-media-player-card/mini-media-player-bundle.js
|
||||
type: module
|
||||
- url: /local/community/fold-entity-row/fold-entity-row.js
|
||||
type: module
|
||||
- url: /local/community/button-card/button-card.js
|
||||
type: module
|
||||
- url: /local/community/simple-thermostat-card/simple-thermostat.js
|
||||
type: module
|
||||
- url: /local/community/mushroom-card/mushroom.js
|
||||
type: module
|
||||
- url: /local/community/auto-entities/auto-entities.js
|
||||
type: module
|
||||
- url: /local/community/stack-in-card/stack-in-card.js
|
||||
type: module
|
||||
- url: /local/community/paper-buttons-row-card/paper-buttons-row.js
|
||||
type: module
|
||||
- url: /local/community/card-mod/card-mod.js
|
||||
type: module
|
||||
- url: /local/community/collapsable-cards/collapsable-cards.js
|
||||
type: module
|
||||
- url: /local/community/swipe-navigation/swipe-navigation.js
|
||||
type: module
|
||||
- url: /local/community/local-conditional-card/local-conditional-card.js
|
||||
type: module
|
||||
- url: /local/community/bubble-card/bubble-card.js
|
||||
type: module
|
||||
- url: /local/community/plotly-graph-card/plotly-graph-card.js
|
||||
type: module
|
||||
- url: /local/community/better-thermostat-ui-card/better-thermostat-ui-card.js
|
||||
type: module
|
||||
- url: /local/community/config-template-card/config-template-card.js
|
||||
type: module
|
||||
- url: /local/community/battery-state-card/battery-state-card.js
|
||||
type: module
|
||||
- url: /local/community/auto-entities-card/auto-entities.js
|
||||
type: module
|
||||
- url: /local/community/sonos-card/custom-sonos-card.js
|
||||
type: module
|
||||
# - url: /local/community/hass-bha-icons/hass-bha-icons.js
|
||||
# type: js
|
||||
# - url: /local/community//.js
|
||||
# type: module
|
||||
|
||||
####################################################################################################
|
||||
### MEDIA PLAYER ############################################################### DEVICES ###
|
||||
####################################################################################################
|
||||
media_player: !include_dir_merge_list configuration/media_player
|
||||
|
||||
####################################################################################################
|
||||
### NOTIFY ##################################################################### SERVICE ###
|
||||
####################################################################################################
|
||||
notify: !include_dir_merge_list configuration/notify
|
||||
|
||||
####################################################################################################
|
||||
### MQTT ####################################################################### SENSORS ###
|
||||
####################################################################################################
|
||||
mqtt: !include_dir_merge_named configuration/mqtt
|
||||
|
||||
####################################################################################################
|
||||
### PYTHON SCRIPTS #############################################################################
|
||||
####################################################################################################
|
||||
python_script:
|
||||
|
||||
####################################################################################################
|
||||
### RECORDER ###################################################################################
|
||||
####################################################################################################
|
||||
recorder: !include configuration/recorder/postgres.yml
|
||||
|
||||
rest_command: !include_dir_merge_named configuration/rest-command
|
||||
|
||||
####################################################################################################
|
||||
### SCENE ###################################################################### SERVICE ###
|
||||
####################################################################################################
|
||||
scene: !include_dir_merge_list configuration/scene
|
||||
|
||||
####################################################################################################
|
||||
### SENSORS #################################################################### DEVICES ###
|
||||
####################################################################################################
|
||||
sensor: !include_dir_merge_list configuration/sensor
|
||||
|
||||
####################################################################################################
|
||||
### SHELL COMMMAND ############################################################ SERVICES ###
|
||||
####################################################################################################
|
||||
shell_command: !include_dir_merge_named configuration/shell_command
|
||||
|
||||
####################################################################################################
|
||||
### SSDP ##################################################################### DISCOVERY ###
|
||||
####################################################################################################
|
||||
ssdp:
|
||||
|
||||
####################################################################################################
|
||||
### STREAM ##################################################################### SERVICE ###
|
||||
####################################################################################################
|
||||
stream:
|
||||
|
||||
####################################################################################################
|
||||
### SUN ######################################################################### SENSOR ###
|
||||
####################################################################################################
|
||||
sun:
|
||||
|
||||
####################################################################################################
|
||||
### SWITCHES ################################################################### DEVICES ###
|
||||
####################################################################################################
|
||||
switch: !include_dir_merge_list configuration/switch
|
||||
|
||||
####################################################################################################
|
||||
### SYSTEM HEALTH ############################################################## SERVICE ###
|
||||
####################################################################################################
|
||||
system_health:
|
||||
|
||||
####################################################################################################
|
||||
### TELEGRAM ################################################################### SERVICE ###
|
||||
####################################################################################################
|
||||
telegram_bot: !include configuration/service/telegram.yaml
|
||||
|
||||
####################################################################################################
|
||||
### TIMER ###################################################################### SERVICE ###
|
||||
####################################################################################################
|
||||
# timer: !include_dir_merge_named configuration/timer
|
||||
|
||||
####################################################################################################
|
||||
### TWILIO #################################################################### SERVICES ###
|
||||
####################################################################################################
|
||||
twilio: !include configuration/service/twilio.yaml
|
||||
|
||||
####################################################################################################
|
||||
### UTILITY METER ############################################################## SENSORS ###
|
||||
####################################################################################################
|
||||
utility_meter: !include_dir_merge_named configuration/utility_meter
|
||||
|
||||
####################################################################################################
|
||||
### WEATHER #################################################################### DEVICES ###
|
||||
####################################################################################################
|
||||
weather: !include_dir_merge_list configuration/weather
|
||||
|
||||
####################################################################################################
|
||||
### WEBHOOK ####################################################################################
|
||||
####################################################################################################
|
||||
webhook:
|
||||
|
||||
####################################################################################################
|
||||
### ZEROCONF ################################################################# DISCOVERY ###
|
||||
####################################################################################################
|
||||
zeroconf:
|
||||
|
||||
####################################################################################################
|
||||
### ZONES ######################################################################################
|
||||
####################################################################################################
|
||||
zone: !include_dir_merge_list configuration/zone
|
32
configuration/automation/.android_tv_sources
Normal file
32
configuration/automation/.android_tv_sources
Normal file
@ -0,0 +1,32 @@
|
||||
Google Cast
|
||||
com.android.systemui
|
||||
com.google.android.katniss:interactor
|
||||
com.google.android.ext.services
|
||||
com.nvidia.blakepairing
|
||||
com.dolby.android.audio.service
|
||||
com.nvidia.shieldtech.accessoryui
|
||||
com.nvidia.shield.remote.server
|
||||
com.nvidia.osc
|
||||
com.nvidia.app.messaging
|
||||
com.android.providers.media.module
|
||||
com.google.android.partnersetup
|
||||
com.nvidia.shield.ask
|
||||
com.google.android.katniss:search
|
||||
Live Channels
|
||||
com.google.android.tv:common
|
||||
com.plexapp.mediaserver.smb
|
||||
Netflix
|
||||
Play Movies & TV
|
||||
com.google.process.gservices
|
||||
Play Store
|
||||
com.google.android.inputmethod.latin
|
||||
Android TV Launcher
|
||||
com.plexapp.mediaserver.smb:sambaserver
|
||||
com.google.android.gms
|
||||
com.google.android.gms.persistent
|
||||
Prime Video
|
||||
com.android.providers.tv
|
||||
com.pecana.iptvextremepro
|
||||
com.google.android.tv.remote.service
|
||||
com.google.android.tvrecommendations
|
||||
com.google.android.youtube.tv
|
42
configuration/automation/.learn_ir_broadlink
Normal file
42
configuration/automation/.learn_ir_broadlink
Normal file
@ -0,0 +1,42 @@
|
||||
action: remote.learn_command
|
||||
data:
|
||||
device: projector_lg_hu810pw
|
||||
command: Power Off
|
||||
command_type: ir
|
||||
target:
|
||||
entity_id: remote.broadlink_rm4_mini
|
||||
|
||||
|
||||
- action: remote.send_command
|
||||
target:
|
||||
entity_id: remote.bedroom
|
||||
data:
|
||||
device: television
|
||||
command: power
|
||||
|
||||
action: remote.send_command
|
||||
target:
|
||||
entity_id: remote.broadlink_rm4_mini
|
||||
data:
|
||||
device: projector_lg_hu810pw
|
||||
command: "Power On"
|
||||
|
||||
|
||||
action: remote.send_command
|
||||
target:
|
||||
entity_id: remote.broadlink_rm4_mini
|
||||
data:
|
||||
device: projector_lg_hu810pw
|
||||
command:
|
||||
- "Power On"
|
||||
- "b64:JgBUABITERQSNhISEhMSEhISEhITNhM2EhITNRM2EjcTNRM2EhITERMREzcSEhISExETERM2EjcTNhISEjYTNRM3EjYTAAUAAAEhRxIADBMAASFIEgANBQ=="
|
||||
|
||||
action: remote.send_command
|
||||
target:
|
||||
entity_id: remote.broadlink_rm4_mini
|
||||
data:
|
||||
device: projector_lg_hu810pw
|
||||
command:
|
||||
- "Power Off"
|
||||
- "b64:JgBYAAABII8TERMSEjcTERMRExISEhISEjYTNxISEjYTNhI2EjcTNhISEhITERM1ExITEhISExETNhI2EjcTERM2EjYTNhI3EgAFAAABIUgSAAwTAAEhRxMADQU="
|
||||
|
41
configuration/automation/.new
Normal file
41
configuration/automation/.new
Normal file
@ -0,0 +1,41 @@
|
||||
- id: test_id
|
||||
alias: HassTurnOn/Off with Duration
|
||||
description: ""
|
||||
trigger:
|
||||
- platform: conversation
|
||||
command:
|
||||
- "[turn] on [{area} {name}|{name} [in {area}]] for {time}"
|
||||
- "[turn] [{area} {name}|{name} [in {area}]] [to] on for {time}"
|
||||
id: "on"
|
||||
- platform: conversation
|
||||
command:
|
||||
- "turn off [{area} {name}|{name} [in {area}]] for {time}"
|
||||
- "[turn] [{area} {name}|{name} [in {area}]] [to] off for {time}"
|
||||
id: "off"
|
||||
condition: []
|
||||
action:
|
||||
- service: conversation.process
|
||||
data:
|
||||
text: "{{ trigger.sentence|replace(trigger.slots.time,'')|replace('for', '')|trim }}"
|
||||
agent_id: conversation.home_assistant
|
||||
- variables:
|
||||
step_2: "{{ 'off' if trigger.id|bool else 'on'}}"
|
||||
- delay:
|
||||
milliseconds: 250
|
||||
- service: conversation.process
|
||||
data:
|
||||
agent_id: conversation.home_assistant
|
||||
text: |
|
||||
{{ trigger.sentence|replace('turn on','turn '~step_2)|replace('turn off','turn '~step_2)
|
||||
|replace('on for',step_2~' in')|replace('off for',step_2~' in')|replace('for', 'in')|trim }}
|
||||
mode: single
|
||||
|
||||
|
||||
service: media_player.play_media
|
||||
target:
|
||||
entity_id: media_player.onju_voice_02_onju_voice_02
|
||||
data:
|
||||
announce: true
|
||||
media_content_id: >-
|
||||
https://soundboardguy.com/wp-content/uploads/2022/09/we-are-the-champions-copia.mp3
|
||||
media_content_type: audio/mpeg
|
91
configuration/automation/.templates
Normal file
91
configuration/automation/.templates
Normal file
@ -0,0 +1,91 @@
|
||||
{{ label_entities(label_id('external')) | expand | map(attribute='entity_id') | select('in', label_entities("door")) | list }}
|
||||
|
||||
{{ trigger.to_state.attributes.friendly_name }}
|
||||
|
||||
# Get Area Name by Triggered EntityID
|
||||
{{ area_name(trigger.entity_id) }}
|
||||
|
||||
{{ states.binary_sensor | selectattr('entity_id','in',area_entities('Living Room')) | selectattr('attributes.device_class', 'eq', 'window') | selectattr('state','eq', 'off') | list }}
|
||||
|
||||
{{ expand(area_entities('Dining') | select('match', 'light')) | selectattr('state', 'eq', 'on') | selectattr('attributes.hs_color', 'defined') | map(attribute='entity_id') | list }}
|
||||
|
||||
{{ device_entities('67326e6412f365984dbd6cc8e9546d3e') | expand | map(attribute='entity_id') | select('match','switch.*conversation') | list }}
|
||||
|
||||
|
||||
{{ integration_entities('tasmota') | map('device_id') | list }}
|
||||
|
||||
{{ data.messages | map(attribute="content") | list | last }}
|
||||
|
||||
# Get Device Name
|
||||
{{ device_attr('67326e6412f365984dbd6cc8e9546d3e', 'name') }}
|
||||
|
||||
# Get Device Name by User
|
||||
{{ device_attr('67326e6412f365984dbd6cc8e9546d3e', 'name_by_user') }}
|
||||
|
||||
|
||||
{% set entities = device_entities('67326e6412f365984dbd6cc8e9546d3e') | expand | map(attribute='entity_id') | list %}
|
||||
{%- for e in entities %}
|
||||
{%- if 'switch' in e and 'continued' in e %}
|
||||
{{e}}
|
||||
{%- endif %}
|
||||
{%- endfor %}
|
||||
|
||||
|
||||
{%- set t = data.messages | map(attribute="content") | list | last -%}
|
||||
{%- set a = namespace(value=false) -%}
|
||||
{%- for w in ['need', 'confirm', '?'] -%}
|
||||
{%- if w in t -%}
|
||||
{%- set a.value=true -%}
|
||||
{%- endif -%}
|
||||
{%- endfor -%}
|
||||
{{ a.value }}
|
||||
|
||||
{% set my_list = ["apple", "banana", "cherry"] %} {% set first_letters = my_list | map('first') | join('') %} {{ first_letters }}
|
||||
|
||||
|
||||
{% set ns = namespace(domains=[]) %}
|
||||
{%- for s in states -%}
|
||||
{%- set ns.domains = (ns.domains + [s.domain])|unique|list -%}
|
||||
{%- endfor %}
|
||||
I have {{ states|length }} states in Home Assistant.
|
||||
By domain these are;
|
||||
{%- for domain in ns.domains %}
|
||||
- {{ states[domain]|length }} {{ domain }}
|
||||
{%- endfor %}
|
||||
|
||||
I have 1698 states in Home Assistant.
|
||||
By domain these are;
|
||||
- 4 person
|
||||
- 43 update
|
||||
- 295 binary_sensor
|
||||
- 2 stt
|
||||
- 3 tts
|
||||
- 24 scene
|
||||
- 52 light
|
||||
- 5 script
|
||||
- 43 input_number
|
||||
- 34 input_boolean
|
||||
- 7 input_select
|
||||
- 12 zone
|
||||
- 579 sensor
|
||||
- 1 conversation
|
||||
- 38 media_player
|
||||
- 1 sun
|
||||
- 5 input_text
|
||||
- 2 input_datetime
|
||||
- 18 camera
|
||||
- 163 button
|
||||
- 61 select
|
||||
- 62 switch
|
||||
- 44 number
|
||||
- 5 fan
|
||||
- 4 todo
|
||||
- 1 weather
|
||||
- 1 remote
|
||||
- 8 device_tracker
|
||||
- 54 event
|
||||
- 1 vacuum
|
||||
- 2 cover
|
||||
- 2 lock
|
||||
- 121 automation
|
||||
- 1 climate
|
34
configuration/automation/alert_garage_cover_moving.yaml
Normal file
34
configuration/automation/alert_garage_cover_moving.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- id: garage_alert_on_on_door_is_moving
|
||||
alias: '[Garage] Alert ON on Cover Moves'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: cover.garage_gate
|
||||
to: 'opening'
|
||||
- platform: state
|
||||
entity_id: cover.garage_gate
|
||||
to: 'closing'
|
||||
action:
|
||||
- service: lifx.effect_pulse
|
||||
data:
|
||||
entity_id: light.garage_gate_01
|
||||
brightness: 255
|
||||
rgb_color: [255, 0, 0]
|
||||
mode: strobe
|
||||
cycles: 150
|
||||
|
||||
- id: garage_alert_off_on_door_is_stopped
|
||||
alias: '[Garage] Alert OFF on Cover Stopes'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: cover.garage_gate
|
||||
to: 'open'
|
||||
- platform: state
|
||||
entity_id: cover.garage_gate
|
||||
to: 'closed'
|
||||
action:
|
||||
- service: lifx.effect_stop
|
||||
data:
|
||||
entity_id: light.garage_gate_01
|
74
configuration/automation/alert_lock_right_code.yaml
Normal file
74
configuration/automation/alert_lock_right_code.yaml
Normal file
@ -0,0 +1,74 @@
|
||||
---
|
||||
- id: lock_alert_on_on_entered_correct_code
|
||||
alias: '[Lock] Alert ON on Entered Correct Code'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
# condition:
|
||||
# - condition: template
|
||||
# value_template: "{{ trigger.to_state.state in ['','not_home'] }}"
|
||||
- platform: state
|
||||
entity_id: sensor.lock_01_alarm_type
|
||||
to: '19'
|
||||
action:
|
||||
- parallel:
|
||||
- service: lifx.effect_pulse
|
||||
data:
|
||||
entity_id:
|
||||
- light.porch_01
|
||||
- light.garage_gate_01
|
||||
- light.backyard_01
|
||||
brightness: 255
|
||||
rgb_color: [0, 255, 0]
|
||||
mode: strobe
|
||||
- service: zwave_js.bulk_set_partial_config_parameters
|
||||
target:
|
||||
entity_id: switch.switch_kitchen_01
|
||||
data:
|
||||
parameter: '8'
|
||||
value: 67045970
|
||||
- delay:
|
||||
seconds: 10
|
||||
- service: zwave_js.bulk_set_partial_config_parameters
|
||||
target:
|
||||
entity_id: switch.switch_kitchen_01
|
||||
data:
|
||||
parameter: '8'
|
||||
value: 65536
|
||||
mode: single
|
||||
|
||||
- id: lock_alert_on_on_locking_by_keypad
|
||||
alias: '[Lock] Alert ON on Locking by Keypad'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.lock_01_alarm_type
|
||||
to: '18'
|
||||
# condition:
|
||||
# - condition: template
|
||||
# value_template: "{{ trigger.to_state.state in ['18','25'] }}"
|
||||
action:
|
||||
- parallel:
|
||||
- service: lifx.effect_pulse
|
||||
data:
|
||||
entity_id:
|
||||
- light.porch_01
|
||||
- light.garage_gate_01
|
||||
- light.backyard_01
|
||||
brightness: 255
|
||||
rgb_color: [0, 0, 255]
|
||||
mode: strobe
|
||||
- service: zwave_js.bulk_set_partial_config_parameters
|
||||
target:
|
||||
entity_id: switch.switch_kitchen_01
|
||||
data:
|
||||
parameter: '8'
|
||||
value: 33491456
|
||||
- delay:
|
||||
seconds: 10
|
||||
- service: zwave_js.bulk_set_partial_config_parameters
|
||||
target:
|
||||
entity_id: switch.switch_kitchen_01
|
||||
data:
|
||||
parameter: '8'
|
||||
value: 65536
|
||||
mode: single
|
2
configuration/automation/alert_person_on_driveway.yaml
Normal file
2
configuration/automation/alert_person_on_driveway.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
---
|
||||
# doorbell_person_detected
|
54
configuration/automation/app_humidity_suppression.yaml
Normal file
54
configuration/automation/app_humidity_suppression.yaml
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
- id: app_humidity_suppression_on
|
||||
alias: '[App] Humidity Suppression ON'
|
||||
initial_state: 'true'
|
||||
condition:
|
||||
- and:
|
||||
- condition: state
|
||||
entity_id: input_boolean.app_climate_humidity_suppression_status
|
||||
state: 'on'
|
||||
- condition: time
|
||||
after: input_datetime.app_humidity_suppression_time_start
|
||||
before: input_datetime.app_humidity_suppression_time_end
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id:
|
||||
- sensor.climate_bathroom_master_01_humidity
|
||||
- sensor.climate_bathroom_bedroom_01_humidity
|
||||
- sensor.climate_bathroom_living_01_humidity
|
||||
above: input_number.app_climate_humidity_suppression_humidity_level
|
||||
action:
|
||||
- service: fan.turn_on
|
||||
target:
|
||||
entity_id: |-
|
||||
{% if area_id(trigger.entity_id) in label_areas('bathroom') -%}
|
||||
{{ area_entities(area_name(trigger.entity_id)) | select('match', 'fan') | list | first }}
|
||||
{%- endif %}
|
||||
# - fan.bathroom_master
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Humidity suppression has started in {{ area_name(trigger.entity_id) }} ({{ area_id(trigger.entity_id) }})'
|
||||
|
||||
- id: app_humidity_suppression_off
|
||||
alias: '[App] Humidity Suppression OFF'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: time
|
||||
at: input_datetime.app_humidity_suppression_time_end
|
||||
- platform: numeric_state
|
||||
entity_id:
|
||||
- sensor.climate_bathroom_master_01_humidity
|
||||
- sensor.climate_bathroom_bedroom_01_humidity
|
||||
- sensor.climate_bathroom_living_01_humidity
|
||||
below: input_number.app_climate_humidity_suppression_humidity_level
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
target:
|
||||
entity_id: |-
|
||||
{% if area_id(trigger.entity_id) in label_areas('bathroom') -%}
|
||||
{{ area_entities(area_name(trigger.entity_id)) | select('match', 'fan') | list | first }}
|
||||
{%- endif %}
|
||||
# - fan.bathroom_master
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Humidity suppression has done in {{ area_name(trigger.entity_id) }} ({{ area_id(trigger.entity_id) }})'
|
79
configuration/automation/app_telegram_test.yaml
Normal file
79
configuration/automation/app_telegram_test.yaml
Normal file
@ -0,0 +1,79 @@
|
||||
---
|
||||
#Unhandled update: Update(my_chat_member=ChatMemberUpdated(chat=Chat(api_kwargs={'all_members_are_administrators': True}, id=-4514608626, title='Reciepts', type=<ChatType.GROUP>), date=datetime.datetime(2024, 9, 29, 21, 24, 28, tzinfo=<UTC>), from_user=User(first_name='Alexander', id=67239746, is_bot=False, language_code='en', last_name='Savin', username='alex_savin'), new_chat_member=ChatMemberMember(status=<ChatMemberStatus.MEMBER>, user=User(first_name='Home Assistant', id=503378800, is_bot=True, username='home_assistant_savin_bot')), old_chat_member=ChatMemberLeft(status=<ChatMemberStatus.LEFT>, user=User(first_name='Home Assistant', id=503378800, is_bot=True, username='home_assistant_savin_bot'))), update_id=211080293)
|
||||
#Unhandled update: Update(my_chat_member=ChatMemberUpdated(chat=Chat(id=-1002373778311, title='Reciepts', type=<ChatType.SUPERGROUP>), date=datetime.datetime(2024, 9, 29, 21, 25, 14, tzinfo=<UTC>), from_user=User(first_name='Alexander', id=67239746, is_bot=False, language_code='en', last_name='Savin', username='alex_savin'), new_chat_member=ChatMemberMember(status=<ChatMemberStatus.MEMBER>, user=User(first_name='Home Assistant', id=503378800, is_bot=True, username='home_assistant_savin_bot')), old_chat_member=ChatMemberLeft(status=<ChatMemberStatus.LEFT>, user=User(first_name='Home Assistant', id=503378800, is_bot=True, username='home_assistant_savin_bot'))), update_id=211080294)
|
||||
#Unhandled update: Update(my_chat_member=ChatMemberUpdated(chat=Chat(id=-1002373778311, title='Reciepts', type=<ChatType.SUPERGROUP>), date=datetime.datetime(2024, 9, 29, 21, 25, 14, tzinfo=<UTC>), from_user=User(first_name='Alexander', id=67239746, is_bot=False, language_code='en', last_name='Savin', username='alex_savin'), new_chat_member=ChatMemberAdministrator(api_kwargs={'can_manage_voice_chats': True}, can_be_edited=False, can_change_info=True, can_delete_messages=True, can_delete_stories=True, can_edit_stories=True, can_invite_users=False, can_manage_chat=True, can_manage_topics=True, can_manage_video_chats=True, can_pin_messages=True, can_post_stories=True, can_promote_members=False, can_restrict_members=False, is_anonymous=False, status=<ChatMemberStatus.ADMINISTRATOR>, user=User(first_name='Home Assistant', id=503378800, is_bot=True, username='home_assistant_savin_bot')), old_chat_member=ChatMemberMember(status=<ChatMemberStatus.MEMBER>, user=User(first_name='Home Assistant', id=503378800, is_bot=True, username='home_assistant_savin_bot'))), update_id=211080297)
|
||||
|
||||
#- alias: 'Telegram bot turn on lamp'
|
||||
# trigger:
|
||||
# platform: event
|
||||
# event_type: telegram_command
|
||||
# event_data:
|
||||
# command: '/lamp-on'
|
||||
# action:
|
||||
# service: light.turn_on
|
||||
# entity_id: light.treelamp
|
||||
|
||||
- alias: 'Telegram bot boil kettle'
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: telegram_text
|
||||
event_data:
|
||||
text: 'boil the kettle'
|
||||
action:
|
||||
- service: telegram_bot.send_message
|
||||
data_template:
|
||||
target: '{{ trigger.event.data.chat_id }}'
|
||||
message: 'Ok {{ trigger.event.data["from_first"] }}, boiling the kettle!'
|
||||
|
||||
#- alias: '[App] Telegram image'
|
||||
# trigger:
|
||||
# platform: event
|
||||
# event_type: telegram_sent
|
||||
# action:
|
||||
# - service: notify.telegram_alex
|
||||
# data_template:
|
||||
# message: 'Got an image'
|
||||
|
||||
- id: 'telegramtestcallback'
|
||||
alias: 'Telegram callback to test notifications'
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: telegram_command
|
||||
event_data:
|
||||
command: '/testme'
|
||||
action:
|
||||
- event: test_telegram_bot_notify
|
||||
|
||||
- id: 'telegramtesttrigger'
|
||||
alias: 'Telegram bot test sequence'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: test_telegram_bot_notify
|
||||
condition: []
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
title: "From Home-Assistant:"
|
||||
message: "The is a test of the laundry notification system.\nChoose a notification to test:"
|
||||
data:
|
||||
inline_keyboard:
|
||||
- 'Dryer:/testdryer, Washer:/testwasher'
|
||||
- 'Cancel:/removekeyboard'
|
||||
|
||||
- id: 'telegramremoveinline'
|
||||
alias: 'Telegram callback to remove keyboard'
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: telegram_callback
|
||||
event_data:
|
||||
data: '/removekeyboard'
|
||||
action:
|
||||
- service: telegram_bot.answer_callback_query
|
||||
data_template:
|
||||
callback_query_id: '{{ trigger.event.data.id }}'
|
||||
message: 'OK, dismissing notification'
|
||||
- service: telegram_bot.edit_replymarkup
|
||||
data_template:
|
||||
message_id: '{{ trigger.event.data.message.message_id }}'
|
||||
chat_id: '{{ trigger.event.data.chat_id }}'
|
||||
inline_keyboard: []
|
62
configuration/automation/app_va_night_mode.yaml
Normal file
62
configuration/automation/app_va_night_mode.yaml
Normal file
@ -0,0 +1,62 @@
|
||||
---
|
||||
- id: app_va_night_mode_on
|
||||
alias: '[App] Voice Assistants Night Mode On'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: time
|
||||
at: input_datetime.app_va_night_mode_time_start
|
||||
condition:
|
||||
- and:
|
||||
- condition: state
|
||||
entity_id: input_boolean.app_va_night_mode_status
|
||||
state: 'on'
|
||||
- condition: time
|
||||
after: input_datetime.app_va_night_mode_time_start
|
||||
before: input_datetime.app_va_night_mode_time_end
|
||||
action:
|
||||
- service: switch.turn_off
|
||||
entity_id:
|
||||
- switch.onju_voice_01_wake_word_listening_light
|
||||
- switch.onju_voice_02_wake_word_listening_light
|
||||
- switch.onju_voice_03_wake_word_listening_light
|
||||
- switch.onju_voice_04_wake_word_listening_light
|
||||
- switch.onju_voice_05_wake_word_listening_light
|
||||
- service: media_player.volume_set
|
||||
data_template:
|
||||
entity_id:
|
||||
- media_player.onju_voice_01_onju_voice_01
|
||||
- media_player.onju_voice_02_onju_voice_02
|
||||
- media_player.onju_voice_03_onju_voice_03
|
||||
- media_player.onju_voice_04_onju_voice_04
|
||||
- media_player.onju_voice_05_onju_voice_05
|
||||
volume_level: 0.25
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Voice Assistant Night mode is started'
|
||||
|
||||
- id: app_va_night_mode_off
|
||||
alias: '[App] Voice Assistants Night Mode OFF'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: time
|
||||
at: input_datetime.app_va_night_mode_time_end
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id:
|
||||
- switch.onju_voice_01_wake_word_listening_light
|
||||
- switch.onju_voice_02_wake_word_listening_light
|
||||
- switch.onju_voice_03_wake_word_listening_light
|
||||
- switch.onju_voice_04_wake_word_listening_light
|
||||
- switch.onju_voice_05_wake_word_listening_light
|
||||
- service: media_player.volume_set
|
||||
data_template:
|
||||
entity_id:
|
||||
- media_player.onju_voice_01_onju_voice_01
|
||||
- media_player.onju_voice_02_onju_voice_02
|
||||
- media_player.onju_voice_03_onju_voice_03
|
||||
- media_player.onju_voice_04_onju_voice_04
|
||||
- media_player.onju_voice_05_onju_voice_05
|
||||
volume_level: 1
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Voice Assistant Night mode is finished'
|
22
configuration/automation/conversation_test.yaml
Normal file
22
configuration/automation/conversation_test.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: '[Conversation] Test'
|
||||
initial_state: "true"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{%- set t = trigger.event.data.messages | map(attribute="content") | list | last -%}{%- set a = namespace(value=false) -%}{%- for w in ["need", "confirm", "?"] -%}{%- if w in t -%}{%- set a.value=true -%}{%- endif -%}{%- endfor -%}{{ a.value }}'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: extended_openai_conversation.conversation.finished
|
||||
# event_data:
|
||||
# user_input:
|
||||
# device_id:
|
||||
# condition:
|
||||
# condition: template
|
||||
# value_template: '{{ trigger.event.data.node_id == 23 or trigger.event.data.node_id == 24 or trigger.event.data.node_id == 25 }}'
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
target:
|
||||
entity_id: "{% set entities = device_entities(trigger.event.data.user_input.device_id) | expand | map(attribute='entity_id') | list %}{%- for e in entities %}{%- if 'switch' in e and 'continued' in e %}{{e}}{%- endif %}{%- endfor %}"
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Finished a conversation on the Onju Voice ID ({{ trigger.event.data.user_input.device_id }})\n Response: {{ trigger.event.data.messages | map(attribute="content") | list | last }}'
|
42
configuration/automation/global_ir_lights.yaml
Normal file
42
configuration/automation/global_ir_lights.yaml
Normal file
@ -0,0 +1,42 @@
|
||||
---
|
||||
- id: global_ir_light_on
|
||||
alias: '[Lifx] Infrared On'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sun.sun
|
||||
from: "above_horizon"
|
||||
to: "below_horizon"
|
||||
action:
|
||||
service: select.select_option
|
||||
data:
|
||||
option: "100%"
|
||||
entity_id:
|
||||
- select.aisle_ceiling_01_infrared_brightness
|
||||
# - select.backyard_01_infrared_brightness
|
||||
# - select.bedroom_guest_ceiling_01_infrared_brightness
|
||||
- select.bedroom_master_ceiling_01_infrared_brightness
|
||||
# - select.bedroom_olivia_ceiling_01_infrared_brightness
|
||||
- select.garage_gate_01_infrared_brightness
|
||||
- select.garage_ceiling_01_infrared_brightness
|
||||
|
||||
- id: global_ir_light_off
|
||||
alias: '[Lifx] Infrared Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sun.sun
|
||||
from: "below_horizon"
|
||||
to: "above_horizon"
|
||||
action:
|
||||
service: select.select_option
|
||||
data:
|
||||
option: "Disabled"
|
||||
entity_id:
|
||||
- select.aisle_ceiling_01_infrared_brightness
|
||||
# - select.backyard_01_infrared_brightness
|
||||
# - select.bedroom_guest_ceiling_01_infrared_brightness
|
||||
- select.bedroom_master_ceiling_01_infrared_brightness
|
||||
# - select.bedroom_olivia_ceiling_01_infrared_brightness
|
||||
- select.garage_gate_01_infrared_brightness
|
||||
- select.garage_ceiling_01_infrared_brightness
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
#-
|
||||
# - service: utility_meter.reset
|
||||
# entity_id
|
24
configuration/automation/global_smoke_co_detected.yaml
Normal file
24
configuration/automation/global_smoke_co_detected.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- id: smoke_detected
|
||||
alias: '[App] Smoke Detected'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.smoke_detector_01
|
||||
to: "on"
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: "Smoke Detected"
|
||||
|
||||
- id: co_detected
|
||||
alias: '[App] CO Detected'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.carbon_monoxide_detector_01
|
||||
to: "on"
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: "CO Detected"
|
@ -0,0 +1,60 @@
|
||||
---
|
||||
- id: global_tasmotas_fix_unavailable_fan_01
|
||||
alias: '[Global] Reboot Master Bathroom Fan if unavailable'
|
||||
trigger:
|
||||
- entity_id: fan.bathroom_master
|
||||
for: 00:00:10
|
||||
platform: state
|
||||
to: 'unavailable'
|
||||
action:
|
||||
- service: shell_command.restart_fan01
|
||||
|
||||
- id: global_tasmotas_fix_unavailable_fan_02
|
||||
alias: '[Global] Reboot Bedroom Bathroom Fan if unavailable'
|
||||
trigger:
|
||||
- entity_id: fan.bathroom_bedroom
|
||||
for: 00:00:10
|
||||
platform: state
|
||||
to: 'unavailable'
|
||||
action:
|
||||
- service: shell_command.restart_fan02
|
||||
|
||||
- id: global_tasmotas_fix_unavailable_fan_03
|
||||
alias: '[Global] Reboot Maxim Bedroom Fan if unavailable'
|
||||
trigger:
|
||||
- entity_id: fan.bedroom_maxim
|
||||
for: 00:00:10
|
||||
platform: state
|
||||
to: 'unavailable'
|
||||
action:
|
||||
- service: shell_command.restart_fan03
|
||||
|
||||
- id: global_tasmotas_fix_unavailable_fan_04
|
||||
alias: '[Global] Reboot Olivia Bedroom Fan if unavailable'
|
||||
trigger:
|
||||
- entity_id: fan.bedroom_olivia
|
||||
for: 00:00:10
|
||||
platform: state
|
||||
to: 'unavailable'
|
||||
action:
|
||||
- service: shell_command.restart_fan04
|
||||
|
||||
- id: global_tasmotas_fix_unavailable_fan_05
|
||||
alias: '[Global] Reboot Living Room Bathroom Fan if unavailable'
|
||||
trigger:
|
||||
- entity_id: fan.bathroom_living_room
|
||||
for: 00:00:10
|
||||
platform: state
|
||||
to: 'unavailable'
|
||||
action:
|
||||
- service: shell_command.restart_fan05
|
||||
|
||||
- id: global_tasmotas_fix_unavailable_light_01
|
||||
alias: '[Global] Reboot Master Bathroom Fan if unavailable'
|
||||
trigger:
|
||||
- entity_id: light.kitchen_decorating_01
|
||||
for: 00:00:10
|
||||
platform: state
|
||||
to: 'unavailable'
|
||||
action:
|
||||
- service: shell_command.restart_light01
|
26
configuration/automation/global_time_of_the_day.yaml
Normal file
26
configuration/automation/global_time_of_the_day.yaml
Normal file
@ -0,0 +1,26 @@
|
||||
# Parts of the Day
|
||||
# ------------------------------------------
|
||||
# Morning 5 am to 12 pm (noon)
|
||||
# Early morning 5 am to 8 am
|
||||
# Late morning 11 am to 12pm
|
||||
# Afternoon 12 pm to 5 pm
|
||||
# Early afternoon 1 pm to 3 pm
|
||||
# Late afternoon 4 pm to 5 pm
|
||||
# Evening 5 pm to 9 pm
|
||||
# Early evening 5 pm to 7 pm
|
||||
# Night 9 pm to 4 am
|
||||
|
||||
- alias: '[Global] Set time of the day'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: time_pattern
|
||||
minutes: 0
|
||||
action:
|
||||
service: input_select.select_option
|
||||
data_template:
|
||||
entity_id: input_select.parts_of_the_day
|
||||
option: >
|
||||
{% if now().hour < 5 %}Night
|
||||
{% elif now().hour < 12 %}Morning
|
||||
{% elif now().hour < 18 %}Afternoon
|
||||
{% else %}Evening{% endif %}
|
@ -0,0 +1,18 @@
|
||||
---
|
||||
- alias: "[Global] Zigbee client disconnected"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.zigbee2mqtt_01_zigbee2mqtt_serial_connected_01
|
||||
- binary_sensor.zigbee2mqtt_01_zigbee2mqtt_serial_connected_02
|
||||
- binary_sensor.zigbee2mqtt_01_zigbee2mqtt_serial_connected_03
|
||||
to: "off"
|
||||
action:
|
||||
- service: esphome.onju_voice_02_notification_on
|
||||
data:
|
||||
color: [100,0,0]
|
||||
brightness: 100
|
||||
effect: none
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Zigbee client disconnected'
|
54
configuration/automation/light_aisle_night.yaml
Normal file
54
configuration/automation/light_aisle_night.yaml
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
####################################################################################################
|
||||
### AISLE LIGHTS ###############################################################################
|
||||
####################################################################################################
|
||||
- alias: '[Aisle] Night Lights On'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_stairwell_sensor_1
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: light.aisle_ceiling_all
|
||||
state: 'off'
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
- condition: template
|
||||
value_template: '{{ ( states.sensor.presence_stairwell_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.aisle_ceiling_all
|
||||
data_template:
|
||||
rgb_color: [51, 46, 255]
|
||||
brightness: 20
|
||||
transition: "{{ states.input_number.app_light_light_transition_time.state | int }}"
|
||||
|
||||
- alias: '[Aisle] Night Lights Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_stairwell_sensor_1
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
for:
|
||||
seconds: 5
|
||||
condition:
|
||||
condition: state
|
||||
entity_id: light.aisle_ceiling_all
|
||||
state: 'on'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.aisle_ceiling_all
|
||||
data_template:
|
||||
transition: "{{ states.input_number.app_light_light_transition_time.state | int }}"
|
37
configuration/automation/light_auto_bathroom_master.yaml
Normal file
37
configuration/automation/light_auto_bathroom_master.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
- alias: '[Bathroom Master] Lights Auto On'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_03_presence
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data_template:
|
||||
entity_id: light.bathroom_master_wall_01
|
||||
brightness_pct: >
|
||||
{% set hour = now().hour | int %}
|
||||
{%- if hour >= 8 and hour < 19 -%}
|
||||
100.0
|
||||
{%- elif hour >= 19 and hour < 23 -%}
|
||||
75.0
|
||||
{%- elif hour >= 6 and hour < 8 -%}
|
||||
50.0
|
||||
{%- elif ( hour >= 23 and hour < 24 ) and ( hour >= 0 and hour < 6 ) -%}
|
||||
15.0
|
||||
{%- endif -%}
|
||||
|
||||
- alias: '[Bathroom Master] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_03_presence
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.bathroom_master_wall_01
|
37
configuration/automation/light_auto_bedroom_master.yaml
Normal file
37
configuration/automation/light_auto_bedroom_master.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
#- alias: '[Bedroom Master] Lights Auto On'
|
||||
# initial_state: 'true'
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - input_boolean.occupancy_bedroom_master
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# condition: and
|
||||
# conditions:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.bedroom_master_light_state
|
||||
# state: 'off'
|
||||
# - condition: or
|
||||
# conditions:
|
||||
# - condition: state
|
||||
# entity_id: sun.sun
|
||||
# state: 'below_horizon'
|
||||
# - condition: template
|
||||
# value_template: '{{ ( states.sensor.presence_bedroom_master_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
# action:
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.bedroom_master_light_state
|
||||
|
||||
- alias: '[Bedroom Master] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_bedroom_master
|
||||
to: 'off'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.bedroom_master_light_state
|
37
configuration/automation/light_auto_bedroom_max.yaml
Normal file
37
configuration/automation/light_auto_bedroom_max.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
#- alias: '[Bedroom Max] Lights Auto On'
|
||||
# initial_state: 'true'
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - input_boolean.occupancy_bedroom_max
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# condition: and
|
||||
# conditions:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.bedroom_max_light_state
|
||||
# state: 'off'
|
||||
# - condition: or
|
||||
# conditions:
|
||||
# - condition: state
|
||||
# entity_id: sun.sun
|
||||
# state: 'below_horizon'
|
||||
# - condition: template
|
||||
# value_template: '{{ ( states.sensor.presence_bedroom_max_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
# action:
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.bedroom_max_light_state
|
||||
|
||||
- alias: '[Bedroom Max] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_bedroom_max
|
||||
to: 'off'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.bedroom_max_light_state
|
37
configuration/automation/light_auto_bedroom_olivia.yaml
Normal file
37
configuration/automation/light_auto_bedroom_olivia.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
#- alias: '[Bedroom Olivia] Lights Auto On'
|
||||
# initial_state: 'true'
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - input_boolean.occupancy_bedroom_olivia
|
||||
# to: 'on'
|
||||
# condition:
|
||||
# condition: and
|
||||
# conditions:
|
||||
# - condition: state
|
||||
# entity_id: input_boolean.bedroom_olivia_light_state
|
||||
# state: 'off'
|
||||
# - condition: or
|
||||
# conditions:
|
||||
# - condition: state
|
||||
# entity_id: sun.sun
|
||||
# state: 'below_horizon'
|
||||
# - condition: template
|
||||
# value_template: '{{ ( states.sensor.presence_bedroom_olivia_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
# action:
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.bedroom_olivia_light_state
|
||||
|
||||
- alias: '[Bedroom Olivia] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_bedroom_olivia
|
||||
to: 'off'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.bedroom_olivia_light_state
|
29
configuration/automation/light_auto_decoration_entrance.yaml
Normal file
29
configuration/automation/light_auto_decoration_entrance.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
---
|
||||
- alias: '[Lights] Decoration Entrance Lights ON'
|
||||
trigger:
|
||||
platform: sun
|
||||
event: sunset
|
||||
offset: '+00:15:00'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.porch_01
|
||||
- light.garage_gate_01
|
||||
- light.frontyard_decoration_01
|
||||
- service: switch.turn_on
|
||||
entity_id:
|
||||
- switch.outlet_garage_01
|
||||
|
||||
- alias: '[Lights] Decoration Entrance Lights ON'
|
||||
trigger:
|
||||
platform: time
|
||||
at: "23:55:00"
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.frontyard_decoration_01
|
||||
- light.porch_01
|
||||
- light.garage_gate_01
|
||||
- service: switch.turn_off
|
||||
entity_id:
|
||||
- switch.outlet_garage_01
|
39
configuration/automation/light_auto_garage.yaml
Normal file
39
configuration/automation/light_auto_garage.yaml
Normal file
@ -0,0 +1,39 @@
|
||||
---
|
||||
- alias: '[Garage] Lights Auto On'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_garage_sensor_1
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: light.garage_ceiling_01
|
||||
state: 'off'
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
- condition: template
|
||||
value_template: '{{ ( states.sensor.presence_garage_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.garage_ceiling_01
|
||||
|
||||
- alias: '[Garage] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_garage_sensor_1
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.garage_ceiling_01
|
37
configuration/automation/light_auto_kitchen.yaml
Normal file
37
configuration/automation/light_auto_kitchen.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
- alias: '[Kitchen] Lights Auto On'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_kitchen
|
||||
to: 'on'
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: input_boolean.kitchen_light_state
|
||||
state: 'off'
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
- condition: template
|
||||
value_template: '{{ ( states.sensor.presence_kitchen_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.kitchen_light_state
|
||||
|
||||
- alias: '[Kitchen] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_kitchen
|
||||
to: 'off'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.kitchen_light_state
|
37
configuration/automation/light_auto_living_room.yaml
Normal file
37
configuration/automation/light_auto_living_room.yaml
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
- alias: '[Living Room] Lights Auto On'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_living_room
|
||||
to: 'on'
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: input_boolean.living_room_light_state
|
||||
state: 'off'
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
- condition: template
|
||||
value_template: '{{ ( states.sensor.presence_living_room_light_level.state | int ) < ( states.input_number.app_light_light_lux_mininum.state | int ) }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.living_room_light_state
|
||||
|
||||
- alias: '[Living Room] Lights Auto Off'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_living_room
|
||||
to: 'off'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.living_room_light_state
|
22
configuration/automation/light_mode_bedroom_master.yaml
Normal file
22
configuration/automation/light_mode_bedroom_master.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Bedroom Master] Light Mode set to Auto"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_bedroom_master
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_master
|
||||
|
||||
#- alias: "[Bedroom Master] Light Mode set to Manual"
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - inout_boolean.occupancy_bedroom_master
|
||||
# to: "off"
|
||||
# action:
|
||||
# service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_master
|
22
configuration/automation/light_mode_bedroom_max.yaml
Normal file
22
configuration/automation/light_mode_bedroom_max.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Bedroom Max] Light Mode set to Auto"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_bedroom_max
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_max
|
||||
|
||||
#- alias: "[Bedroom Max] Light Mode set to Manual"
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - inout_boolean.occupancy_bedroom_max
|
||||
# to: "off"
|
||||
# action:
|
||||
# service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_max
|
22
configuration/automation/light_mode_bedroom_olivia.yaml
Normal file
22
configuration/automation/light_mode_bedroom_olivia.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Bedroom Olivia] Light Mode set to Auto"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_bedroom_olivia
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_olivia
|
||||
|
||||
#- alias: "[Bedroom Olivia] Light Mode set to Manual"
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - inout_boolean.occupancy_bedroom_olivia
|
||||
# to: "off"
|
||||
# action:
|
||||
# service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_olivia
|
22
configuration/automation/light_mode_garage.yaml
Normal file
22
configuration/automation/light_mode_garage.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Garage] Light Mode set to Auto"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_garage
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_garage
|
||||
|
||||
#- alias: "[Garage] Light Mode set to Manual"
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - inout_boolean.occupancy_garage
|
||||
# to: "off"
|
||||
# action:
|
||||
# service: input_boolean.turn_off
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_garage
|
22
configuration/automation/light_mode_kitchen.yaml
Normal file
22
configuration/automation/light_mode_kitchen.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Kitchen] Light Mode set to Auto"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_kitchen
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_kitchen
|
||||
|
||||
#- alias: "[Kitchen] Light Mode set to Manual"
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - inout_boolean.occupancy_kitchen
|
||||
# to: "off"
|
||||
# action:
|
||||
# service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_kitchen
|
22
configuration/automation/light_mode_living_room.yaml
Normal file
22
configuration/automation/light_mode_living_room.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Living Room] Light Mode set to Auto"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_boolean.occupancy_living_room
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_living_room
|
||||
|
||||
#- alias: "[Living Room] Light Mode set to Manual"
|
||||
# trigger:
|
||||
# platform: state
|
||||
# entity_id:
|
||||
# - inout_boolean.occupancy_living_room
|
||||
# to: "off"
|
||||
# action:
|
||||
# service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_living_room
|
24
configuration/automation/light_on_off_backyard.yaml
Normal file
24
configuration/automation/light_on_off_backyard.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Backyard] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.backyard_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.backyard_{{ states.input_text.backyard_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Backyard] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.backyard_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.backyard_off
|
||||
transition: 2.5
|
24
configuration/automation/light_on_off_bedroom_master.yaml
Normal file
24
configuration/automation/light_on_off_bedroom_master.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Bedroom Master] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.bedroom_master_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_master_{{ states.input_text.bedroom_master_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Bedroom Master] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.bedroom_master_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_master_off
|
||||
transition: 2.5
|
24
configuration/automation/light_on_off_bedroom_max.yaml
Normal file
24
configuration/automation/light_on_off_bedroom_max.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Bedroom Max] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.bedroom_max_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_max_{{ states.input_text.bedroom_max_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Bedroom Max] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.bedroom_max_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_max_off
|
||||
transition: 2.5
|
24
configuration/automation/light_on_off_bedroom_olivia.yaml
Normal file
24
configuration/automation/light_on_off_bedroom_olivia.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Bedroom Olivia] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.bedroom_olivia_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_olivia_{{ states.input_text.bedroom_olivia_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Bedroom Olivia] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.bedroom_olivia_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_olivia_off
|
||||
transition: 2.5
|
24
configuration/automation/light_on_off_kitchen.yaml
Normal file
24
configuration/automation/light_on_off_kitchen.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Kitchen] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.kitchen_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.kitchen_{{ states.input_text.kitchen_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Kitchen] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.kitchen_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.kitchen_off
|
||||
transition: 2.5
|
24
configuration/automation/light_on_off_living_room.yaml
Normal file
24
configuration/automation/light_on_off_living_room.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Living Room] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.living_room_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.living_room_{{ states.input_text.living_room_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Living Room] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.living_room_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.living_room_off
|
||||
transition: 2.5
|
24
configuration/automation/light_on_off_porch.yaml
Normal file
24
configuration/automation/light_on_off_porch.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Porch] Light On (by input_boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.porch_light_state
|
||||
to: "on"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.porch_{{ states.input_text.porch_last_scene.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
|
||||
- alias: "[Porch] Light Off (by input boolean)"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.porch_light_state
|
||||
to: "off"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.porch_off
|
||||
transition: 2.5
|
25
configuration/automation/lock_lock.yaml
Normal file
25
configuration/automation/lock_lock.yaml
Normal file
@ -0,0 +1,25 @@
|
||||
---
|
||||
- alias: "[Lock] Lock A Lock if Unlocked for 3 Minutes"
|
||||
id: "X7P04E2U6FABYRSZ"
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: lock.lock_01
|
||||
to: "unlocked"
|
||||
for:
|
||||
hours: 0
|
||||
minutes: 3
|
||||
seconds: 0
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: "{{ states('binary_sensor.door_entrance_01') == 'off' }}"
|
||||
action:
|
||||
- service: lock.lock
|
||||
data:
|
||||
entity_id: lock.lock_01
|
||||
# - service: persistent_notification.create
|
||||
# data:
|
||||
# message: "Lock is being locked by automation"
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "Lock is being locked by automation"
|
91
configuration/automation/media_system_control.yaml
Normal file
91
configuration/automation/media_system_control.yaml
Normal file
@ -0,0 +1,91 @@
|
||||
---
|
||||
- alias: "[Media] Projector mode"
|
||||
id: media_switching_to_projector_mode
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: select.living_room_harmony_hub_activities
|
||||
to: "ShTV+AVR+Prj"
|
||||
action:
|
||||
- service: cover.open_cover
|
||||
data:
|
||||
entity_id: cover.motor_01
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: media_player.onkyo_receiver
|
||||
state: "off"
|
||||
sequence:
|
||||
- service: media_player.turn_on
|
||||
entity_id: media_player.onkyo_receiver
|
||||
- delay: "00:00:05"
|
||||
- service: media_player.onkyo_select_hdmi_output
|
||||
data:
|
||||
entity_id: media_player.onkyo_receiver
|
||||
hdmi_output: out-sub
|
||||
- delay: "00:00:01"
|
||||
- service: button.press
|
||||
target:
|
||||
entity_id:
|
||||
- button.esp8266_hdmi_cec_01_turn_active_source
|
||||
# - button.esp8266_hdmi_cec_01_turn_everything_off
|
||||
# - service: remote.send_command
|
||||
# target:
|
||||
# entity_id: remote.broadlink_rm4_mini
|
||||
# data:
|
||||
# device: projector_lg_hu810pw
|
||||
# command:
|
||||
# - "Power Off"
|
||||
# - "b64:JgBYAAABII8TERMSEjcTERMRExISEhISEjYTNxISEjYTNhI2EjcTNhISEhITERM1ExITEhISExETNhI2EjcTERM2EjYTNhI3EgAFAAABIUgSAAwTAAEhRxMADQU="
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "Switching to media system to the Projector mode"
|
||||
|
||||
- alias: "[Media] TV mode"
|
||||
id: media_switching_to_tv_mode
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: select.living_room_harmony_hub_activities
|
||||
to: "ShTV+AVR+TV"
|
||||
action:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: cover.motor_01
|
||||
state: "open"
|
||||
sequence:
|
||||
- service: cover.close_cover
|
||||
data:
|
||||
entity_id: cover.motor_01
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: media_player.onkyo_receiver
|
||||
state: "off"
|
||||
sequence:
|
||||
- service: media_player.turn_on
|
||||
entity_id: media_player.onkyo_receiver
|
||||
- delay: '00:00:05'
|
||||
- service: media_player.onkyo_select_hdmi_output
|
||||
data:
|
||||
entity_id: media_player.onkyo_receiver
|
||||
hdmi_output: out
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "Switching to media system to the TV mode"
|
||||
|
||||
- alias: "[Media] Off mode"
|
||||
id: media_switching_off
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: select.living_room_harmony_hub_activities
|
||||
to: "power_off"
|
||||
action:
|
||||
- service: cover.close_cover
|
||||
data:
|
||||
entity_id: cover.motor_01
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "Switching off media system"
|
62
configuration/automation/notification_frigate.yaml
Normal file
62
configuration/automation/notification_frigate.yaml
Normal file
@ -0,0 +1,62 @@
|
||||
---
|
||||
- alias: '[Frigate] Person enters Driveway Zone'
|
||||
trigger:
|
||||
platform: mqtt
|
||||
topic: frigate/events
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: template
|
||||
value_template: "{{ trigger.payload_json['after']['label'] == 'person' }}"
|
||||
- condition: template
|
||||
value_template: "{{ 'zone_driveway' in trigger.payload_json['after']['entered_zones'] }}"
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "A {{trigger.payload_json['after']['label']}} has entered the yard."
|
||||
data:
|
||||
photo:
|
||||
- url: "https://objects.savin.nyc/api/events/{{trigger.payload_json['after']['id']}}/thumbnail.jpg"
|
||||
# caption: "{{trigger.payload_json['after']['id']}}"
|
||||
|
||||
- alias: '[Frigate] Person leaves Driveway Zone'
|
||||
trigger:
|
||||
platform: mqtt
|
||||
topic: frigate/events
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: template
|
||||
value_template: "{{ trigger.payload_json['after']['label'] == 'person' }}"
|
||||
- condition: template
|
||||
value_template: "{{ 'zone_driveway' in trigger.payload_json['before']['current_zones'] }}"
|
||||
- condition: template
|
||||
value_template: "{{ not 'zone_driveway' in trigger.payload_json['after']['current_zones'] }}"
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "A {{trigger.payload_json['after']['label']}} has left the yard."
|
||||
data:
|
||||
photo:
|
||||
- url: "https://objects.savin.nyc/api/events/{{trigger.payload_json['after']['id']}}/thumbnail.jpg"
|
||||
# caption: "{{trigger.payload_json['after']['id']}}"
|
||||
|
||||
- alias: '[Frigate] Person detected by Doorbell camera'
|
||||
trigger:
|
||||
platform: mqtt
|
||||
topic: frigate/events
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: template
|
||||
value_template: "{{ trigger.payload_json['after']['label'] == 'person' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.payload_json['after']['camera'] == 'doorbell' }}"
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data_template:
|
||||
message: 'Person detected by Doorbell camera'
|
||||
data:
|
||||
photo:
|
||||
- url: "https://objects.savin.nyc/api/events/{{trigger.payload_json['after']['id']}}/thumbnail.jpg"
|
||||
# caption: "{{trigger.payload_json['after']['id']}}"
|
23
configuration/automation/notification_wrong_code.yaml
Normal file
23
configuration/automation/notification_wrong_code.yaml
Normal file
@ -0,0 +1,23 @@
|
||||
---
|
||||
- id: notification_lock_wrong_code
|
||||
alias: '[Notification] Wrong Code'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.lock_01_alarm_type
|
||||
to: '0'
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: template
|
||||
value_template: "{{ states('sensor.lock_01_alarm_level') | int == 0 }}"
|
||||
- condition: template
|
||||
value_template: "{{ states('sensor.lock_01_alarm_type') | int == 0 }}"
|
||||
action:
|
||||
- service: notify.telegram_alex
|
||||
data:
|
||||
message: "Someone entered the wrong code"
|
||||
# - service: notify.mobile_app_alex_google_pixel_7_pro
|
||||
# data:
|
||||
# message: Someone entered the wrong code
|
||||
# title: WRONG CODE
|
22
configuration/automation/occupancy_aisle.yaml
Normal file
22
configuration/automation/occupancy_aisle.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Aisle] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_aisle_sensor_1
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_aisle
|
||||
|
||||
- alias: "[Aisle] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_aisle_sensor_1
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_aisle
|
22
configuration/automation/occupancy_bedroom_master.yaml
Normal file
22
configuration/automation/occupancy_bedroom_master.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Bedroom Master] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_bedroom_master_sensor_1
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_bedroom_master
|
||||
|
||||
- alias: "[Bedroom Master] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_bedroom_master_sensor_1
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_bedroom_master
|
22
configuration/automation/occupancy_bedroom_maxim.yaml
Normal file
22
configuration/automation/occupancy_bedroom_maxim.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Bedroom Maxim] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_bedroom_maxim_sensor_1
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_bedroom_max
|
||||
|
||||
- alias: "[Bedroom Maxim] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_bedroom_maxim_sensor_1
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_bedroom_max
|
22
configuration/automation/occupancy_bedroom_olivia.yaml
Normal file
22
configuration/automation/occupancy_bedroom_olivia.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Bedroom Olivia] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_bedroom_olivia_sensor_1
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_bedroom_olivia
|
||||
|
||||
- alias: "[Bedroom Olivia] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_bedroom_olivia_sensor_1
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_bedroom_olivia
|
22
configuration/automation/occupancy_garage.yaml
Normal file
22
configuration/automation/occupancy_garage.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
- alias: "[Garage] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_garage_sensor_1
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_garage
|
||||
|
||||
- alias: "[Garage] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_garage_sensor_1
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_garage
|
20
configuration/automation/occupancy_kitchen.yaml
Normal file
20
configuration/automation/occupancy_kitchen.yaml
Normal file
@ -0,0 +1,20 @@
|
||||
---
|
||||
- alias: "[Kitchen] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_kitchen_sensor_2
|
||||
to: "on"
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_kitchen
|
||||
|
||||
- alias: "[Kitchen] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_kitchen_sensor_2
|
||||
to: "off"
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_kitchen
|
20
configuration/automation/occupancy_living_room.yaml
Normal file
20
configuration/automation/occupancy_living_room.yaml
Normal file
@ -0,0 +1,20 @@
|
||||
---
|
||||
- alias: "[Living Room] Occupancy to True"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_living_room_sensor_1
|
||||
to: "on"
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_living_room
|
||||
|
||||
- alias: "[Living Room] Occupancy to False"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- binary_sensor.presence_living_room_sensor_1
|
||||
to: "off"
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_living_room
|
38
configuration/automation/occupants_kitchen.yaml
Normal file
38
configuration/automation/occupants_kitchen.yaml
Normal file
@ -0,0 +1,38 @@
|
||||
---
|
||||
- alias: 'Trip Wire #01 > AB'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.tripwire_10521c66d2e8_direction
|
||||
to: "AB"
|
||||
action:
|
||||
- service: input_number.set_value
|
||||
data_template:
|
||||
entity_id: input_number.occupants_kitchen
|
||||
value: '{{ (states.input_number.occupants_kitchen.state | int ) + 1 }}'
|
||||
|
||||
- alias: 'Trip Wire #01 > BA'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.tripwire_10521c66d2e8_direction
|
||||
to: "BA"
|
||||
action:
|
||||
- service: input_number.set_value
|
||||
data_template:
|
||||
entity_id: input_number.occupants_kitchen
|
||||
value: '{{ (states.input_number.occupants_kitchen.state | int ) - 1 }}'
|
||||
|
||||
- alias: "Set Kitchen Occupancy to True"
|
||||
trigger:
|
||||
platform: template
|
||||
value_template: '{{ (states.input_number.occupants_kitchen.state | int ) > 0 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id: input_boolean.occupancy_kitchen
|
||||
|
||||
- alias: "Set Kitchen Occupancy to False"
|
||||
trigger:
|
||||
platform: template
|
||||
value_template: '{{ (states.input_number.occupants_kitchen.state | int ) == 0 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.occupancy_kitchen
|
46
configuration/automation/remote_control_light_kitchen.yaml
Normal file
46
configuration/automation/remote_control_light_kitchen.yaml
Normal file
@ -0,0 +1,46 @@
|
||||
---
|
||||
- alias: "[Remote Control] Kitchen Scene Next"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.remote_kitchen_01_action
|
||||
to: "arrow_right_click"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.kitchen_light_state
|
||||
state: "on"
|
||||
action:
|
||||
- service: input_select.select_next
|
||||
target:
|
||||
entity_id: input_select.kitchen_scenes
|
||||
|
||||
- alias: "[Remote Control] Kitchen Scene Prev"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.remote_kitchen_01_action
|
||||
to: "arrow_left_click"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: input_boolean.kitchen_light_state
|
||||
state: "on"
|
||||
action:
|
||||
- service: input_select.select_previous
|
||||
target:
|
||||
entity_id: input_select.kitchen_scene
|
||||
|
||||
- alias: "[Remote Control] Kitchen Scene On"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.remote_kitchen_01_action
|
||||
to: "toggle"
|
||||
action:
|
||||
- service_template: >
|
||||
{% if states.input_boolean.kitchen_light_state.state == 'off' %}
|
||||
input_boolean.turn_on
|
||||
{% else %}
|
||||
input_boolean.turn_off
|
||||
{% endif %}
|
||||
entity_id:
|
||||
- input_boolean.kitchen_light_state
|
24
configuration/automation/scene_rotation_backyard.yaml
Normal file
24
configuration/automation/scene_rotation_backyard.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Backyard Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.backyard_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.backyard_{{ states.input_select.backyard_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.backyard_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.backyard_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.backyard_scenes.state | lower | string == 'off' -%}
|
||||
input_boolean.turn_off
|
||||
{%- else -%}
|
||||
input_boolean.turn_on
|
||||
{%- endif %}
|
||||
entity_id:
|
||||
- input_boolean.backyard_light_state
|
24
configuration/automation/scene_rotation_bedroom_master.yaml
Normal file
24
configuration/automation/scene_rotation_bedroom_master.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Bedroom Master Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.bedroom_master_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_master_{{ states.input_select.bedroom_master_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.bedroom_master_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.bedroom_master_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.bedroom_master_scenes.state | lower | string == 'off' %}
|
||||
input_boolean.turn_off
|
||||
{% else %}
|
||||
input_boolean.turn_on
|
||||
{% endif %}
|
||||
entity_id:
|
||||
- input_boolean.bedroom_master_light_state
|
24
configuration/automation/scene_rotation_bedroom_max.yaml
Normal file
24
configuration/automation/scene_rotation_bedroom_max.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Bedroom Max Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.bedroom_max_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_max_{{ states.input_select.bedroom_max_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.bedroom_max_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.bedroom_max_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.bedroom_max_scenes.state | lower | string == 'off' %}
|
||||
input_boolean.turn_off
|
||||
{% else %}
|
||||
input_boolean.turn_on
|
||||
{% endif %}
|
||||
entity_id:
|
||||
- input_boolean.bedroom_max_light_state
|
24
configuration/automation/scene_rotation_bedroom_olivia.yaml
Normal file
24
configuration/automation/scene_rotation_bedroom_olivia.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Bedroom Olivia Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.bedroom_olivia_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.bedroom_olivia_{{ states.input_select.bedroom_olivia_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.bedroom_olivia_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.bedroom_olivia_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.bedroom_olivia_scenes.state | lower | string == 'off' %}
|
||||
input_boolean.turn_off
|
||||
{% else %}
|
||||
input_boolean.turn_on
|
||||
{% endif %}
|
||||
entity_id:
|
||||
- input_boolean.bedroom_olivia_light_state
|
24
configuration/automation/scene_rotation_kitchen.yaml
Normal file
24
configuration/automation/scene_rotation_kitchen.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Kitchen Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.kitchen_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.kitchen_{{ states.input_select.kitchen_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.kitchen_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.kitchen_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.kitchen_scenes.state | lower | string == 'off' %}
|
||||
input_boolean.turn_off
|
||||
{% else %}
|
||||
input_boolean.turn_on
|
||||
{% endif %}
|
||||
entity_id:
|
||||
- input_boolean.kitchen_light_state
|
24
configuration/automation/scene_rotation_living_room.yaml
Normal file
24
configuration/automation/scene_rotation_living_room.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Living Room Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.living_room_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.living_room_{{ states.input_select.living_room_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.living_room_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.living_room_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.living_room_scenes.state | lower | string == 'off' %}
|
||||
input_boolean.turn_off
|
||||
{% else %}
|
||||
input_boolean.turn_on
|
||||
{% endif %}
|
||||
entity_id:
|
||||
- input_boolean.living_room_light_state
|
24
configuration/automation/scene_rotation_porch.yaml
Normal file
24
configuration/automation/scene_rotation_porch.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
- alias: "[Scene] Porch Scene Rotation"
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.porch_scenes
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
data_template:
|
||||
entity_id: scene.porch_{{ states.input_select.porch_scenes.state | replace(' ', '_') | lower | string }}
|
||||
transition: 2.5
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.porch_last_scene
|
||||
data:
|
||||
value: "{{ states.input_select.porch_scenes.state | replace(' ', '_') | lower | string }}"
|
||||
- service_template: >
|
||||
{% if states.input_select.porch_scenes.state | lower | string == 'off' -%}
|
||||
input_boolean.turn_off
|
||||
{%- else -%}
|
||||
input_boolean.turn_on
|
||||
{%- endif %}
|
||||
entity_id:
|
||||
- input_boolean.porch_light_state
|
14
configuration/automation/startup_update_tasmotas.yaml
Normal file
14
configuration/automation/startup_update_tasmotas.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
- id: startup_restart_tasmota_devices
|
||||
alias: '[StartUp] Restart tasmota devices'
|
||||
trigger:
|
||||
- platform: homeassistant
|
||||
event: start
|
||||
condition: []
|
||||
action:
|
||||
- service: shell_command.restart_fan01
|
||||
- service: shell_command.restart_fan02
|
||||
- service: shell_command.restart_fan03
|
||||
- service: shell_command.restart_fan04
|
||||
- service: shell_command.restart_fan05
|
||||
- service: shell_command.restart_light01
|
34
configuration/automation/switch_fan_bathroom_bedroom.yaml
Normal file
34
configuration/automation/switch_fan_bathroom_bedroom.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- alias: '[ZWave] Bathroom Bedroom Switch Double Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 28 }}'
|
||||
action:
|
||||
- service: fan.turn_on
|
||||
entity_id:
|
||||
- fan.bathroom_bedroom
|
||||
|
||||
- alias: '[ZWave] Bathroom Bedroom Switch Double Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 28 }}'
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
entity_id:
|
||||
- fan.bathroom_bedroom
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
- alias: '[ZWave] Bathroom Living Room Switch Double Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 13 }}'
|
||||
action:
|
||||
- service: fan.turn_on
|
||||
entity_id:
|
||||
- fan.bathroom_living_room
|
||||
|
||||
- alias: '[ZWave] Bathroom Living Room Switch Double Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 13 }}'
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
entity_id:
|
||||
- fan.bathroom_living_room
|
34
configuration/automation/switch_fan_bathroom_master.yaml
Normal file
34
configuration/automation/switch_fan_bathroom_master.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- alias: '[ZWave] Bathroom Master Switch Double Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 26 }}'
|
||||
action:
|
||||
- service: fan.turn_on
|
||||
entity_id:
|
||||
- fan.bathroom_master
|
||||
|
||||
- alias: '[ZWave] Bathroom Master Switch Double Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 26 }}'
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
entity_id:
|
||||
- fan.bathroom_master
|
34
configuration/automation/switch_fan_bedroom_max.yaml
Normal file
34
configuration/automation/switch_fan_bedroom_max.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- id: zwave_bedroom_olivia_fan_turn_on
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 19 }}'
|
||||
action:
|
||||
- service: fan.set_percentage
|
||||
entity_id: fan.bedroom_maxim
|
||||
data:
|
||||
percentage: 33
|
||||
|
||||
- id: zwave_bedroom_olivia_fan_turn_off
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 19 }}'
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
entity_id: fan.bedroom_maxim
|
34
configuration/automation/switch_fan_bedroom_olivia.yaml
Normal file
34
configuration/automation/switch_fan_bedroom_olivia.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- id: zwave_bedroom_guest_fan_turn_on
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 22 }}'
|
||||
action:
|
||||
- service: fan.set_percentage
|
||||
entity_id: fan.bedroom_olivia
|
||||
data:
|
||||
percentage: 33
|
||||
|
||||
- id: zwave_bedroom_guest_fan_turn_off
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 22 }}'
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
entity_id: fan.bedroom_olivia
|
43
configuration/automation/switch_light_backyard.yaml
Normal file
43
configuration/automation/switch_light_backyard.yaml
Normal file
@ -0,0 +1,43 @@
|
||||
---
|
||||
- alias: '[ZWave] Backyard Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 25 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.backyard_01
|
||||
brightness: 153
|
||||
hs_color: [31, 95]
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
# - light.backyard_01
|
||||
- light.backyard_pergola_01
|
||||
- light.backyard_decoration_01
|
||||
|
||||
- alias: '[ZWave] Backyard Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 25 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.backyard_01
|
||||
- light.backyard_pergola_01
|
||||
- light.backyard_decoration_01
|
34
configuration/automation/switch_light_bathroom_bedroom.yaml
Normal file
34
configuration/automation/switch_light_bathroom_bedroom.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- alias: '[ZWave] Bathroom Bedroom Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 28 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.bathroom_bedroom_wall_01
|
||||
|
||||
- alias: '[ZWave] Bathroom Bedroom Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 28 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.bathroom_bedroom_wall_01
|
34
configuration/automation/switch_light_bathroom_living.yaml
Normal file
34
configuration/automation/switch_light_bathroom_living.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
- alias: '[ZWave] Bathroom Living Room Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 13 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.bathroom_living_room_01
|
||||
|
||||
- alias: '[ZWave] Bathroom Living Room Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 13 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.bathroom_living_room_01
|
54
configuration/automation/switch_light_bathroom_master.yaml
Normal file
54
configuration/automation/switch_light_bathroom_master.yaml
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
- alias: '[ZWave] Bathroom Master Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 26 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.bathroom_master_wall_01
|
||||
|
||||
- alias: '[ZWave] Bathroom Master Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 26 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.bathroom_master_wall_01
|
||||
|
||||
- alias: '[ZWave] Bathroom Master Switch Tripple Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed3x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 26 }}'
|
||||
action:
|
||||
- service: fan.turn_off
|
||||
entity_id:
|
||||
- fan.master_bathroom
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.bathroom_master_wall_01
|
58
configuration/automation/switch_light_bedroom_master.yaml
Normal file
58
configuration/automation/switch_light_bedroom_master.yaml
Normal file
@ -0,0 +1,58 @@
|
||||
---
|
||||
- alias: '[ZWave] Bedroom Master Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 21 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.bedroom_master_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_master
|
||||
# - service: light.turn_on
|
||||
# entity_id:
|
||||
# - light.bedroom_master_ceiling_01
|
||||
# - light.bedroom_master_ceiling_02
|
||||
# - light.bedroom_master_floor_lamp_01
|
||||
# - light.bedroom_master_floor_lamp_02
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_master
|
||||
|
||||
- alias: '[ZWave] Bedroom Master Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 21 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.bedroom_master_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_master
|
||||
# - service: light.turn_off
|
||||
# entity_id:
|
||||
# - light.bedroom_master_ceiling_01
|
||||
# - light.bedroom_master_ceiling_02
|
||||
# - light.bedroom_master_floor_lamp_01
|
||||
# - light.bedroom_master_floor_lamp_02
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_master
|
54
configuration/automation/switch_light_bedroom_max.yaml
Normal file
54
configuration/automation/switch_light_bedroom_max.yaml
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
- alias: '[ZWave] Bedroom Max Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 19 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.bedroom_max_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_max
|
||||
# - service: light.turn_on
|
||||
# entity_id:
|
||||
# - light.bedroom_max_ceiling_01
|
||||
# - light.bedroom_max_table_01
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_max
|
||||
|
||||
- alias: '[ZWave] Bedroom Max Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 19 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.bedroom_max_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_max
|
||||
# - service: light.turn_off
|
||||
# entity_id:
|
||||
# - light.bedroom_max_ceiling_01
|
||||
# - light.bedroom_max_table_01
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_max
|
55
configuration/automation/switch_light_bedroom_olivia.yaml
Normal file
55
configuration/automation/switch_light_bedroom_olivia.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
---
|
||||
- alias: '[ZWave] Bedroom Olivia Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 22 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.bedroom_olivia_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_olivia
|
||||
|
||||
# - service: light.turn_on
|
||||
# entity_id:
|
||||
# - light.bedroom_guest_ceiling_01
|
||||
# - light.bedroom_olivia_table_lamp_01
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_olivia
|
||||
|
||||
- alias: '[ZWave] Bedroom Olivia Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 22 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.bedroom_olivia_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_bedroom_olivia
|
||||
# - service: light.turn_off
|
||||
# entity_id:
|
||||
# - light.bedroom_guest_ceiling_01
|
||||
# - light.bedroom_olivia_table_lamp_01
|
||||
# - service: input_boolean.turn_on
|
||||
# entity_id:
|
||||
# - input_boolean.manually_operated_light_bedroom_olivia
|
61
configuration/automation/switch_light_entrance.yaml
Normal file
61
configuration/automation/switch_light_entrance.yaml
Normal file
@ -0,0 +1,61 @@
|
||||
---
|
||||
- alias: '[ZWave] Entrance Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 12 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.porch_01
|
||||
brightness: 255
|
||||
hs_color: [57, 100]
|
||||
- service: light.turn_on
|
||||
data:
|
||||
entity_id: light.garage_gate_01
|
||||
brightness: 255
|
||||
hs_color: [236, 100]
|
||||
# entity_id:
|
||||
# - light.porch_01
|
||||
# - light.garage_gate_01
|
||||
|
||||
- alias: '[ZWave] Entrance Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 12 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.porch_01
|
||||
- light.garage_gate_01
|
||||
|
||||
#color_mode: hs
|
||||
#brightness: 255
|
||||
#hs_color: 52.768, 100
|
||||
#rgb_color: 255, 224, 0
|
||||
#xy_color: 0.482, 0.484
|
||||
#friendly_name: Porch
|
||||
#supported_features: 36
|
||||
|
||||
#color_mode: hs
|
||||
#brightness: 255
|
||||
#hs_color: 243.521, 100
|
||||
#rgb_color: 14, 0, 255
|
||||
#xy_color: 0.137, 0.041
|
||||
#friendly_name: Garage Gate
|
||||
#supported_features: 36
|
40
configuration/automation/switch_light_garage.yaml
Normal file
40
configuration/automation/switch_light_garage.yaml
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
- alias: '[ZWave] Garage Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 5 or trigger.event.data.node_id == 6 or trigger.event.data.node_id == 9 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.garage_ceiling_01
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_garage
|
||||
|
||||
- alias: '[ZWave] Garage Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 5 or trigger.event.data.node_id == 6 or trigger.event.data.node_id == 9 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.garage_ceiling_01
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_garage
|
52
configuration/automation/switch_light_kitchen.yaml
Normal file
52
configuration/automation/switch_light_kitchen.yaml
Normal file
@ -0,0 +1,52 @@
|
||||
---
|
||||
- alias: '[ZWave] Kitchen Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 23 or trigger.event.data.node_id == 65 or trigger.event.data.node_id == 25 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.kitchen_light_state
|
||||
# - service: light.turn_on
|
||||
# entity_id:
|
||||
# - light.kitchen_sink_01
|
||||
# - light.kitchen_led_01
|
||||
# - light.light_kitchen_ceiling_01
|
||||
# - light.light_kitchen_ceiling_02
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_kitchen
|
||||
|
||||
- alias: '[ZWave] Kitchen Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 23 or trigger.event.data.node_id == 65 or trigger.event.data.node_id == 25 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.kitchen_light_state
|
||||
# - service: light.turn_off
|
||||
# entity_id:
|
||||
# - light.kitchen_sink_01
|
||||
# - light.kitchen_led_01
|
||||
# - light.light_kitchen_ceiling_01
|
||||
# - light.light_kitchen_ceiling_02
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_kitchen
|
40
configuration/automation/switch_light_living_room.yaml
Normal file
40
configuration/automation/switch_light_living_room.yaml
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
- alias: '[ZWave] Living Room Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 10 or trigger.event.data.node_id == 11 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.living_room_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_living_room
|
||||
|
||||
- alias: '[ZWave] Living Room Switch Single Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 10 or trigger.event.data.node_id == 11 }}'
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id:
|
||||
- input_boolean.living_room_light_state
|
||||
- service: input_boolean.turn_on
|
||||
entity_id:
|
||||
- input_boolean.manually_operated_light_living_room
|
40
configuration/automation/switch_light_porch_decoration.yaml
Normal file
40
configuration/automation/switch_light_porch_decoration.yaml
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
- alias: '[ZWave] Porch Decoration Switch Double Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "002"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 12 }}'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.frontyard_decoration_01
|
||||
- service: switch.turn_on
|
||||
entity_id:
|
||||
- switch.outlet_garage_01
|
||||
|
||||
- alias: '[ZWave] Porch Decoration Switch Double Tap DOWN'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "001"
|
||||
value: "KeyPressed2x"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 12 }}'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
- light.frontyard_decoration_01
|
||||
- service: switch.turn_off
|
||||
entity_id:
|
||||
- switch.outlet_garage_01
|
@ -0,0 +1,45 @@
|
||||
---
|
||||
- alias: '[Notification] Doorbell Visitor'
|
||||
initial_state: 'true'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.doorbell_doorbell
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
- parallel:
|
||||
- service: script.cast_camera_doorbell_nvidia
|
||||
- service: script.cast_camera_doorbell
|
||||
# - service: media_player.play_media
|
||||
# target:
|
||||
# entity_id: media_player.kitchen_max
|
||||
# data:
|
||||
# media_content_type: "music"
|
||||
# media_content_id: "/usr/share/hassio/homeassistant/www/chime.m4a"
|
||||
# - service: sonos.snapshot
|
||||
# data:
|
||||
# entity_id: all
|
||||
- service: media_player.volume_set
|
||||
target:
|
||||
entity_id:
|
||||
- media_player.living_room_1
|
||||
data:
|
||||
volume_level: 0.65
|
||||
- service: media_player.play_media
|
||||
target:
|
||||
entity_id:
|
||||
- media_player.living_room_1
|
||||
data:
|
||||
media_content_type: music
|
||||
media_content_id: http://10.10.12.12:8123/local/chime.mp3
|
||||
# - delay:
|
||||
# hours: 0
|
||||
# minutes: 0
|
||||
# seconds: 4
|
||||
# milliseconds: 0
|
||||
# - delay: '00:00:10'
|
||||
# - service: script.cast_camera_doorbell
|
||||
# - service: sonos.restore
|
||||
# data:
|
||||
# entity_id: all
|
||||
# mode: single
|
17
configuration/automation/switch_scene_bedroom_master.yaml
Normal file
17
configuration/automation/switch_scene_bedroom_master.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
- alias: '[ZWave] Bedroom Master Switch Single Tap Third'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "003"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 21 }}'
|
||||
action:
|
||||
- service: input_select.select_next
|
||||
target:
|
||||
entity_id: input_select.bedroom_master_scenes
|
17
configuration/automation/switch_scene_bedroom_max.yaml
Normal file
17
configuration/automation/switch_scene_bedroom_max.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
- alias: '[ZWave] Bedroom Max Switch Single Tap UP'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "003"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 19 }}'
|
||||
action:
|
||||
- service: input_select.select_next
|
||||
target:
|
||||
entity_id: input_select.bedroom_max_scenes
|
17
configuration/automation/switch_scene_bedroom_olivia.yaml
Normal file
17
configuration/automation/switch_scene_bedroom_olivia.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
- alias: '[ZWave] Bedroom Olivia Switch Single Tap Third'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "003"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 22 }}'
|
||||
action:
|
||||
- service: input_select.select_next
|
||||
target:
|
||||
entity_id: input_select.bedroom_olivia_scenes
|
17
configuration/automation/switch_scene_kitchen.yaml
Normal file
17
configuration/automation/switch_scene_kitchen.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
- alias: '[ZWave] Kitchen Switch Single Tap Third'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "003"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 23 or trigger.event.data.node_id == 65 or trigger.event.data.node_id == 25 }}'
|
||||
action:
|
||||
- service: input_select.select_next
|
||||
target:
|
||||
entity_id: input_select.kitchen_scenes
|
17
configuration/automation/switch_scene_living_room.yaml
Normal file
17
configuration/automation/switch_scene_living_room.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
- alias: '[ZWave] Living Room Switch Single Tap Third'
|
||||
initial_state: "true"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave_js_value_notification
|
||||
event_data:
|
||||
property: "scene"
|
||||
property_key: "003"
|
||||
value: "KeyPressed"
|
||||
condition:
|
||||
condition: template
|
||||
value_template: '{{ trigger.event.data.node_id == 10 or trigger.event.data.node_id == 11 }}'
|
||||
action:
|
||||
- service: input_select.select_next
|
||||
target:
|
||||
entity_id: input_select.living_room_scenes
|
@ -0,0 +1,12 @@
|
||||
---
|
||||
- alias: '[Kitchen] Vacuum CleanUp'
|
||||
trigger:
|
||||
platform: time
|
||||
at:
|
||||
- input_datetime.app_settings_volume_day_starts
|
||||
action:
|
||||
- service: vacuum.send_command
|
||||
data:
|
||||
entity_id: vacuum.roborock_s5_max
|
||||
params: [[26600,21200,23600,27000,1]]
|
||||
command: app_zoned_clean
|
23
configuration/camera/xiaomi_roborock.yaml
Normal file
23
configuration/camera/xiaomi_roborock.yaml
Normal file
@ -0,0 +1,23 @@
|
||||
---
|
||||
- platform: xiaomi_cloud_map_extractor
|
||||
host: !secret device_roborock_01_host
|
||||
token: !secret device_roborock_01_token
|
||||
username: !secret device_roborock_01_cloud_username
|
||||
password: !secret device_roborock_01_cloud_password
|
||||
draw: ['all']
|
||||
attributes:
|
||||
- calibration_points
|
||||
map_transformation:
|
||||
# scale: 2
|
||||
rotate: 180
|
||||
# trim:
|
||||
# top: 10
|
||||
# bottom: 20
|
||||
# left: 30
|
||||
# right: 40
|
||||
scan_interval:
|
||||
seconds: 10
|
||||
auto_update: true
|
||||
store_map_raw: false
|
||||
store_map_image: true
|
||||
store_map_path: "/tmp"
|
3
configuration/customize/cars.yaml
Normal file
3
configuration/customize/cars.yaml
Normal file
@ -0,0 +1,3 @@
|
||||
---
|
||||
device_tracker.subaru_outback_txt:
|
||||
entity_picture: "/local/outback.jpg"
|
12
configuration/customize/person.yaml
Normal file
12
configuration/customize/person.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
---
|
||||
person.alexander_savin:
|
||||
entity_picture: "/local/profile_savin_alex.jpg"
|
||||
|
||||
person.tatiana_savin:
|
||||
entity_picture: "/local/profile_savin_tanya.jpg"
|
||||
|
||||
person.maxim_savin:
|
||||
entity_picture: "/local/profile_savin_maxim.jpg"
|
||||
|
||||
person.olivia_savin:
|
||||
entity_picture: "/local/profile_savin_olivia.jpg"
|
@ -0,0 +1,12 @@
|
||||
---
|
||||
app_climate_humidity_suppression_status:
|
||||
name: "Humidity Suppression"
|
||||
icon: mdi:water-percent
|
||||
|
||||
app_climate_humidity_suppression_announcement:
|
||||
name: "Announcement"
|
||||
icon: mdi:account-voice
|
||||
|
||||
app_climate_humidity_suppression_notification:
|
||||
name: "Notification"
|
||||
icon: mdi:cellphone-message
|
81
configuration/input_boolean/app_presence_occupancy.yaml
Normal file
81
configuration/input_boolean/app_presence_occupancy.yaml
Normal file
@ -0,0 +1,81 @@
|
||||
---
|
||||
occupancy_kitchen:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_living_room:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_bedroom_master:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_bedroom_olivia:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_bedroom_max:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_bathroom_master:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_bathroom_bedroom:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_bathroom_living:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_garage:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_stairwell:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_backyard:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
occupancy_aisle:
|
||||
name: 'Occupancy'
|
||||
icon: mdi:account-multiple
|
||||
|
||||
manually_operated_light_kitchen:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_living_room:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_bedroom_master:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_bedroom_olivia:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_bedroom_max:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_bathroom_master:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_bathroom_bedroom:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_bathroom_living:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_garage:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_stairwell:
|
||||
name: 'Manually Operated Light'
|
||||
|
||||
manually_operated_light_backyard:
|
||||
name: 'Manually Operated Light'
|
4
configuration/input_boolean/app_va_night_mode.yaml
Normal file
4
configuration/input_boolean/app_va_night_mode.yaml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
app_va_night_mode_status:
|
||||
name: "Voice Assistant Night mode"
|
||||
icon: mdi:weather-night
|
4
configuration/input_boolean/guest_mode.yaml
Normal file
4
configuration/input_boolean/guest_mode.yaml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
guest_mode:
|
||||
name: 'Guest Mode'
|
||||
icon: mdi:briefcase
|
28
configuration/input_boolean/light_state.yaml
Normal file
28
configuration/input_boolean/light_state.yaml
Normal file
@ -0,0 +1,28 @@
|
||||
---
|
||||
kitchen_light_state:
|
||||
name: 'Kitchen Light State'
|
||||
icon: mdi:lightbulb-group
|
||||
|
||||
living_room_light_state:
|
||||
name: 'Living Room Light State'
|
||||
icon: mdi:lightbulb-group
|
||||
|
||||
bedroom_master_light_state:
|
||||
name: 'Bedroom Master Light State'
|
||||
icon: mdi:lightbulb-group
|
||||
|
||||
bedroom_olivia_light_state:
|
||||
name: 'Bedroom Olivia Light State'
|
||||
icon: mdi:lightbulb-group
|
||||
|
||||
bedroom_max_light_state:
|
||||
name: 'Bedroom Max Light State'
|
||||
icon: mdi:lightbulb-group
|
||||
|
||||
backyard_light_state:
|
||||
name: 'Backyard Light State'
|
||||
icon: mdi:lightbulb-group
|
||||
|
||||
porch_light_state:
|
||||
name: 'Porch Light State'
|
||||
icon: mdi:lightbulb-group
|
10
configuration/input_boolean/zigbee2mqtt.yaml
Normal file
10
configuration/input_boolean/zigbee2mqtt.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
---
|
||||
zigbee_permit_join_01:
|
||||
name: Allow devices to join
|
||||
initial: off
|
||||
icon: mdi:cellphone-wireless
|
||||
|
||||
zigbee_permit_join_02:
|
||||
name: Allow devices to join
|
||||
initial: off
|
||||
icon: mdi:cellphone-wireless
|
@ -0,0 +1,9 @@
|
||||
---
|
||||
app_humidity_suppression_time_start:
|
||||
name: "Start Time"
|
||||
has_date: false
|
||||
has_time: true
|
||||
app_humidity_suppression_time_end:
|
||||
name: "End Time"
|
||||
has_date: false
|
||||
has_time: true
|
9
configuration/input_datetime/app_va_night_mode.yaml
Normal file
9
configuration/input_datetime/app_va_night_mode.yaml
Normal file
@ -0,0 +1,9 @@
|
||||
---
|
||||
app_va_night_mode_time_start:
|
||||
name: "Start Time"
|
||||
has_date: false
|
||||
has_time: true
|
||||
app_va_night_mode_time_end:
|
||||
name: "End Time"
|
||||
has_date: false
|
||||
has_time: true
|
@ -0,0 +1,10 @@
|
||||
---
|
||||
app_climate_humidity_suppression_humidity_level:
|
||||
name: "Humidity Level"
|
||||
icon: mdi:tune
|
||||
unit_of_measurement: '%'
|
||||
initial: 70
|
||||
mode: slider
|
||||
min: 1
|
||||
max: 100
|
||||
step: 1
|
99
configuration/input_number/app_climate_thermostat.yaml
Normal file
99
configuration/input_number/app_climate_thermostat.yaml
Normal file
@ -0,0 +1,99 @@
|
||||
---
|
||||
app_climate_thermostat_morning_heat_temp:
|
||||
name: "Heat Temp (Morning)"
|
||||
icon: mdi:fire
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_day_heat_temp:
|
||||
name: "Heat Temp (Day)"
|
||||
icon: mdi:fire
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_evening_heat_temp:
|
||||
name: "Heat Temp (Eveing)"
|
||||
icon: mdi:fire
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_night_heat_temp:
|
||||
name: "Heat Temp (Night)"
|
||||
icon: mdi:fire
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_away_heat_temp:
|
||||
name: "Heat Temp (Away)"
|
||||
icon: mdi:fire
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_morning_cool_temp:
|
||||
name: "Cool Temp (Morning)"
|
||||
icon: mdi:snowflake
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_day_cool_temp:
|
||||
name: "Cool Temp (Day)"
|
||||
icon: mdi:snowflake
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_evening_cool_temp:
|
||||
name: "Cool Temp (Evening)"
|
||||
icon: mdi:snowflake
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_night_cool_temp:
|
||||
name: "Cool Temp (Night)"
|
||||
icon: mdi:snowflake
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_away_cool_temp:
|
||||
name: "Cool Temp (Away)"
|
||||
icon: mdi:snowflake
|
||||
mode: slider
|
||||
unit_of_measurement: "°C"
|
||||
min: 7
|
||||
max: 35
|
||||
step: 0.5
|
||||
|
||||
app_climate_thermostat_energy_saving_timeout:
|
||||
name: "Eco Timeout"
|
||||
icon: mdi:clock-fast
|
||||
unit_of_measurement: "sec"
|
||||
mode: slider
|
||||
min: 15
|
||||
max: 600
|
||||
step: 15
|
27
configuration/input_number/app_lighting_lighting.yaml
Normal file
27
configuration/input_number/app_lighting_lighting.yaml
Normal file
@ -0,0 +1,27 @@
|
||||
---
|
||||
app_light_light_lux_mininum:
|
||||
name: "Minimum Lux Limit"
|
||||
icon: mdi:tune
|
||||
unit_of_measurement: "lx"
|
||||
mode: slider
|
||||
min: 2
|
||||
max: 100
|
||||
step: 1
|
||||
|
||||
app_light_light_timeout_off_light:
|
||||
name: "Time Out to Off Lights"
|
||||
icon: mdi:tune
|
||||
unit_of_measurement: "sec"
|
||||
mode: slider
|
||||
min: 5
|
||||
max: 600
|
||||
step: 1
|
||||
|
||||
app_light_light_transition_time:
|
||||
name: "Light Transition Time"
|
||||
icon: mdi:tune
|
||||
unit_of_measurement: "sec"
|
||||
mode: slider
|
||||
min: 0
|
||||
max: 60
|
||||
step: 1
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user