Seite 2 von 2
Re: OH3 Blockly
Verfasst: 6. Feb 2021 16:20
von am66798
Nun, meine erste erstellte Rule wird erst gar nicht ausgeführt. Also so weit wie du bin ich noch nicht. Ich bin gerade dabei eine zweite Rule mit Blockly zu erstellen, danach werde ich mich erst um das Ausführen der Rules kümmern. Wenn ich das Problem nicht lösen kann, werde ich aber einen neuen Beitrag im Forum erstellen.
Re: OH3 Blockly
Verfasst: 6. Feb 2021 21:40
von lenschith
Zur Info. Ich hab auf git den passenden Bug gefunden. Das funktioniert nicht

Geht im Augenblick nur über den Umweg mit der Variable.
https://github.com/openhab/openhab-webui/issues/836
Re: OH3 Blockly
Verfasst: 8. Feb 2021 20:52
von Detlef
Hallo
hier ein Beispiel was funktionier.
Code DSL 1
Code: Alles auswählen
rule "Temperatur / Bad Doris / Ist mit Soll vergleichen" // Doris Badezimmer Temperaturberechnung Fußb.
when
Item OG1_Bathroom_Handtuchheizung_Doris changed or
Item Doris_Bad_Temperatur_Soll_Setpoint changed
then
var double wtsp=(Doris_Bad_Temperatur_Soll_Setpoint.state as DecimalType).doubleValue
var double wtsi=(OG1_Bathroom_Handtuchheizung_Doris.state as DecimalType).doubleValue
if (wtsi < wtsp && Rule_Betriebsart.state == 12.0 && Sommer_Winter.state == 4.0) //abfrage UrlaubSommerWinter
{
if (OG1_Bathroom_Heizung.state == OFF)
{
}
sendCommand (OG1_Bathroom_Heizung, "ON")
}
else
{
if (OG1_Bathroom_Heizung.state == ON)
sendCommand (OG1_Bathroom_Heizung, "OFF")
}
end
Code Blockly
Für mich nicht so einfach so eine abfrage zu erstellen. Habe für die Umstellung der Rule Tage gebraucht.
Jetzt läuft die Rules aber.
Code: Alles auswählen
var tes, Ye;
tes = itemRegistry.getItem('Schlafen_Temperatur_Soll_Setpoint').getState();
Ye = itemRegistry.getItem('Schlafentemperaturehumidity66_Temperature').getState();
if (Ye < tes) {
if (itemRegistry.getItem('BadSchlafraum1OGHeizVentil1Bad2Schlafen_Switch2').getState() == 'OFF') {
events.sendCommand('BadSchlafraum1OGHeizVentil1Bad2Schlafen_Switch2', 'ON');
}
} else {
if (itemRegistry.getItem('BadSchlafraum1OGHeizVentil1Bad2Schlafen_Switch2').getState() == 'ON') {
events.sendCommand('BadSchlafraum1OGHeizVentil1Bad2Schlafen_Switch2', 'OFF');
}
}
.
Re: OH3 Blockly
Verfasst: 19. Feb 2021 19:44
von Mr. BJ
Mal so aus der Luft geschossen...das get item state mit create text with zu einem String umwandeln und dann in deine Rechner-Logic.