FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: rhoffm34 am 13 September 2025, 01:49:35

Titel: [gelöst] Zustände von 6 Devices auswerten und Dummy nach Priorität setzten, wie
Beitrag von: rhoffm34 am 13 September 2025, 01:49:35
Hallo zusammen.

Ich möchte in FHEM die Zustände von 6 Devices (z. B. dev1 ... dev6) beobachten, und in einem Dummy (prioDummy) immer den Wert a–f setzen, abhängig vom ersten Device, das aktiv ist – mit Priorität:

dev1 = on → a (höchste Priorität)

dev2 = on → b

dev3 = on → c

dev4 = on → d

dev5 = on → e

dev6 = on → f

Also das device welches auf on steht und die höchste prio hat setzt den prioDummy. Wnn also alle ausser dev4 auf off sind dann soll prioDummy = d gesetzt werden. Ändert sich zusätzlich dev5 auf on passiert nichts, ändert sich dev3 auf on soll prioDummy = c gesetzt werden.

Hat jemand eine Idee wie das umzusetzen ist?

Gruß,

rhoffm34
Titel: Aw: Zustände von 6 Devices auswerten und Dummy nach Priorität setzten, wie umsetzten
Beitrag von: rhoffm34 am 13 September 2025, 02:10:29
ausprobiert habe ich folgendes DOIF:


(
    [dev1] eq "1" ? { fhem("set prioDummy a") }
  : [dev2] eq "2" ? { fhem("set prioDummy b") }
  : [dev3] eq "3" ? { fhem("set prioDummy c") }
  : [dev4] eq "4" ? { fhem("set prioDummy d") }
  : [dev5] eq "5" ? { fhem("set prioDummy e") }
  : [dev6] eq "6" ? { fhem("set prioDummy f") }
  : { fhem("set prioDummy unbestimmt") }
)

es scheint soweit zu funktionieren aber es kommt eine Warnmeldung:

warning
condition c01: Use of uninitialized value in anonymous hash ({})

Titel: Aw: Zustände von 6 Devices auswerten und Dummy nach Priorität setzten, wie umsetzten
Beitrag von: rhoffm34 am 13 September 2025, 02:53:21
Hab den Fehler gefunden...

So ist richtig:

(
    [dev1] eq "1" ?  fhem("set prioDummy a")
  : [dev2] eq "2" ?  fhem("set prioDummy b")
  : [dev3] eq "3" ?  fhem("set prioDummy c")
  : [dev4] eq "4" ?  fhem("set prioDummy d")
  : [dev5] eq "5" ?  fhem("set prioDummy e")
  : [dev6] eq "6" ?  fhem("set prioDummy f")
  : { fhem("set prioDummy unbestimmt") }
)
Titel: Aw: [gelöst] Zustände von 6 Devices auswerten und Dummy nach Priorität setzten, wie
Beitrag von: betateilchen am 13 September 2025, 12:28:11
Das könnte man auch in einem structure-device abbilden, das die Auswertung automatisch macht und genau dafür gedacht ist.
Titel: Aw: [gelöst] Zustände von 6 Devices auswerten und Dummy nach Priorität setzten, wie
Beitrag von: rhoffm34 am 13 September 2025, 13:53:35
Wie würde das dannaussehen und wäre das vorteilhafter?
Titel: Aw: [gelöst] Zustände von 6 Devices auswerten und Dummy nach Priorität setzten, wie
Beitrag von: passibe am 13 September 2025, 19:25:11
Siehe
https://commandref.fhem.de/commandref.html#structure
oder
https://commandref.fhem.de/commandref_DE.html#structure