@Thomas-Braun
Ich glaube nicht, dass es an den Scripts liegt, da es in dem Moment auch so ist, wenn ich den Datenpunkt "on" manuell über den objektbaum setze das gleiche Verhalten haben.
Hier aber mal ein Script von einem der Bewegungsmelder.
Die DP vom RPC Adpater laufen immer ohne Probleme.
var An__überprüfen, Mülll_war_an, Terasse_2_war_an, Terasse_1_war_an, BWM1;
An__überprüfen = true;
Mülll_war_an = 0;
Terasse_2_war_an = 0;
Terasse_1_war_an = 0;
on({ id: [].concat(['0_userdata.0.Variablen.Licht.Schalter.BWM.BWM_Terasse_State']), change: 'ne' }, async (obj) => {
let value = obj.state.val;
let oldValue = obj.oldState.val;
if ((obj.state ? obj.state.val : '') == true) {
// Debug
if (getState('0_userdata.0.Variablen.Debugmodus').val == true) {
sendTo('telegram', 'send', {
text: 'BWM_TER',
user: 'Dennis',
});
sendTo('telegram', 'send', {
text: ([Terasse_1_war_an,'\n',Terasse_2_war_an,'\n',Mülll_war_an,'\n',''].join('')),
user: 'Dennis',
});
}
if (getState('0_userdata.0.Variablen.BWM_TER').val == true && getState('javascript.0.variables.Nachtcheck').val == true) {
(() => { if (BWM1) { clearTimeout(BWM1); BWM1 = null; }})();
if (getState('0_userdata.0.Variablen.Licht.Spots_Terasse2').val == true) {
Terasse_2_war_an = 1;
} else if (getState('0_userdata.0.Variablen.Licht.Spots_Terasse2').val == false) {
Terasse_2_war_an = 0;
}
if (getState('0_userdata.0.Variablen.Licht.Spots_Müll').val == true) {
Mülll_war_an = 1;
} else if (getState('0_userdata.0.Variablen.Licht.Spots_Müll').val == false) {
Mülll_war_an = 0;
}
if (getState('0_userdata.0.Variablen.Licht.Spots_Terasse1').val == true) {
Terasse_1_war_an = 1;
} else if (getState('0_userdata.0.Variablen.Licht.Spots_Terasse1').val == false) {
Terasse_1_war_an = 0;
}
// Debug
if (getState('0_userdata.0.Variablen.Debugmodus').val == true) {
sendTo('telegram', 'send', {
text: 'TER an',
user: 'Dennis',
});
sendTo('telegram', 'send', {
text: ([Terasse_1_war_an,'\n',Terasse_2_war_an,'\n',Mülll_war_an,'',''].join('')),
user: 'Dennis',
});
}
setState('hm-rpc.1.00161D898B15B2.30.STATE' /* Spots Terasse.STATE */, true);
setStateDelayed('hm-rpc.1.00161D898B15B2.26.STATE' /* Spots Hinten.STATE */, true, 1000, false);
// Spots Terasse Haus
setStateDelayed('hmip.0.devices.3014F711A000085A49A4B06A.channels.1.on' /* on */, true, 1000, false);
}
}
if ((obj.state ? obj.state.val : '') == false) {
BWM1 = setTimeout(async () => {
BWM1 = null;
if (getState('0_userdata.0.Variablen.BWM_TER').val == true && getState('javascript.0.variables.Nachtcheck').val == true) {
if (Terasse_2_war_an != 1) {
setState('hmip.0.devices.3014F711A000085A49A4B06A.channels.1.on' /* on */, false);
}
if (Mülll_war_an != 1) {
setStateDelayed('hm-rpc.1.00161D898B15B2.26.STATE' /* Spots Hinten.STATE */, false, 1000, false);
}
if (Terasse_1_war_an != 1) {
setStateDelayed('hm-rpc.1.00161D898B15B2.30.STATE' /* Spots Terasse.STATE */, false, 1000, false);
}
An__überprüfen = true;
Terasse_1_war_an = 0;
Terasse_2_war_an = 0;
Mülll_war_an = 0;
}
}, 120000);
}
});
MOD-EDIT: Code in code-tags gesetzt!