Vorherigen Zustand eines Lichts herstellen?

MaggiMaikel

New member
Moin Moin zusammen,

ich werde mal meine Frage anhand eines Beispiels erklären.

Und zwar, habe ich eine Automation gebaut, das wenn mein TV abspielt das ein Licht orange wird (ist natürlich noch mehr daran gebunden, aber um den Rahmen nicht zu sprengen... ihr wisst bescheid :) ) und sobald der TV pausiert schaltet sich das Licht auf Hell und 25%.
Soweit so gut, jetzt habe ich aber eine andere Farbe zuvor dem Licht gegeben zum Beispiel blau und jetzt möchte ich natürlich, das wenn der TV wieder abspielt die Farbe auf blau bleibt und nicht wieder auf Orange switcht. Ergo suche ich eine Möglichkeit einen Zustand in einer Automation wieder herzustellen.

Ich hoffe ich konnte das halbwegs gut erklären.

VG
 

IvoryBalboa90

Active member
Easy!
Als Action den Dienst scene.create.
Gibst dem Kind ne ID, zb lichter_tv_vorher (alles klein schreiben) und haust bei snapshot entities alle Entitäten rein, deren aktueller Zustand hinterlegt werden soll.

Das machst du, bevor deine Lichter den Pause-Zustand bekommen. Nach der Pause die neu erstellte Szene aufrufen über scene.turn_on
 

MaggiMaikel

New member
Erstmal vielen Dank für die schnelle Antwort.

Leider habe ich das als Anfänger nur bedingt verstanden. Ich weiß ich leider nicht was oder wie ich das in den Snapshot Entitäten schreiben soll. Sorry ich habe leider noch nicht die Erfahrung. Vielleicht hast du ja Lust es idiotensicher zu erklären für mich ^^
 

IvoryBalboa90

Active member
Du hast doch ein oder mehrere Lichter, die in deinem Fall Orange bzw Blau sind. Deren Entität/en trägst du bei snapshot ein, also zb.
"light.led_links, light.led_rechts".

Wird der Dienst ausgeführt wir der momentane Zustand gespeichert (Helligkeit, Lichtfarbe usw).

Dann machst du deine "Pause Beleuchtung" an.

Ist deine Pause vorbei, aktiviert du die Szene, die du eben erstellt hast (die mit den orangenen/blauen Lichtern)
 

MaggiMaikel

New member
Ok ich glaube ich habs verstanden. Ich werde das heute Abend mal ausgiebig Testen und später dann Bericht erstatten ob es geklappt hat oder nicht. Ich bin gespannt ob ich das hinbekomme :D
 

IvoryBalboa90

Active member
Viel Erfolg. Falls was ist, sag bescheid. Wir sind für dich da 😅

Ablauf war auch klar soweit?

- Du guckst TV, dein Licht ist zb Blau
*Pause wird eingeleitet*
- Du speicherst den aktuellen Zustand (also Blau) über scene.create mit klarer ID und den Entitäten, die Du nachher wiederherstellen willst.
- Pause (also dein Licht wird hell etc)
*Pause vorbei*
- du rufst die eben erstellte Szene wieder auf, Licht wird wieder blau.

Anmerkung: Die so erstellte Szene wird in den Einstellungen zwar angezeigt, ist aber nicht zum editieren etc gedacht. Die löscht sich auch eigenständig wieder. Ist also eine temporäre Szene. Aber für deinen Fall genau das richtige.
 

MaggiMaikel

New member
Ja ok das war auch sehr hilfreich, jetzt habe ich es noch besser verstanden. Würde es am liebsten sofort ausprobieren, muss nur leider erstmal los. Vielen vielen Dank für deine Hilfe
 

MaggiMaikel

New member
Ok bestens, nach einigem hin und her probieren habe ich es geschafft. Super vielen Dank nochmal für deine Hilfe.

So habe ich jetzt meinen Test aufgebaut, falls es Leute gibt die es Interessiert (natürlich habe ich nicht alles selbst in Yaml geschrieben) :D
_________________

Code:
alias: Test - letzte Farbe
description: ""
trigger:
  - platform: device
    device_id: hier steht deine Geräte ID
    domain: media_player
    entity_id: media_player.wz_tv
    type: playing
  - platform: device
    device_id: hier steht deine Geräte ID
    domain: media_player
    entity_id: media_player.wz_tv
    type: paused
    enabled: true
condition: []
action:
  - if:
      - condition: device
        device_id: hier steht deine Geräte ID
        domain: media_player
        entity_id: media_player.wz_tv
        type: is_paused
    then:
      - service: scene.create
        data:
          snapshot_entities: light.wz_licht_stehl_gr
          scene_id: stehlampe_gr_farbe_gespeichert
  - if:
      - condition: device
        device_id: hier steht deine Geräte ID
        domain: media_player
        entity_id: media_player.wz_tv
        type: is_paused
    then:
      - service: light.turn_on
        data:
          color_temp: 500
          brightness_pct: 25
        target:
          entity_id: light.wz_licht_stehl_gr
    enabled: true
  - if:
      - condition: device
        device_id: hier steht deine Geräte ID
        domain: media_player
        entity_id: media_player.wz_tv
        type: is_playing
    then:
      - service: scene.turn_on
        data: {}
        target:
          entity_id: scene.stehlampe_gr_farbe_gespeichert
mode: restart
 
Zuletzt bearbeitet:

IvoryBalboa90

Active member
Das passt sich so aber sehr schwer lesen und auch nicht per copy&paste benutzen.
Guck dir mal bitte den angepinnten Thread an und bearbeite den Code nochmal.
 

Letzte Anleitungen

Statistik des Forums

Themen
1.709
Beiträge
21.286
Mitglieder
1.217
Neuestes Mitglied
DUC750
Oben