Openhab Blockly Bewegungsmelder Bewegungszähler
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Openhab Blockly Bewegungsmelder Bewegungszähler
Mein Punkt ist: der Code ist mindestens nicht vollständig, alternativ ist er falsch erstellt. Der Code als solches wird schon von Blockly erzeugt sein (und die Ansicht ist normalerweise hilfreicher als das Bild) aber entweder fehlt die Definition der lokalen Variablen, oder aber ein Item wurde als Variable verwendet.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 38
- Registriert: 1. Sep 2022 09:59
Re: Openhab Blockly Bewegungsmelder Bewegungszähler
Hallo,
vielen lieben Dank für die Hilfen.
Ich bin Anfänger und versuche Eure Fragen zu verstehen.
Auslöser der Rule ist
"item changed" vom Bewgungsmelder, item "Bewegungsmelder_Raum_Stromspeicher_Keller_Bewegungszahler", das die Anzahl der Bewegungen zählt (mein Innogy-Bewegungsmelder hat kein "Motion on" oder ähnliches)
Leider kann ich keine Screenprints einfügen.
Deshalb der von Blocly generierte Code:
vielen lieben Dank für die Hilfen.
Ich bin Anfänger und versuche Eure Fragen zu verstehen.
Auslöser der Rule ist
"item changed" vom Bewgungsmelder, item "Bewegungsmelder_Raum_Stromspeicher_Keller_Bewegungszahler", das die Anzahl der Bewegungen zählt (mein Innogy-Bewegungsmelder hat kein "Motion on" oder ähnliches)
Leider kann ich keine Screenprints einfügen.
Deshalb der von Blocly generierte Code:
Code: Alles auswählen
var scriptExecution = Java.type('org.openhab.core.model.script.actions.ScriptExecution');
var zdt = Java.type('java.time.ZonedDateTime');
if (typeof this.timers === 'undefined') {
this.timers = [];
}
if (itemRegistry.getItem('Lichtschalter_Shelly_Keller_Vorraum').getState() == 'OFF') {
events.sendCommand('Lichtschalter_Shelly_Keller_Vorraum', 'ON');
if (typeof this.timers['Timer_Licht_Vorraum'] === 'undefined' || this.timers['Timer_Licht_Vorraum'].hasTerminated()) {
this.timers['Timer_Licht_Vorraum'] = scriptExecution.createTimer(zdt.now().plusSeconds(30), function () {
events.sendCommand('Lichtschalter_Shelly_Keller_Vorraum', 'OFF');
})
}
}
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Openhab Blockly Bewegungsmelder Bewegungszähler
Es ist immer wichtig, Code auch als Code zu markieren. Bilder sind hingegen nur wenig bis gar nicht hilfreich 

openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 489
- Registriert: 30. Apr 2021 13:13
Re: Openhab Blockly Bewegungsmelder Bewegungszähler
Greg - schön das Du das Gewünschte erreicht hast. (Oder?)
Udo - Mmmh, sehe ich etwas anders. Wenn ein Einsteiger ein Blockly-Script anhand des JS-Code nachbauen will, sucht er sich dumm und dämlich. Beispielsweise hier bei Greg der Timer oder oben in meinem Vorschlag "event.itemState"
Udo - Mmmh, sehe ich etwas anders. Wenn ein Einsteiger ein Blockly-Script anhand des JS-Code nachbauen will, sucht er sich dumm und dämlich. Beispielsweise hier bei Greg der Timer oder oben in meinem Vorschlag "event.itemState"
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Openhab Blockly Bewegungsmelder Bewegungszähler
Mir ging es um die andere Richtung, also abgesehen davon, dass man die Blöcke dann immer noch finden muss.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 38
- Registriert: 1. Sep 2022 09:59
Re: Openhab Blockly Bewegungsmelder Bewegungszähler
Ja, es funktioniert - aber wie immer Problem gelöst -> nächstes Problem.Harka hat geschrieben: ↑21. Mär 2023 21:14 Greg - schön das Du das Gewünschte erreicht hast. (Oder?)
Udo - Mmmh, sehe ich etwas anders. Wenn ein Einsteiger ein Blockly-Script anhand des JS-Code nachbauen will, sucht er sich dumm und dämlich. Beispielsweise hier bei Greg der Timer oder oben in meinem Vorschlag "event.itemState"
Danke für die Hilfe