Seite 1 von 1

Blockly Script

Verfasst: 18. Feb 2021 18:18
von isostar1101
Hallo Zusammen,

ich wollte einige Scripte mit Blockly in Openhab 3 abbilden, gibt es da schon deutsche Beispiele? An JS-Script habe ich mich noch nicht getraut!
das alte DSL-Script sah so aus....

Code: Alles auswählen

rule "WC Heizung"


when
    Item GF_Toilette_Temperatur changed
or
    Item GF_Toilette_Window changed

then
    
    var Heizung = OFF  // Falls etwas schief geht, auf jeden Fall abschalten 
    var Number Temp = null
    if (GF_Toilette_Window.state == CLOSED)
    if(GF_Toilette_Temperatur.state instanceof Number) { //Gültiger Wert?
        Temp = GF_Toilette_Temperatur.state as Number
        if(now.getHourOfDay > 08 && now.getHourOfDay < 21) //innerhalb des Zeitfensters?
            if(Temp < 19 || (Temp < 20 && GF_Toilette_Heating.state == ON)) Heizung = ON
            
    }
    if(GF_Toilette_Heating.state != Heizung) GF_Toilette_Heating.sendCommand(Heizung)
    end



das Blockly sieht dann so aus der Fenstersensor ist noch nicht berücksichtigt. die Zeitspannne zwischen 8 und 21 Uhr wollte ich mit der Option "But only if the time is between 08:00 and 21:00"
Das Blockly sieht dann so wie im Anhang aus, funktioniert das so? Vielen Dank!
Bildschirmfoto 2021-02-18 um 18.06.42.png

Re: Blockly Script

Verfasst: 22. Feb 2021 19:06
von Detlef
Hallo
Ich bin Anfänger und glaube nicht das Blocky so richtig ist. Da sollte "state" (wert) abfragen werden und nicht das Item.
Ich habe das so gemacht ( Bild 2 . Die Rule macht eine Ist/Soll Abfrage.
Tip: Benutze "stat" zur abfrage des Wert eines Item.
Dann Log einbauen und die Rule testen.
So würde ich das machen.