Seite 2 von 2

Re: Globale Variablen und Funktionen

Verfasst: 1. Dez 2023 19:11
von udo1toni
Es gibt keine Funktionen in der Rules DSL.
Die letzte Rule (welche über Items statt Variablen arbeitet) kannst Du leicht auch über die UI eingeben, dazu kopierst Du lediglich den Code zwischen then und end (ohne diese beiden Schlüsselworte) und fügst ihn als DSL Code als Action ein. Der Teil zwischen when und then ist die Liste der Trigger, die die Rule auslösen.
Eine Rule zum Initialisieren der Items könnte ebenfalls leicht über die UI eingegeben werden, da weder die eine noch die andere Rule auf Extras zugreifen muss.

Im Übrigen kann das Lambda (der Teil Code zwischen [ und ]) beliebig komplex werden, man kann hier z.B. auch dafür sorgen, dass an das gerade verarbeitete Item nur unter gewissen Umständen ein Befehl gesendet wird, oder dass eine vorgegebene Temperatur unter bestimmten Voraussetzungen noch zusätzlich verändert wird, und, und, und.

Der Punkt ist: Dieser Ansatz ist weitaus effizienter als umständlich Funktionen zu schreiben. Wenn Du unbedingt Funktionen nutzen willst, musst Du JavaScript lernen (oder Ruby oder eine andere der angebotenen Sprachen).