Seite 1 von 1
Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 15:59
von Rainer
Hallo, habe mal wieder ein grundlegendes Verständnissproblem, da ich mit den Möglichkeiten von yaml
nicht so wirklich klar komme.
Ich habe die Entität media_player.wohnzimmer welche ein Attribut volume_level besitzt. Da ich hierauf nicht direkt zugreifen kann habe ich versucht ein Template zu erstellen. Mit sensor kann ich den Wert zwar auslesen, aber nicht ändern bzw. nicht als id für einen Schieberegler verwenden.
Habe nach längeren suchen und lesen nachfolgenden configuration.yaml Eintrag zusammengestellt, welcher aber natürlich nicht funktioniert, da ich zu geringe Kenntnisse habe.
Code: Alles auswählen
template:
- number:
- name: LautstaerkeSonos
state: >-
{{ state_attr('media_player.wohnzimmer', 'volume_level') }}
unique_id: lautstaerke
step: 0.1
set_value:
- action: call-service
service: media_player.volume_level
target:
entity_id:
- media_player.wohnzimmer
data:
volume_level: {{value}} <-- value is undefiened
min: 0
max: 1
Für jede Hilfe schon mal vielen Dank.
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 17:26
von Osorkon
Hallo @Rainer und Herzlich Willkommen bei den SmartHome for Dummies!
Was Du brauchst ist einen Automatisierung. Welche bei Veränderung des Helfers Input Number die Lautstärke des Media Players einstellt.
Als Beispiel mit dem Helfer "input_number.lautstarke_bad" und dem Media Player "media_player.bad"
Code: Alles auswählen
alias: Test - Lautstärke Bad
description: ""
trigger:
- platform: state
entity_id:
- input_number.lautstarke_bad
condition: []
action:
- service: media_player.volume_set
data:
volume_level: |
{{states('input_number.lautstarke_bad') | int(0) / 100 }}
target:
entity_id: media_player.bad
mode: single
Den Input Number kannst Du dann z.B. als Mushroom Number Karte im Dashboard verwenden.
- Mushroom Number Karte.jpg (24.33 KiB) 1039 mal betrachtet
Gruß
Osorkon
EDIT: Template Sensoren, wenn Du denn einmal welche erstellen willst. Kannst Du ohne YAML gefrickel einfach als Helfer über die GUI erstellen.
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 18:26
von Rainer
meine Lautstärke hat leider keine Entity Id sondern ist nur als Attribut einer Entity vorhanden. Wie soll ich ohne template darauf zugreifen?
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 19:08
von Osorkon
Da sprichst die Media Player Entität an.
Über den Service media_player.volume_set.
Den Input Number musst Du natürlich erstmal unter Helfer erstellen.
Mit der Automatisierung setzt Du dann die Lautstärke des Media Players auf den Wert des Input Numbers.
Gruß Osorkon
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 19:35
von Rainer
Danke schon mal für deine Mühe, aber ich bekomme bei Erstellung der Automation
folgenden Hineweis : Message malformed: extra keys not allowed @ data['0']
Ich habe folgende Code erfasst und den Input Helfer lautstaerke erstellt.
Code: Alles auswählen
- id: '1696697803359'
alias: Neue Automatisierung
description: ''
trigger:
- platform: state
entity_id:
- input_number.lautstaerke
condition: []
action:
- service: media_player.volume_set
data:
volume_level: |
{{states('input_number.lautstaerke') | int(0) / 100 }}
target:
entity_id: media_player
mode: single
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 21:01
von Osorkon
Du hast bei der Aktion, bei der Angabe der Entität einen Fehler.
Es muss lauten:
und nicht
BTW: Wie erstellst Du den Deine Automatisierungen?
Nicht in der GUI?
Gruß
Osorkon
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 21:29
von Rainer
Mit media_player.wohnzimmer bekomme ich den selben Fehler beim abspeichern angezeigt.
Zu deiner Frage, normalerweise mit der GUI, in diesem Fall aber als yaml bearbeiten.
PS.: Habe eigentlich nichts geändert und plötzlich lies es sich abspeichern und jetzt scheint es zu gehen.
Muss es noch ausführlich testen, aber schon amls vielenbDank
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Sa 7. Okt 2023, 22:01
von Osorkon
Hier noch eine Erweiterung, damit auch der Input Number aktualisiert wird, wenn Du die Lautstärke am Media Player oder über einen anderen Weg durchführst.
Code: Alles auswählen
alias: Lautstärke Wohnzimmer
description: ""
trigger:
- platform: state
entity_id:
- input_number.lautstaerke
id: indirekt
- platform: state
entity_id:
- media_player.wohnzimmer
attribute: volume_level
id: direkt
condition: []
action:
- choose:
- conditions:
- condition: trigger
id:
- direkt
sequence:
- service: input_number.set_value
data:
value: >
{{ state_attr('media_player.wohnzimmer','volume_level') * 100 | int(0)
}}
target:
entity_id: input_number.lautstaerke
- conditions:
- condition: trigger
id:
- indirekt
sequence:
- service: media_player.volume_set
data:
volume_level: |
{{states('input_number.lautstaerke') | int(0) / 100 }}
target:
entity_id: media_player.wohnzimmer
mode: single
BTW: Du kannst die Automatisierung direkt in der GUI im YAML Modus bearbeiten und einfach zischen visuellen Editor und YAML umschalten.
Die 3 Punkte oben rechts.
- Automatisierung-Menü.jpg (25.36 KiB) 1011 mal betrachtet
Gruß
Osorkon
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Mo 9. Okt 2023, 12:13
von Rainer
Super was du, da zusammen gebracht hast. Es funktioniert im wesentlichen und ich kann mit meinen
geringen Kenntnisse sogar das meiste verstehen und nachvollziehen.
Was noch nicht ganz funktioniert, ist wenn von dritter Seite im Media player die Lautstärke verendert
wurde, automatisch auch den Wert von input_number.lautstaerke im slider geändert sein sollte.
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Mo 9. Okt 2023, 12:49
von Osorkon
Rainer hat geschrieben: ↑Mo 9. Okt 2023, 12:13
Was noch nicht ganz funktioniert, ist wenn von dritter Seite im Media player die Lautstärke verendert
wurde, automatisch auch den Wert von input_number.lautstaerke im slider geändert sein sollte.
Auch nicht mit dem vom mir bereitgestellter Automatisierung?
Es ist ja nicht so, dass ich die Automatisierung bei mir nicht getestet habe. Geprüft und für gut befunden.
Hast Du mal penibel geprüft ob die Entität exakt den Deiner entsprechen?
Gruß
Osorkon
Re: Template für einen Sensorwert als Schieberegler
Verfasst: Mo 9. Okt 2023, 13:58
von Rainer
Natürlich hattest du recht.
5 x Zeile für Zeile verglichen !?
Beim 6. Mal Schreibfehler gefunden.
Vielen Dank, funktioniert besser als ursprünglich geplant.