Geräte abstrahieren / Aliasnamen benutzen

Hallo zusammen,

ich bin neu bei HA und versuche mich in der Automatisierung einiger Aufgaben. Mir ist dabei aber aufgefallen, dass immer wieder in den Automatisierungen ein


device_id: 0123456789abcdef01234…
entity_id: switch.mein_switchname

benutzt wird. Dabei hat jedes Gerät oft viele Einträge: in mehreren Automatisierungen in mehreren conditionen/Actionen und dort noch evtl. mit IF-THEN-ELSE-Ausprägungen. Dann kann die device_id beispielsweise schon mal an 10 Stellen stehen.

Sollte das Gerät ersetzt werden (z.B. defekte LED-Birne durch neue ersetzt), dann muss man an allen Stellen die Device-ID (und ggf mehr) ändern.

Kann man für diese gerätespezifischen Informationen ein Alias erzeugen und dann überall nur noch mit dem Alias arbeiten? Das man also bei einem Gerätetausch nur noch an einer Stelle zB die Device-ID ändern muss und alles “läuft wieder”?

Bei der “entity_id” kann man einem neuen Gerät ja z.B. den Namen des alten Gerätes geben. Aber leider verlangt HA an vielen Stellen zusätzlich die device_id!

Ich bin auf Eure Lösungsvorschläge gespannt!

Schöne Grüße
Grisu

Moin,
bei Led Lampen macht vielleicht eine Gruppe sinn, da du wahrscheinlich mehr als eine Pro Zimmer hast.
Einstellungen > Geräte & Dienste > Helfer und da kannst du eine Gruppe erstellen.
Jetzt hast du für alle Lampen in der Gruppe eine entity_id.

Wenn du jetzt ein Lampe wechselst gehst du in die Gruppen Einstellung nimmst die alte raus und die neue rein und musst keine Automation anpassen wenn du überall mit der gruppen entity_id gearbeitet hast.

Edit:
Oder du nimmst nicht überall die Plattform device (Gerät)

description: ""
mode: single
trigger:
  - type: motion
    platform: device
    device_id: ccbd4c5f10085d2c03d01993d6b5ddce
    entity_id: binary_sensor.bewegungsmelder_flur
    domain: binary_sensor
  - platform: state
    entity_id:
      - binary_sensor.bewegungsmelder_flur
    from: "off"
    to: "on"
condition: []
action:
  - type: turn_on
    device_id: 5909790f0d316dd86e66020d689e006e
    entity_id: switch.flur
    domain: switch
  - service: switch.turn_on
    data: {}
    target:
      entity_id: switch.flur


beide Auslöser und Aktionen machen das gleiche

LG
Tobi

Hallo Tobi,

vielen Dank für Deine Antwort.

Gruppen kommen leider hier nicht zum Einsatz.

Dein Vorschlag scheint zumindest in einem weiten Umfeld zu funktionieren, allerdings finde ich bei den Triggern in der Automatisierung nicht immer eine Lösung, bzw. finde kein Event oder State, auf den man abfragen kann.

Das ist z.B. bei Shelly beim click (single, double, trible, long) der Fall. Allerdings habe ich auch im Internet hier nur eine Lösung über MQTT gefunden
Geht:

- platform: device
  device_id: 11223344....aabb
  domain: shelly
  type: single
  subtype: button

Und geht NICHT:

- platform: event
  entity_id: shelly.click
  event_data:
    device: shelly.mein_Shelly
    channel: 1
    click_type: single_push

Aber ansonsten scheint es mich ein gutes Stück weiter zu bringen. Für Deinen Tipp vielen Dank!

Gruß
Grisu