Initial Commit

This commit is contained in:
Nano
2026-06-01 21:28:52 +02:00
parent 456dfae3f1
commit 7be4b88b5b
1046 changed files with 2080 additions and 0 deletions

192
rules/praesenzmelder.rules Normal file
View File

@@ -0,0 +1,192 @@
var Number PM_WZ_geschaltet = 0
var Number PM_Flur_oben_geschaltet = 0
var Number PM_Flur_unten_geschaltet = 0
var Number PM_Schlafzimmer_geschaltet = 0
var Number PM_Hausflur_geschaltet = 0
var Number PM_Kinderzimmer_geschaltet = 0
var Number PM_Bad_geschaltet = 0
var Number PM_aussen_geschaltet = 0
rule "Präsenzmelder Badezimmer Bewegung"
when Item PM_Bad changed to ON
then
last_activity_pm_badezimmer.postUpdate(now.toString)
if (settings_pm_badezimmer.state==ON && Dimmaktor2_DA2_Kanal_D_Dimmen.state == 0 && Schaltaktor1_16Fach_SA1_Kanal_A_Schalten.state == OFF && Helligkeit_Bad.state <= 110)
{
Dimmaktor2_DA2_Kanal_D_Dimmen.sendCommand(80)
Schaltaktor1_16Fach_SA1_Kanal_A_Schalten.sendCommand(ON)
PM_Bad_geschaltet = 1
}
end
rule "Präsenzmelder Badezimmer Aus"
when Item PM_Bad changed to OFF
then
if (PM_Bad_geschaltet == 1)
{
Dimmaktor2_DA2_Kanal_D_Dimmen.sendCommand(OFF)
Schaltaktor1_16Fach_SA1_Kanal_A_Schalten.sendCommand(OFF)
PM_Bad_geschaltet = 0
}
end
rule "Präsenzmelder Wohnzimmer Bewegung"
when Item PM_Wohnzimmer changed to ON
then
last_activity_pm_wohnzimmer.postUpdate(now.toString)
if (settings_pm_wohnzimmer.state==ON && Dimmaktor1_DA1_Kanal_C_Dimmen.state == 0 && Dimmaktor1_DA1_Kanal_D_Dimmen.state == 0 && Helligkeit_Wohnzimmer.state <= 250)
{
Dimmaktor1_DA1_Kanal_C_Dimmen.sendCommand(ON)
Dimmaktor1_DA1_Kanal_D_Dimmen.sendCommand(ON)
PM_WZ_geschaltet = 1
}
end
rule "Präsenzmelder Wohnzimmer Aus"
when Item PM_Wohnzimmer changed to OFF
then
if (PM_WZ_geschaltet == 1)
{
Dimmaktor1_DA1_Kanal_C_Dimmen.sendCommand(OFF)
Dimmaktor1_DA1_Kanal_D_Dimmen.sendCommand(OFF)
PM_WZ_geschaltet = 0
}
end
rule "Präsenzmelder Schlafzimmer Bewegung"
when Item PM_Schlafzimmer changed to ON
then
last_activity_pm_schlafzimmer.postUpdate(now.toString)
if (settings_pm_schlafzimmer.state==ON && Dimmaktor2_DA2_Kanal_B_Dimmen.state== 0 && Helligkeit_Schlafzimmer.state <= 250)
{
Dimmaktor2_DA2_Kanal_B_Dimmen.sendCommand(ON)
PM_Schlafzimmer_geschaltet = 1
}
end
rule "Präsenzmelder Schlafzimmer Aus"
when Item PM_Schlafzimmer changed to OFF
then
if (PM_Schlafzimmer_geschaltet == 1)
{
Dimmaktor2_DA2_Kanal_B_Dimmen.sendCommand(OFF)
PM_Schlafzimmer_geschaltet = 0
}
end
rule "Präsenzmelder Flur oben Bewegung"
when Item PM_Flur_oben changed to ON
then
last_activity_pm_flur_og.postUpdate(now.toString)
if (settings_pm_flur_og.state==ON && Dimmaktor1_DA1_Kanal_A_Dimmen.state== 0 && Helligkeit_Flur_oben.state <= 50)
{
Dimmaktor1_DA1_Kanal_A_Dimmen.sendCommand(60)
PM_Flur_oben_geschaltet = 1
}
end
rule "Präsenzmelder Flur oben Aus"
when Item PM_Flur_oben changed to OFF
then
if (PM_Flur_oben_geschaltet == 1)
{
Dimmaktor1_DA1_Kanal_A_Dimmen.sendCommand(OFF)
PM_Schlafzimmer_geschaltet = 0
}
end
rule "Präsenzmelder Flur unten Bewegung"
when Item PM_Flur_unten changed to ON
then
last_activity_pm_flur_unten.postUpdate(now.toString)
if (settings_pm_flur_unten.state==ON && Schaltaktor1_16Fach_SA1_Kanal_D_Schalten.state == OFF && Helligkeit_Flur_unten.state <= 40)
{
Schaltaktor1_16Fach_SA1_Kanal_D_Schalten.sendCommand(ON)
PM_Flur_unten_geschaltet = 1
}
end
rule "Präsenzmelder Flur unten Aus"
when Item PM_Flur_unten changed to OFF
then
if (Schaltaktor1_16Fach_SA1_Kanal_D_Schalten.state == ON)
{
Schaltaktor1_16Fach_SA1_Kanal_D_Schalten.sendCommand(OFF)
PM_Flur_unten_geschaltet = 0
}
end
rule "Präsenzmelder Flur unten Aus 2"
when Item PM_Flur_unten changed to OFF
then
if (PM_Flur_unten_geschaltet == 1)
{
Schaltaktor1_16Fach_SA1_Kanal_D_Schalten.sendCommand(OFF)
PM_Flur_unten_geschaltet = 0
}
end
rule "Präsenzmelder Hauseinang innen Bewegung"
when Item PM_Hauseingang changed to ON
then
last_activity_pm_hauseingang.postUpdate(now.toString)
if (settings_pm_hauseingang.state==ON && Schaltaktor1_16Fach_SA1_Kanal_L_Schalten.state == OFF && Helligkeit_Hauseingang.state <=50)
{
Schaltaktor1_16Fach_SA1_Kanal_L_Schalten.sendCommand(ON)
PM_Hausflur_geschaltet = 1
}
end
rule "Präsenzmelder Hauseingang innen Aus"
when Item PM_Hauseingang changed to OFF
then
if (PM_Hausflur_geschaltet == 1)
{
Schaltaktor1_16Fach_SA1_Kanal_L_Schalten.sendCommand(OFF)
PM_Flur_unten_geschaltet = 0
}
end
rule "Präsenzmelder Kinderzimmer"
when Item PM_Kinderzimmer changed to ON
then
last_activity_pm_Kinderzimmer.postUpdate(now.toString)
if (settings_pm_Kinderzimmer.state==ON && Dimmaktor2_DA2_Kanal_C_Dimmen.state== 0 && Helligkeit_Kinderzimmer.state <= 300)
{
Dimmaktor2_DA2_Kanal_C_Dimmen.sendCommand(ON)
PM_Kinderzimmer_geschaltet = 1
}
end
rule "Präsenzmelder Kinderzimmer Aus"
when Item PM_Kinderzimmer changed to OFF
then
if (PM_Kinderzimmer_geschaltet == 1)
{
Dimmaktor2_DA2_Kanal_C_Dimmen.sendCommand(OFF)
PM_Kinderzimmer_geschaltet = 0
}
end
rule "Präsenzmelder Hauseingang außen"
when Item Ausgang_Praesenz changed to ON or Item Ausgang_Nahfeld changed to ON
then
last_activity_pm_Garage.postUpdate(now.toString)
if (settings_pm_Garage.state==ON && Schaltaktor3_8Fach_SA3_Kanal_A_Schalten.state == OFF && Helligkeit_Hauseingang_aussen.state <= 100)
{
Schaltaktor3_8Fach_SA3_Kanal_A_Schalten.sendCommand(ON)
Schaltaktor3_8Fach_SA3_Kanal_B_Schalten.sendCommand(ON)
PM_aussen_geschaltet = 1
}
end
rule "Präsenzmelder Hauseingang außen Aus"
when Item Ausgang_Praesenz changed to OFF or Item Ausgang_Nahfeld changed to OFF
then
if (PM_aussen_geschaltet == 1 && (Ausgang_Praesenz.state ==OFF && Ausgang_Nahfeld.state == OFF))
{
Schaltaktor3_8Fach_SA3_Kanal_A_Schalten.sendCommand(OFF)
Schaltaktor3_8Fach_SA3_Kanal_B_Schalten.sendCommand(OFF)
PM_aussen_geschaltet = 0
}
end