An error occurred while loading the file. Please try again.
-
sibylle.kohler authored
- disable grid as long as data are not reloaded to avoid incosistency
8d9ba299
var lWarn = {logln:function (o){}};
var lInfo = {logln:function (o){}};
var LOGFILE_NAME = "sr-config.log";
lWarn = new Logger(LOGFILE_NAME);
//lInfo = new Logger(LOGFILE_NAME);
function checkDelay(propPath) {
var iLastTSNode=Property.getNode(propPath + "/lastTriggered");
if (iLastTSNode==null) {
lInfo.logln("delayed Trigger registered - no last triggered message");
return false; // verzgerte aktion aber noch net/schon getriggert -> abbruch
}
var iDelayNode=Property.getNode(propPath + "/delay");
if (iDelayNode==null) {
lInfo.logln("delayed Trigger registered - no delay node");
return false; // kein Delay Node
}
var iLastTime=iLastTSNode.getValue();
var iNow= Math.floor((new Date()).getTime()/1000);
var iDelay=iDelayNode.getValue();
if (iNow>=(iLastTime+iDelay))
return true;
return false;
}
function checkInitial(propPath) {
var iFirstTSNode=Property.getNode(propPath + "/firstTriggered");
if (iFirstTSNode==null) {
lInfo.logln("initial Trigger registered - no first triggered message");
return true; // Aktion noch nicht hinterlegt; daher aktion wird gestartet
}
var iDelayNode=Property.getNode(propPath + "/delay");
if (iDelayNode==null) {
lInfo.logln("delayed Trigger registered - no delay node");
return false; // kein Delay Node
}
var iFirstTime=iFirstTSNode.getValue();
var iNow= Math.floor((new Date()).getTime()/1000);
var iDelay=iDelayNode.getValue();
if (iNow>=(iFirstTime+iDelay)) {
lInfo.logln('lange nach dem letzten "ersten" Trigger -> aktion sicherlich schon ausgfhrt');
return true;
}
return false;
}
function updateDynamicDelta(propPath) {
lInfo.logln("delayed Trigger registered - singulary action - Update "+propPath+"/lastTriggered ");
Property.setProperty(propPath + "/lastTriggered", Math.floor((new Date()).getTime()/1000));
}
function updateInitialDelta(propPath) {
lInfo.logln("initial Trigger registered - singulary action - Update "+propPath+"/lastTriggered ");
Property.setProperty(propPath + "/firstTriggered", Math.floor((new Date()).getTime()/1000));
}
if (raisedEvent.name=="system-addon-scene-responder.delayedAction") {
lInfo.logln("delayed Trigger registered - singulary action - check for execute");
if (checkDelay(raisedEvent.parameter.path)) {
lInfo.logln("delayed Trigger registered - singulary action - execute one the action");
(new Event('action_execute',{path:raisedEvent.parameter.path})).raise();
Property.getNode(raisedEvent.parameter.path).removeChild("lastTriggered");
} else {
lInfo.logln("delayed Trigger registered - singulary action - to early");
}
}
7172737475767778798081828384858687888990919293949596979899100101102
if (raisedEvent.name=="system-addon-scene-responder.delayedTrigger") {
lInfo.logln("delayed Trigger registered - singulary action - update and queue execution");
var iDelay=0;
var iDelayNode=Property.getNode(raisedEvent.parameter.path + "/delay");
if (iDelayNode!=null)
iDelay=iDelayNode.getValue();
updateDynamicDelta(raisedEvent.parameter.path);
(new Event('system-addon-scene-responder.delayedAction',{path:raisedEvent.parameter.path, time : '+' + iDelay})).raise();
}
if (raisedEvent.name=="system-addon-scene-responder.initialTrigger") {
lInfo.logln("initial Trigger registered - singulary action - update and queue execution");
var iDelay=0;
var iDelayNode=Property.getNode(raisedEvent.parameter.path + "/delay");
if (iDelayNode!=null)
iDelay=iDelayNode.getValue();
if (checkInitial(raisedEvent.parameter.path)) {
updateInitialDelta(raisedEvent.parameter.path);
lInfo.logln("initial Trigger registered - singulary action - execute once the action");
(new Event('action_execute',{path:raisedEvent.parameter.path, time : '+' + iDelay})).raise();
} else {
lInfo.logln("initial Trigger registered - singulary action - to early");
}
}