OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
-
- Beiträge: 56
- Registriert: 2. Apr 2018 15:45
OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
Hallo zusammen,
wenn ich in OH3 auf der Web Oberfläche eine Rule erstelle, dann nahm ich an, dass ich diese mit dem Button "run now" testen kann. Dass das also den Trigger ersetzt und die Aktion abhängig von weiteren Bedingungen ausführt.
Tuts aber nicht.
Ich habe ein Item "_Rasenzeitsteuerung" mit den Zuständen on und off. In einer bereits täglich laufenden Rule wird dieser Schalter ausgewertet und auch beachtet. Bei off zündet die Rule die "then" Bedingung nicht. Alles suppi.
Nur wenn ich die gleiche Rule mit "run now" testen will (oder eben andere Bedingungen), dann wir die "then" Bedingung immer ausgeführt.
In der OH Doku habe ich nichts zu dem Button "run now" finden können. Hat jemand eine Idee, was das dann soll, oder besser noch, wie ich meine Rule wirklich testen kann?
Danke euch!
Grüße
Martin
wenn ich in OH3 auf der Web Oberfläche eine Rule erstelle, dann nahm ich an, dass ich diese mit dem Button "run now" testen kann. Dass das also den Trigger ersetzt und die Aktion abhängig von weiteren Bedingungen ausführt.
Tuts aber nicht.
Ich habe ein Item "_Rasenzeitsteuerung" mit den Zuständen on und off. In einer bereits täglich laufenden Rule wird dieser Schalter ausgewertet und auch beachtet. Bei off zündet die Rule die "then" Bedingung nicht. Alles suppi.
Nur wenn ich die gleiche Rule mit "run now" testen will (oder eben andere Bedingungen), dann wir die "then" Bedingung immer ausgeführt.
In der OH Doku habe ich nichts zu dem Button "run now" finden können. Hat jemand eine Idee, was das dann soll, oder besser noch, wie ich meine Rule wirklich testen kann?
Danke euch!
Grüße
Martin
- peter-pan
- Beiträge: 2773
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
... das kann ich mir fast nicht vorstellen. Wie sehen denn die Regeln aus ?
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
-
- Beiträge: 56
- Registriert: 2. Apr 2018 15:45
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
isch schwör!
Test war das Item Rasenzeitsteuerung. Ist das auf OFF, zündet die Regel wie gewünscht im Realbetrieb NICHT. Im Test aber immer, unabhängig von der Schalterstellung des Item Rasenzeitsteuerung.
Grüße
Martin
Code: Alles auswählen
triggers:
- id: "1"
configuration:
cronExpression: 0 0 7,9,11,13,15,17,19 * * ? *
type: timer.GenericCronTrigger
conditions:
- inputs: {}
id: "9"
configuration:
itemName: Rasenzeitsteuerung
state: ON
operator: =
type: core.ItemStateCondition
- inputs: {}
id: "3"
label: weniger als 1 mm in den letzten 24 h
configuration:
itemName: OneCallAPIhistorydata_Regen
state: "1"
operator: <=
type: core.ItemStateCondition
- inputs: {}
id: "4"
label: derzeit weniger als 0,1 mm Regen
configuration:
itemName: Wetterinformationen_Regen
state: "0.1"
operator: <=
type: core.ItemStateCondition
- inputs: {}
id: "5"
label: in den nächsten 3 Stunden weniger als 0,3 mm Regen
configuration:
itemName: Localweatherandforecast_VorhergesagterRegen
state: "0.3"
operator: <=
type: core.ItemStateCondition
actions:
- inputs: {}
id: "2"
configuration:
itemName: SchattenrasenAnAus
command: ON
type: core.ItemCommandAction
Grüße
Martin
- peter-pan
- Beiträge: 2773
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
...mea culpa. Ich hab's gerade mal ausprobiert mit einer Test-Rule und es wurde die IF-Anweisung schlicht und einfach nicht beachtet. Das ist ja mal richtig sch....ade.
Wenn ich das gleiche mit einer DSL-Rule erledige und "run now" anklicke, dann werden die Bedingungen aber richtig behandelt.
Ist das ein Bug, oder sind wir zu blöd
???
Wenn ich das gleiche mit einer DSL-Rule erledige und "run now" anklicke, dann werden die Bedingungen aber richtig behandelt.
Ist das ein Bug, oder sind wir zu blöd


Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
- udo1toni
- Beiträge: 15269
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
Ich glaube, da herrscht ein Missverständnis.
Der Trigger startet die Rule, unter der Bedingung, die unter Only If definiert ist.
Der Run Now Knopf startet die Rule. Punkt.
Der Trigger startet die Rule, unter der Bedingung, die unter Only If definiert ist.
Der Run Now Knopf startet die Rule. Punkt.
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
- peter-pan
- Beiträge: 2773
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
...sorry, das hab ich jetzt nicht ganz verstanden.
Ich habe mal zum besseren Verständnis eine kleine Regel gemacht. Einmal über die WebUI mit dem Rules-Designer:
Code: Alles auswählen
triggers:
- id: "1"
configuration:
itemName: Sonoff_Basic_03
state: ON
previousState: OFF
type: core.ItemStateChangeTrigger
conditions:
- inputs: {}
id: "3"
configuration:
itemName: Sonoff_T1_01
state: ON
operator: =
type: core.ItemStateCondition
actions:
- inputs: {}
id: "2"
configuration:
itemName: Sonoff_Basic_04
command: ON
type: core.ItemCommandAction
Code: Alles auswählen
// Triggers:
// - When Sonoff_Basic_03 changed to ON
// context: test-7
if (Sonoff_T1_01.state == ON) {
logInfo("Sonoff-Schalter", "Deckenlampe brennt")
Sonoff_Basic_04.sendCommand(ON)
}
else {
logInfo("Sonoff-Schalter","Deckenlampe ist nicht angeschaltet {}", Sonoff_T1_01.state )
}
Wenn ich das (für mein Verständnis) gleiche mit der DSL-Rule mache und den "Run_Now"-Knopf drücke, wird die IF-Anweisung (if (Sonoff_T1_01.state == ON)) jedoch berücksichtigt.
Wo ist der Denkfehler ?
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
- udo1toni
- Beiträge: 15269
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)
Der Denkfehler liegt darin, dass Du den But Only If-Bereich als Teil Deines Codes siehst (was er nicht ist). Conditions sind Conditions, keine bedingten Verzweigungen.
Bei klassischen Rules gibt es keine Conditions, stattdessen wird die Rule bei jedem Trigger ausgeführt. Es bleibt dann dem Code überlassen, geforderte Randbedingungen abzuprüfen.
Wenn Du so willst, sind die Conditions das nachgerüstete AND im Trigger-Teil (wobei das natürlich so nicht stimmt, aber man kann es sich so vorstellen...)
Bei klassischen Rules gibt es keine Conditions, stattdessen wird die Rule bei jedem Trigger ausgeführt. Es bleibt dann dem Code überlassen, geforderte Randbedingungen abzuprüfen.
Wenn Du so willst, sind die Conditions das nachgerüstete AND im Trigger-Teil (wobei das natürlich so nicht stimmt, aber man kann es sich so vorstellen...)
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
- peter-pan
- Beiträge: 2773
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: OH3 UI, Rules: Zweck von "run now" (Ctrl-R)


Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian