Pulsante e MQTT trigger - test motion light new

This commit is contained in:
2025-01-30 00:24:45 +01:00
parent c7260d8b64
commit 390b5c5972
6 changed files with 301 additions and 131 deletions

View File

@@ -0,0 +1,71 @@
blueprint:
name: Motion-activated Light NEW
description: Turn on a light when motion is detected NEW.
domain: automation
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/motion_light.yaml
author: Home Assistant
input:
motion_entity1:
name: Motion-sensor1
selector:
entity:
filter:
device_class: switch
domain: binary_sensor
motion_entity2:
name: Motion-sensor2
selector:
entity:
filter:
device_class: motion
domain: binary_sensor
light_target:
name: Light
selector:
target:
entity:
domain: light
no_motion_wait:
name: Wait time
description: Time to leave the light on after last motion is detected.
default: 20
selector:
number:
min: 0
max: 300
unit_of_measurement: seconds
# If motion is detected within the delay,
# we restart the script.
mode: restart
max_exceeded: silent
triggers:
- trigger: state
entity_id: !input motion_entity1
from: "off"
to: "on"
- trigger: state
entity_id: !input motion_entity2
from: "off"
to: "on"
actions:
- alias: "Turn on the light"
action: light.turn_on
target: !input light_target
- alias: "Wait until there is no motion from device1"
wait_for_trigger:
- trigger: state
entity_id: !input motion_entity1
from: "on"
to: "off"
- trigger: state
entity_id: !input motion_entity2
from: "on"
to: "off"
- alias: "Wait the number of seconds that has been set"
delay: !input no_motion_wait
- alias: "Turn off the light"
action: light.turn_off
target: !input light_target

View File

@@ -33,6 +33,12 @@ blueprint:
default: on
selector:
boolean:
dont_disturb_condition:
name: dont_disturb_light_control
description: Controls if lamp brightness has to be reduced to not disturb
default: on
selector:
boolean:
no_motion_wait:
name: Wait time
description: Time to leave the light on after last motion is detected.
@@ -89,11 +95,21 @@ actions:
id:
- motion-detected
then:
- action: light.turn_on
target: !input light_target
data:
brightness_pct: 100
color_temp_kelvin: 2700
- if:
- condition: template
value_template: "{{ dont_disturb_condition }}"
then:
- action: light.turn_on
target: !input light_target
data:
brightness_pct: states('dont_disturb_light_brightness')
color_temp_kelvin: 2500
else:
- action: light.turn_on
target: !input light_target
data:
brightness_pct: 100
color_temp_kelvin: 2500
else:
- action: light.turn_off
metadata: {}
@@ -107,11 +123,21 @@ actions:
id:
- motion-detected
then:
- action: light.turn_on
target: !input light_target
data:
brightness_pct: 100
color_temp_kelvin: 2700
- if:
- condition: template
value_template: "{{ dont_disturb_condition }}"
then:
- action: light.turn_on
target: !input light_target
data:
brightness_pct: states('dont_disturb_light_brightness')
color_temp_kelvin: 2500
else:
- action: light.turn_on
target: !input light_target
data:
brightness_pct: 100
color_temp_kelvin: 2500
else:
- action: light.turn_off
metadata: {}

View File

@@ -111,8 +111,7 @@ actions:
then:
- if:
- condition: template
# value_template: "{{ use_dont_disturb }}"
value_template: "{{ dont_disturb_nighttime }}"
value_template: "{{ dont_disturb_condition }}"
then:
- action: light.turn_on
target: !input light_target
@@ -142,7 +141,7 @@ actions:
then:
- if:
- condition: template
value_template: "{{ use_dont_disturb }}"
value_template: "{{ dont_disturb_condition }}"
then:
- action: light.turn_on
target: !input light_target