i abfrage zaehlertest timeout3 timehelper timeout5 berchnen timeout2 timeout9 Ausgabehilfe Ende Sek Minuten timeout Stunden timeout4 Tage liv-in-sky - Version 1.1 Das Scrit stellt eine Stoppuhr dar und läuft weiter, auch wenn Script oder IOBroker neugestertet werden Nutzung: starten -> stoppen -> dann reset oder starten -> stoppen ->starten -> stoppen -> ... ... -> reset javascript.0.STOPPUHR1.Steuerung.Start true EQ val javascript.0.STOPPUHR1.Steuerung.Stopp TRUE Unterschied ob Start - Stopp wieter verwendet wird javascript.0.STOPPUHR1.Ausgabehilfe FALSE Update ... javascript.0.STOPPUHR1.Ende FALSE Update ... javascript.0.STOPPUHR1.Steuerung.Stopp TRUE 1 sec FALSE FALSE javascript.0.STOPPUHR1.Anfang FALSE MINUS 1 object 1 val javascript.0.STOPPUHR1.Berechnen timeout2 2 sec EQ val javascript.0.STOPPUHR1.Steuerung.Stopp FALSE Oder vorher ein Reset war und Neustart javascript.0.STOPPUHR1.Steuerung.Stopp FALSE FALSE javascript.0.STOPPUHR1.Steuerung.Reset TRUE 1 sec FALSE FALSE javascript.0.STOPPUHR1.Anfang FALSE object javascript.0.STOPPUHR1.Werte.ErstStart TRUE 200 ms FALSE custom TT.MM.JJ - SS:mm:ss val javascript.0.STOPPUHR1.Anfang javascript.0.STOPPUHR1.Ende FALSE EQ val javascript.0.STOPPUHR1.Momentan javascript.0.STOPPUHR1.Ausgabehilfe FALSE Beginnt jetzt... javascript.0.STOPPUHR1.Ende FALSE etwas Geduld ... Die Datenpunkte werden unter javascript.0.STOPPUHR1 angelegt SommerzeitKalkulation dmFyIHZpcnR0aW1lID0gbmV3IERhdGUoKTsNCnZhciB0ID0gbmV3IERhdGUoaSk7DQpjb25zb2xlLmxvZyh0KTsNCi8vdmFyIHQgPSBEYXRlLnBhcnNlKHQpOw0KDQoNCi8vY29uc29sZS5sb2coaSk7DQovL2NvbnNvbGUubG9nKHQpOw0KLy9jb25zb2xlLmxvZyh0LmdldFRpbWV6b25lT2Zmc2V0KCkpOw0KLy9jb25zb2xlLmxvZyh2aXJ0dGltZS5nZXRUaW1lem9uZU9mZnNldCgpKTsNCg0KDQoNCmlmICh0LmdldFRpbWV6b25lT2Zmc2V0KCkgPT09IHZpcnR0aW1lLmdldFRpbWV6b25lT2Zmc2V0KCkpIHtyZXR1cm4gMH07DQppZiAodC5nZXRUaW1lem9uZU9mZnNldCgpID4gdmlydHRpbWUuZ2V0VGltZXpvbmVPZmZzZXQoKSkge3JldHVybiAxfTsNCmlmICh0LmdldFRpbWV6b25lT2Zmc2V0KCkgPCB2aXJ0dGltZS5nZXRUaW1lem9uZU9mZnNldCgpKSB7cmV0dXJuIDJ9Ow0KDQoNCi8vaWYgKHZpcnR0aW1lLmdldFRpbWV6b25lT2Zmc2V0KCkgPT0gLTEyMCAgKXtyZXR1cm4gdHJ1ZTt9IGVsc2Uge3JldHVybiBmYWxzZTt9Ow0KDQo= Beschreibe diese Funktion … nur zum test aktiviert Sommer - Winterzeit wird hier einkalkuliert 2,6,9,12,16,19,22,26,29,32,36,39,42,46,49,52,56,59 * * * * javascript.0.STOPPUHR1.Steuerung.Start FALSE TRUE javascript.0.STOPPUHR1.Steuerung.Stopp TRUE 60 sec FALSE TRUE zaehlertest 1 1 timeout3 100 ms error test 3 MINUTEN ZAEHLER IST BEI: zaehlertest DatenPunktAnlegen Y3JlYXRlU3RhdGUoJ1NUT1BQVUhSMS5TdGV1ZXJ1bmcuU3RhcnQnLCAnZmFsc2UnLCB7IG5hbWU6ICdTdGFydCcsIGRlc2M6ICdTdGFydCcsIHR5cGU6ICdib29sZWFuJywgcm9sZTogJ3N0YXRlJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsNCmNyZWF0ZVN0YXRlKCdTVE9QUFVIUjEuU3RldWVydW5nLlN0b3BwJywgJ2ZhbHNlJywgeyBuYW1lOiAnU3RvcHAnLCBkZXNjOiAnU3RvcHAnLCB0eXBlOiAnYm9vbGVhbicsIHJvbGU6ICdzdGF0ZScgLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOw0KY3JlYXRlU3RhdGUoJ1NUT1BQVUhSMS5TdGV1ZXJ1bmcuUmVzZXQnLCAnZmFsc2UnLCB7IG5hbWU6ICdSZXNldCcsIGRlc2M6ICdSZXNldCcsIHR5cGU6ICdib29sZWFuJyAscm9sZTogJ3N0YXRlJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsNCg0KY3JlYXRlU3RhdGUoJ1NUT1BQVUhSMS5XZXJ0ZS5TZWt1bmRlbicsIDAsIHsgbmFtZTogJ1NlaycsIGRlc2M6ICdTZWsnLCB0eXBlOiAnbnVtYmVyJywgdW5pdDogJ1NlaycsIG1pbjogJzAnLCBtYXg6ICc4MDAnLCByb2xlOiAnJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQpjcmVhdGVTdGF0ZSgnU1RPUFBVSFIxLldlcnRlLk1pbnV0ZW4nLCAwLCB7IG5hbWU6ICdNaW51dGVuJywgZGVzYzogJ1NlaycsIHR5cGU6ICdudW1iZXInLCB1bml0OiAnTWluJywgbWluOiAnMCcsIG1heDogJzgwMCcsIHJvbGU6ICcnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOyANCmNyZWF0ZVN0YXRlKCdTVE9QUFVIUjEuV2VydGUuU3R1bmRlbicsIDAsICB7IG5hbWU6ICdTdHVuZGVuJywgZGVzYzogJ1NlaycsIHR5cGU6ICdudW1iZXInLCB1bml0OiAnU3RkJywgbWluOiAnMCcsIG1heDogJzgwMCcsIHJvbGU6ICcnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOyANCmNyZWF0ZVN0YXRlKCdTVE9QUFVIUjEuV2VydGUuVGFnZScsIDAsIHsgbmFtZTogJ1RhZ2UnLCBkZXNjOiAnU2VrJywgdHlwZTogJ251bWJlcicsIHVuaXQ6ICdEYXknLCBtaW46ICcwJywgbWF4OiAnODAwJywgcm9sZTogJycscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSk7IA0KY3JlYXRlU3RhdGUoJ1NUT1BQVUhSMS5XZXJ0ZS5FcnN0U3RhcnQnLCAwLCB7IG5hbWU6ICdFcnN0U3RhcnQnLCBkZXNjOiAnRXJzdFN0YXJ0JywgdHlwZTogJ3N0cmluZycsIHJvbGU6ICcnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pDQoNCmNyZWF0ZVN0YXRlKCdTVE9QUFVIUjEuQmVyZWNobmVuJywgMCwgeyBuYW1lOiAnQmVyZWNobmVuJywgZGVzYzogJ1NlaycsIHR5cGU6ICdudW1iZXInLCB1bml0OiAnbVNlaycsIG1pbjogJzAnLCByb2xlOiAnJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQpjcmVhdGVTdGF0ZSgnU1RPUFBVSFIxLkFuZmFuZycsICcxNTU4MDI0NzM5ODkwJywgeyBuYW1lOiAnQW5mYW5nJywgZGVzYzogJ0FuZmFuZyBpbiBtcycsIHR5cGU6ICdzdHJpbmcnLCByb2xlOiAnJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KQ0KY3JlYXRlU3RhdGUoJ1NUT1BQVUhSMS5BdXNnYWJlaGlsZmUnLCB7IG5hbWU6ICdBdXNnYWJlaGlsZmUnLCBkZXNjOiAnQXVzZ2FiZWhpbGZlJywgdHlwZTogJ3N0cmluZycsIHJvbGU6ICcnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pDQpjcmVhdGVTdGF0ZSgnU1RPUFBVSFIxLkVuZGUnLCB7IG5hbWU6ICdFbmRlJywgZGVzYzogJ0VuZGUnLCB0eXBlOiAnc3RyaW5nJywgcm9sZTogJycscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSkNCmNyZWF0ZVN0YXRlKCdTVE9QUFVIUjEuTW9tZW50YW4nLCAnJywgeyBuYW1lOiAnTW9tZW50YW4nLCBkZXNjOiAnTW9tZW50YW4nLCB0eXBlOiAnc3RyaW5nJywgcm9sZTogJycscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSkNCg0KDQovL3NldHplbiBkZXIgcHVua3RlIHNvbnN0IGZ1bmt0aW9uaWVydCBlcnN0ZXIgc3RhcnQgbmljaHQgISEhDQoNCnNldFN0YXRlRGVsYXllZCgiamF2YXNjcmlwdC4wLlNUT1BQVUhSMS5TdGV1ZXJ1bmcuU3RvcHAiLCBmYWxzZSwgMzAwKTsNCg0Kc2V0U3RhdGVEZWxheWVkKCJqYXZhc2NyaXB0LjAuU1RPUFBVSFIxLlN0ZXVlcnVuZy5SZXNldCIsIHRydWUsIDUwMCk7 Beschreibe diese Funktion … Es wird alle 30 Sekunden die Werte berechnet - Sek, Min, Stunden und Tage flexibel einstellbar - die Berechnung stimmt am Ende bei Auslösung mit Stopp Einstellung für Berechnungsperiode kann geändert werden !!! abfrage timehelper */30 * * * * * javascript.0.STOPPUHR1.Steuerung.Stopp true AND EQ val javascript.0.STOPPUHR1.Steuerung.Start FALSE EQ val javascript.0.STOPPUHR1.Steuerung.Reset TRUE javascript.0.STOPPUHR1.Steuerung.Stopp TRUE 2 sec FALSE FALSE AND EQ val javascript.0.STOPPUHR1.Steuerung.Start FALSE EQ val javascript.0.STOPPUHR1.Steuerung.Reset FALSE javascript.0.STOPPUHR1.Steuerung.Stopp TRUE 2 sec FALSE FALSE javascript.0.STOPPUHR1.Ausgabehilfe FALSE Update ... javascript.0.STOPPUHR1.Ende FALSE Update ... javascript.0.STOPPUHR1.Steuerung.Start TRUE 100 ms FALSE FALSE javascript.0.STOPPUHR1.Steuerung.Reset TRUE 100 ms FALSE FALSE timeout9 350 ms javascript.0.STOPPUHR1.Berechnen FALSE berchnen javascript.0.STOPPUHR1.Steuerung.Reset true AND EQ val javascript.0.STOPPUHR1.Steuerung.Start TRUE EQ val javascript.0.STOPPUHR1.Steuerung.Stopp FALSE Abfangen, on richtige Reset Reihenfolge javascript.0.STOPPUHR1.Ende FALSE zuerst Stopp javascript.0.STOPPUHR1.Steuerung.Reset TRUE 2 sec FALSE FALSE AND EQ val javascript.0.STOPPUHR1.Steuerung.Start FALSE EQ val javascript.0.STOPPUHR1.Steuerung.Stopp TRUE wenn ja -> Reset der Werte javascript.0.STOPPUHR1.Momentan TRUE 1 sec FALSE javascript.0.STOPPUHR1.Steuerung.Stopp TRUE 1 sec FALSE FALSE javascript.0.STOPPUHR1.Berechnen FALSE 0 javascript.0.STOPPUHR1.Werte.Stunden FALSE 0 javascript.0.STOPPUHR1.Werte.Tage FALSE 0 javascript.0.STOPPUHR1.Werte.Minuten FALSE 0 javascript.0.STOPPUHR1.Werte.Sekunden FALSE 0 javascript.0.STOPPUHR1.Ausgabehilfe FALSE Reset ... javascript.0.STOPPUHR1.Ende FALSE Reset ... javascript.0.STOPPUHR1.Werte.ErstStart TRUE 200 ms FALSE Reset ... ZeitBerechnungen Beschreibe diese Funktion … diese Funktion ist die Zeitberechnung wird ausgeführt - alle 30 Sekunden oder bei Stopp EQ val javascript.0.STOPPUHR1.Steuerung.Start TRUE javascript.0.STOPPUHR1.Momentan FALSE object timeout5 100 ms berchnen MINUS 1 val javascript.0.STOPPUHR1.Momentan 1 val javascript.0.STOPPUHR1.Anfang timehelper custom MM.TT.JJ SS:mm:ss val javascript.0.STOPPUHR1.Anfang das anwenderformat für den anfangswert kann hier geändert werden Ausgabehilfe custom TT.MM.JJ - SS:mm:ss val javascript.0.STOPPUHR1.Anfang das anwenderformat für das ende der messung kann hier geändert werden Ende custom TT.MM.JJ - SS:mm:ss val javascript.0.STOPPUHR1.Momentan Sek s berchnen Minuten m berchnen timeout 100 ms berechen nach Offset Sommerzeit EQ abfrage 1 Stunden MINUS 1 h berchnen 1 0 Tage ROUNDDOWN 3.1 DIVIDE 1 MINUS 0 berchnen 0 0 68400000 86400000 EQ abfrage 2 Stunden MINUS 1 h berchnen 1 2 Tage ROUNDDOWN 3.1 DIVIDE 1 MINUS 0 berchnen 0 7200000 68400000 86400000 Stunden MINUS 1 h berchnen 1 1 Tage ROUNDDOWN 3.1 DIVIDE 1 MINUS 0 berchnen 0 3600000 68400000 86400000 timeout4 200 ms schreiben der Datenpunkte javascript.0.STOPPUHR1.Ausgabehilfe FALSE Ausgabehilfe javascript.0.STOPPUHR1.Ende FALSE Ende javascript.0.STOPPUHR1.Werte.Sekunden FALSE Sek javascript.0.STOPPUHR1.Werte.Minuten FALSE Minuten javascript.0.STOPPUHR1.Werte.Stunden FALSE Stunden javascript.0.STOPPUHR1.Werte.Tage FALSE Tage 0 */1 * * * Wird auch beim ScriptStart gesetzt Unterschiede in der Sommerzeit abfrage timehelper