106 lines
2.4 KiB
YAML
106 lines
2.4 KiB
YAML
blueprint:
|
|
name: NAD M12 - Smart Power Follow
|
|
description: >
|
|
Tænder NAD-forstærkeren når én eller flere media_players bliver aktive,
|
|
og slukker først når alle er slukkede.
|
|
|
|
domain: automation
|
|
|
|
input:
|
|
media_players:
|
|
name: Media Players
|
|
description: >
|
|
Vælg alle de media_players som skal kunne tænde NAD.
|
|
selector:
|
|
entity:
|
|
domain: media_player
|
|
multiple: true
|
|
|
|
amplifier:
|
|
name: NAD M12
|
|
selector:
|
|
entity:
|
|
domain: media_player
|
|
|
|
power_on_delay:
|
|
name: Forsinkelse før tænd
|
|
default: 0
|
|
selector:
|
|
number:
|
|
min: 0
|
|
max: 60
|
|
unit_of_measurement: sek
|
|
mode: box
|
|
|
|
power_off_delay:
|
|
name: Forsinkelse før sluk
|
|
default: 30
|
|
selector:
|
|
number:
|
|
min: 0
|
|
max: 600
|
|
unit_of_measurement: sek
|
|
mode: box
|
|
|
|
mode: restart
|
|
|
|
trigger:
|
|
- platform: state
|
|
entity_id: !input media_players
|
|
|
|
variables:
|
|
players: !input media_players
|
|
|
|
action:
|
|
|
|
- variables:
|
|
active_players: >
|
|
{{
|
|
expand(players)
|
|
| rejectattr('state','in',
|
|
['off','unknown','unavailable'])
|
|
| list
|
|
}}
|
|
|
|
- choose:
|
|
|
|
###################################################
|
|
## Min. én enhed er aktiv -> Tænd NAD
|
|
###################################################
|
|
|
|
- conditions:
|
|
- condition: template
|
|
value_template: "{{ active_players | count > 0 }}"
|
|
sequence:
|
|
|
|
- delay:
|
|
seconds: !input power_on_delay
|
|
|
|
- service: media_player.turn_on
|
|
target:
|
|
entity_id: !input amplifier
|
|
|
|
###################################################
|
|
## Alle enheder er OFF -> Sluk NAD
|
|
###################################################
|
|
|
|
default:
|
|
|
|
- delay:
|
|
seconds: !input power_off_delay
|
|
|
|
- variables:
|
|
active_players: >
|
|
{{
|
|
expand(players)
|
|
| rejectattr('state','in',
|
|
['off','unknown','unavailable'])
|
|
| list
|
|
}}
|
|
|
|
- condition: template
|
|
value_template: "{{ active_players | count == 0 }}"
|
|
|
|
- service: media_player.turn_off
|
|
target:
|
|
entity_id: !input amplifier |