ich optimiere gerade meinen Duty Cycle, da dieser oft hoch ist 75-90 und dann Probleme auftauchen.
Eigentlich bin ich der Meinung, dass meine Einstellungen gut sind.
Also was über direkte Verknüpfungen möglich ist, läuft über direkte Verknüpfungen also bspw. Bewegungsmelder oder Funktaster <-> Licht.
Was mir jetzt noch übrig bleibt sind zwei Sachen, bei denen mir die Kenntnis fehlt:
1.) Ein script welches auf Tastendruck abends alle Lichter ausschaltet. Meine Frage hier ist: "Testet das Script vorab, welche Lichter bereits ausgeschaltet sind, damit keine Lampen angesprochen werden, die bereits aus sind?"
Code: Alles auswählen
string liste = "Licht";
! Dont touch behind this Line
string index;
foreach (index, liste) {
object sec = dom.GetObject(index);
if (sec) {
string itemId;
foreach(itemId, sec.EnumUsedIDs()) {
var item = dom.GetObject(itemId);
if (item.IsTypeOf(OT_CHANNEL)) {
var device = dom.GetObject(item.Device());
var hssType = item.HssType();
if ( (hssType == "SWITCH") && (item.DPByHssDP("STATE").Value()) ) {item.DPByHssDP("STATE").State(0);}
if ( (hssType == "DIMMER") && (item.DPByHssDP("LEVEL").Value()) ) {item.DPByHssDP("LEVEL").State(0.0);}
if ( (hssType == "SWITCH_VIRTUAL_RECEIVER") && (item.DPByHssDP("STATE").Value()) ) {item.DPByHssDP("STATE").State(0);}
if ( (hssType == "DIMMER_VIRTUAL_RECEIVER") && (item.DPByHssDP("LEVEL").Value()) ) {item.DPByHssDP("LEVEL").State(0);}
if ( (hssType == "VIRTUAL_DIMMER") && (item.DPByHssDP("LEVEL").Value()) ) {item.DPByHssDP("LEVEL").State(0);}
if ( (hssType == "DIGITAL_OUTPUT") && (item.DPByHssDP("STATE").Value()) ) {item.DPByHssDP("STATE").State(0);}
}
}
}
}