Seite 1 von 4

OH3 Beleuchtung rule

Verfasst: 13. Jan 2021 22:43
von SIDE22
Nabend,
Bin aktuell dabei meine letzten Rules auf OH3 anzupassen leider gibt es bei meiner Beleuchtung rule wohl ein Fehler mit dem Timer hier Mal die rule

Code: Alles auswählen

var Timer tFlur = null
var Timer tTreppe = null

val licht = triggeringItem.name.split("_").get(0)                       // "Flur" oder "Treppe"
val Licht = gLichter.members.filter[i|i.name.contains(licht)].head      // gLichtFlur oder gLichtTreppe
if(Licht.state != 100) {                                                // Licht nicht in Dauerbetrieb
  if(gHelligkeit.state < 60) {                                          // falls nicht Flur und dunkel
    gLichtTreppe.sendCommand(25)                                        // entsprechendes Licht auf 25%
    tTreppe?.cancel                                                      // Timer abbrechen
    tTreppe = createTimer(now.plusSeconds(20),[|                        // Timer anlegen
      gLichtTreppe.sendCommand(0)                                       // Licht aus
    ])
  } else if(licht == "Flur") {                                         // falls Flur, Treppentimer
    gLichtFlur.sendCommand(25)                                         // entsprechendes Licht auf 25%
    tFlur?.cancel                                                       // Timer abbrechen
    tFlur = createTimer(now.plusSeconds(20),[|                         // Timer anlegen
      gLichtFlur.sendCommand(0)                                        // Licht aus
    ])
  }
}

Vielleicht weiß ja einer von euch weiter

LG
Florian

Re: OH3 Beleuchtung rule

Verfasst: 13. Jan 2021 23:41
von udo1toni
Das ist aber nicht die ganze Rule...

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 09:17
von ThomasW
Möchtest du die Rule über die UI einbinden oder über eine Datei.

Hast du evt. eine Fehlermeldung aus dem Log?
Bitte wen möglich das Problem beschreiben.

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 12:32
von SIDE22
hey,
habe die rule über die UI drin so das der auslöser selber jetzt nicht mit drin steht
im log steht das hier

Code: Alles auswählen

2021-01-14 12:31:04.948 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'beleuchtung5-innen' failed: cannot invoke method public abstract java.lang.String org.openhab.core.items.Item.getName() on null
LG
Florian

OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 12:54
von udo1toni
Dann musst Du aber die globalen Variablen an anderer Stelle definieren :)

Und wie sehen die Trigger aus? Das wäre nicht unwichtig.

Gesendet von iPad mit Tapatalk

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 13:05
von SIDE22
also in OH2 hatte ich

Code: Alles auswählen

when
    Member of gMelder received update ON
da ich auf die OH3 UI umstelle hab ich es nun so
Unbenannt.PNG
das scheint ja auch zu klappen mit dem auslöser nur was dann passiert geht ja nicht wirklich ..
und als script hab ich DSL ausgewählt und dort steht das drin was ich als haupt thema hier habe

LG
Florian

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 13:49
von udo1toni
changed to ON ist aber etwas anders als received update ON.

Grundsätzlich sieht es aber gut aus. Aus irgendeinem Grund ist triggeringItem nicht gesetzt (das ist die einzige Zeile, in der .name verwendet wird und die den Fehler schmeißen könnte).


Gesendet von iPad mit Tapatalk

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 15:39
von SIDE22
Hab den Auslöser Mal zu received Update ON geändert aber Fehler ist noch da

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 16:50
von udo1toni
Wie gesagt... das ist sicher nicht der Grund, warum die Rule nicht funktioniert.


Gesendet von iPad mit Tapatalk

Re: OH3 Beleuchtung rule

Verfasst: 14. Jan 2021 17:44
von SIDE22
Also muss ich die rule dann wohl umschreiben ?
Wüsste so sonnst auch nicht was man anpassen müsste