Regel macht nicht das was sie soll ....

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Caddy
Beiträge: 117
Registriert: 16. Nov 2018 08:21
Answers: 0

Regel macht nicht das was sie soll ....

Beitrag von Caddy »

Hallo,
vielleicht kann mal jemand drüber lesen und mir den Fehler sage :-)

ITEMs
Number SetBadTermostat "Thermostat Bad [%.1f °C]" <temperature> (gBad, gSetTempNacht) ...
Number SetToiTermostat "Thermostat Bad [%.1f °C]" <temperature> (gToi, gSetTempNacht) ...
Number SetWZTermostat "Thermostat Bad [%.1f °C]" <temperature> (gWZ, gSetTempNacht) ...
Number SetSZTermostat "Thermostat Bad [%.1f °C]" <temperature> (gSZ, gSetTempNacht) ...


Switch Sonoff04 "Stehlampe" <light> (gSetLicht)["Switchable"] ...
Switch Sonoff05 "kleine Lampe" <light> (gSetLicht)["Switchable"] ...

Switch item=gSetTempNacht mappings=[19="Nacht", 7="aus", 22="Tag"]


rule dazu
when
Item gSetTempNacht received command
then
logInfo("gSetTempNacht","Gruppentemperatur Nacht gesetzt!")
gSetTempNacht.members.forEach[ m |
m.sendCommand(receivedCommand)
logInfo("Rule.gSetTempNacht", "1 receivedCommand -> {}",receivedCommand)
logInfo("Rule.gSetTempNacht", "2 processing profile {}", m.name)
]
logInfo("Rule.gSetTempNacht","3 receivedCommand -> {}",receivedCommand)
if (receivedCommand == 19) {
gSetLicht.sendCommand(OFF)
}
end


Problem er durchläuft die forEach Schleife nur ein mal und das obwohl 4 Items drin sind ....

trage ich alle einzeln ein
xSetBadTermostat.sendCommand(receivedCommand)
usw ...

klappt es einwandfrei



Was mache ich falsch ?

Danke Caddy

Benutzeravatar
udo1toni
Beiträge: 15244
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Regel macht nicht das was sie soll ....

Beitrag von udo1toni »

Wo ist Deine Gruppen Definition? gSetTempNacht muss als Group Item definiert sein (in diesem Fall natürlich als Typ Number).
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Caddy
Beiträge: 117
Registriert: 16. Nov 2018 08:21
Answers: 0

Re: Regel macht nicht das was sie soll ....

Beitrag von Caddy »

hatte ich vergessen zu posten sorry hier

Group:Number gSetTempNacht "Temperatur gesamt setzen" <temperature> // Gruppen bzw Nachttemperatur setzen

Benutzeravatar
seppy
Beiträge: 738
Registriert: 24. Sep 2015 20:25
Answers: 4
Wohnort: Bonn

Re: Regel macht nicht das was sie soll ....

Beitrag von seppy »

Hi,
Du brauchst eigentlich die Schleife nicht und kannst direkt an die Gruppe das Kommando senden.

Code: Alles auswählen

gSetTempNacht.sendCommand(receivedCommand)
Grüße,
Seppy
Homematic und HomematicIP über Raspberrymatic (RaspPi 4 4GB) mit 2x HMLAN. Steuerung und Visualisierung durch OpenHAB2 auf RaspPi in Hutschienengehäuse im Sicherungskasten. Rund 100 Aktoren/Sensoren

- Abgesichert durch APC USV
- Bewässerungssteuerung mit Hunter Magnetventilen (HM-LC-Sw4-DR)
- Beleuchtungssteuerung Innen und Aussen (HM-LC-Sw4-DR + HM-LC-SW1-FM + HMW-IO-12-SW7-DR)
- Rolladensteuerung mit Beschattungsautomatik über Temperaturdifferenzsensor (HM-LC-Bl1PBU-FM)
- Wetter und Unwetterinformationen von wunderground
- Benachrichtigung der Bewohner via Pushover
- Multimediawand und Dreambox Steuerung (HM-LC-SW1-FM)
- Heizungssteuerung mit Komfort und Energiesparfunktionen (HM-CC-RT-DN + HM-Sec-SC-2 + HMIP-eTRV-2)
- Werkstatt Kompressorsteuerung (HMW-IO-12-SW7-DR)
- Weihnachtsbeleuchtung außen
- Präsenzerkennung über Geolocation (iCloud Binding), iBeacon und WLAN (Unifi Binding)
- Philips HUE & Tasmota Devices (Tuya) Einbindung

Caddy
Beiträge: 117
Registriert: 16. Nov 2018 08:21
Answers: 0

Re: Regel macht nicht das was sie soll ....

Beitrag von Caddy »

seppy hat geschrieben: 7. Jan 2019 11:07 Hi,
Du brauchst eigentlich die Schleife nicht und kannst direkt an die Gruppe das Kommando senden.

Code: Alles auswählen

gSetTempNacht.sendCommand(receivedCommand)
Grüße,
Seppy
Örgs ... das war nix ...

jetzt führt er die regel endlos aus weil er alle Thermostate anpackt ... also grundsätzlich hätte es geklappt.
Da aber jeder wechsel nun eine Änderung gibt führt er die Regel rekursiv vermutlich keine Ahnung einige mal aus

caddy

Caddy
Beiträge: 117
Registriert: 16. Nov 2018 08:21
Answers: 0

Re: Regel macht nicht das was sie soll ....

Beitrag von Caddy »

vermutlich muss ein if drumherum nur wenn noch nicht auf den gerade eingestellten wert gesetzt nur dann ... und dann sind wir wieder bei der schleife ?!

Oder liege ich da komplett falsch ?

Benutzeravatar
seppy
Beiträge: 738
Registriert: 24. Sep 2015 20:25
Answers: 4
Wohnort: Bonn

Re: Regel macht nicht das was sie soll ....

Beitrag von seppy »

Dann brauchst Du die Regel gar nicht ...
Homematic und HomematicIP über Raspberrymatic (RaspPi 4 4GB) mit 2x HMLAN. Steuerung und Visualisierung durch OpenHAB2 auf RaspPi in Hutschienengehäuse im Sicherungskasten. Rund 100 Aktoren/Sensoren

- Abgesichert durch APC USV
- Bewässerungssteuerung mit Hunter Magnetventilen (HM-LC-Sw4-DR)
- Beleuchtungssteuerung Innen und Aussen (HM-LC-Sw4-DR + HM-LC-SW1-FM + HMW-IO-12-SW7-DR)
- Rolladensteuerung mit Beschattungsautomatik über Temperaturdifferenzsensor (HM-LC-Bl1PBU-FM)
- Wetter und Unwetterinformationen von wunderground
- Benachrichtigung der Bewohner via Pushover
- Multimediawand und Dreambox Steuerung (HM-LC-SW1-FM)
- Heizungssteuerung mit Komfort und Energiesparfunktionen (HM-CC-RT-DN + HM-Sec-SC-2 + HMIP-eTRV-2)
- Werkstatt Kompressorsteuerung (HMW-IO-12-SW7-DR)
- Weihnachtsbeleuchtung außen
- Präsenzerkennung über Geolocation (iCloud Binding), iBeacon und WLAN (Unifi Binding)
- Philips HUE & Tasmota Devices (Tuya) Einbindung

Caddy
Beiträge: 117
Registriert: 16. Nov 2018 08:21
Answers: 0

Re: Regel macht nicht das was sie soll ....

Beitrag von Caddy »

seppy hat geschrieben: 7. Jan 2019 11:23 Dann brauchst Du die Regel gar nicht ...
Das verstehe ich jetzt nicht ?!

Ich will mit einem Schalter alle Thermostate auf eine Temperatur bringen.
Das geht nur mit einer Regel nach meinem Wissen

Caddy

Benutzeravatar
seppy
Beiträge: 738
Registriert: 24. Sep 2015 20:25
Answers: 4
Wohnort: Bonn

Re: Regel macht nicht das was sie soll ....

Beitrag von seppy »

Hi,
da Du die Gruppe "gSetTempNacht" über den Switch

Code: Alles auswählen

Switch item=gSetTempNacht mappings=[19="Nacht", 7="aus", 22="Tag"]
eh schon schaltest, brauchst Du die ganze Regel nicht.

Was für Thermostate setzt Du ein?

Grüße,
Seppy
Homematic und HomematicIP über Raspberrymatic (RaspPi 4 4GB) mit 2x HMLAN. Steuerung und Visualisierung durch OpenHAB2 auf RaspPi in Hutschienengehäuse im Sicherungskasten. Rund 100 Aktoren/Sensoren

- Abgesichert durch APC USV
- Bewässerungssteuerung mit Hunter Magnetventilen (HM-LC-Sw4-DR)
- Beleuchtungssteuerung Innen und Aussen (HM-LC-Sw4-DR + HM-LC-SW1-FM + HMW-IO-12-SW7-DR)
- Rolladensteuerung mit Beschattungsautomatik über Temperaturdifferenzsensor (HM-LC-Bl1PBU-FM)
- Wetter und Unwetterinformationen von wunderground
- Benachrichtigung der Bewohner via Pushover
- Multimediawand und Dreambox Steuerung (HM-LC-SW1-FM)
- Heizungssteuerung mit Komfort und Energiesparfunktionen (HM-CC-RT-DN + HM-Sec-SC-2 + HMIP-eTRV-2)
- Werkstatt Kompressorsteuerung (HMW-IO-12-SW7-DR)
- Weihnachtsbeleuchtung außen
- Präsenzerkennung über Geolocation (iCloud Binding), iBeacon und WLAN (Unifi Binding)
- Philips HUE & Tasmota Devices (Tuya) Einbindung

limdul79
Beiträge: 28
Registriert: 30. Okt 2018 12:41
Answers: 0

Re: Regel macht nicht das was sie soll ....

Beitrag von limdul79 »

Wer löst den die Regel aus? Da die Regel auslöst nach der bedingung:

Code: Alles auswählen

Item gSetTempNacht received command
muss das Item ja bereits eine Temperatur erhalten haben - und die wird automatisch an alle Member verschickt. Sprich diese Regel die du geschrieben hast, wenn die auslöst ist es überflüssig - weil die genau dann auslöst, wenn deine individuellen Thermostate das Update sowieso erhalten.

Antworten