od 1 min až do 1 hod.
Testováno se skupinou 12 světel HUE, má i český popis

Kód: Vybrat vše
blueprint:
name: Postupem času snižuje nebo zvyšuje jas světla
description: |
# Postupem času sníží nebo zvýší jas světla
domain: script
input:
light_entity:
name: Entita světla
description: "Vyberte cílové světlo\n\n
_entita světla nebo skupiny_"
selector:
entity:
filter:
domain: light
multiple: false
transition_time:
name: Čas přechodu
description: "Vyberte čas přechodu\n\n
_min je 60 sekund, max je 3600 sekund = 1 hodina_"
default: 60
selector:
number:
min: 60
max: 3600
step: 1
unit_of_measurement: seconds
mode: slider
target_brightness:
name: Cílový jas
description: "Vyberte cilový jas\n\n
_default je 100%_"
default: 100
selector:
number:
min: 0
max: 100
step: 1
unit_of_measurement: '%'
mode: slider
initial_brightness:
name: Počáteční jas
description: "Vyberte počáteční jas\n\n
_default je 10%_"
default: 1
selector:
number:
min: 0
max: 100
step: 1
unit_of_measurement: '%'
mode: slider
brightness_step:
name: Krok jasu
description: "Vyberte krok jasu\n\n
_výchozí je 2 %, pokud je cílový jas nižší než počáteční jas, je záporný_"
default: 2
selector:
number:
min: 1
max: 100
step: 1
unit_of_measurement: '%'
mode: slider
mode: single
icon: mdi:lightbulb-on-60
variables:
transition_time: !input transition_time
brightness_step: !input brightness_step
initial_brightness_pct: !input initial_brightness
target_brightness_pct: !input target_brightness
light_entity: !input light_entity
sequence:
- variables:
target_brightness: '{{(target_brightness_pct * 255 / 100)|round}}'
initial_brightness: '{{(initial_brightness_pct * 255 / 100)|round}}'
required_steps: '{{(((target_brightness_pct - initial_brightness_pct) / brightness_step))|round|int|abs}}'
delay_between_steps: '{{ (transition_time / required_steps)|round|int|abs }}'
brightness_step: '{% if (initial_brightness > target_brightness) -%}
{{ brightness_step * (-1) }}
{%- else -%}
{{ brightness_step }}
{%- endif %}'
- service: light.turn_on
data:
brightness: '{{ initial_brightness }}'
transition: 0
entity_id: !input light_entity
- repeat:
until:
- condition: template
value_template: '{% if (brightness_step > 0) -%}
{{ state_attr(light_entity, "brightness") | int(0) >= target_brightness }}
{%- else -%}
{{ state_attr(light_entity, "brightness") | int(0) <= target_brightness }}
{%- endif %}'
sequence:
- service: light.turn_on
data:
transition: 0
brightness_step_pct: '{{ brightness_step }}'
entity_id: !input light_entity
- delay:
hours: 0
minutes: 0
seconds: '{{ delay_between_steps }}'
milliseconds: 0