@Jukabroker
Die Sonoff's Status sind nach einem Update öfter von "true" auf "false" gegangen, obwohl sie eingeschaltet geblieben sind. Habe ich endlich in den logs gefunden. Sonoff's zurückgegradet und schon ist alles wie es soll.
Danke
Jukabroker
NEWS
Latest posts made by Jukabroker
-
RE: [gelöst] Datenpunkt ändert selbständig seinen Wert
-
RE: [gelöst] Datenpunkt ändert selbständig seinen Wert
@apollon77
Entschuldigung, ich habe nicht gut gefragt. Das Script ist von sveni_lee. Ich habe es auf meine Bedürfnisse umgestellt. Ich schalte einen Sonoff POW und will in VIS die Einschaltzeit und die Dauer darstellen. Funktioniert auch, nur das sich die Einschaltzeit (Eigener Datenpunkt) selbständig verändert.
Ich habe natürlich sofort den Debug Log eingeschaltet, und auch in den Logfiles geschaut. Aber da ist in der Zeit wo die Änderung des Datenpunktes eintritt nichts zu sehen ??
Danke für die Aufmerksamkeit
Jukabroker -
RE: [gelöst] Datenpunkt ändert selbständig seinen Wert
Hallo apollon77,
ich habe schon vieles probiert. Jedes Detail mit "console.log " ausgegeben. Es scheint alles normal. Aber auch die Logging -Punkte ändern sich mit. Ich schalte ein Sonoff POW ein, und will eigentlich nur sehen wie lange sie schon an sind. Ist nicht super wichtig, aber es ärgert weil man nicht weiß woran es liegt.
Wenn der Sonoff Status sich ändern würde, müßte ja auch ein Schaltvorgang stattfinden.
Habe mehrere Male neue Datenpunkte angelegt, den Script neu angelegt usw. Ich wüßte nicht wi ich noch ansetzen kann.
Wenn es bei sveni_lee wirklich Problemlos läuft, ist das schon seltsam
Gruß Jukabroker -
[gelöst] Datenpunkt ändert selbständig seinen Wert
Hallo,
ich habe das Script von sveni_lee zufällig gefunden und bei mir eingebaut. Es läuft auch wunderbar, aber nach einer gewissen Zeit ändert ohne ersichtlichen Grund die "Timestamp_ON" Zeit auf die aktuelle Zeit. Dadurch fängt auch die "Laufzeit_last_ON" wieder von vorne an.
ist das bei euch auch so ?? ist da noch irgendein Gedankenfehler drin ? Ich stelle in VIS die Laufzeit meiner Sonoffs dar.
Gruß JukabrokerHier der Code von sveni_lee:
var intervalId = null; on({id: 'hm-rpc.0.OEQ0207710.5.STATE', change: "ne"}, function (obj) { if (obj.state.val) { //wenn Gerät EIN setState("javascript.0.Bewässerung.Ventil1.Timestamp_ON"/*Timestamp_ON*/, formatDate(new Date(), "TT.MM.JJJJ SS:mm"), true); intervalId = setInterval(function(){ setState("javascript.0.Bewässerung.Ventil1.Laufzeit_last_ON"/*Laufzeit_last_ON*/, Math.round((Date.now() - obj.state.lc)/60000) + " Minuten", true); }, 10000); } else if (!obj.state.val) { // wenn Gerät AUS clearInterval(intervalId); setState("javascript.0.Bewässerung.Ventil1.Laufzeit_last_ON"/*Laufzeit_last_ON*/, Math.round((obj.state.lc - obj.oldState.lc)/60000) + " Minuten", true); setState("javascript.0.Bewässerung.Ventil1.Menge_last_ON"/*Laufzeit_last_ON*/, Math.round((obj.state.lc - obj.oldState.lc)/60000/60*4000) + " Liter", true); } });
-
RE: [gelöst]js-skript zeitspanne Objekt-State "true" erfassen
@sveni_lee sagte in [gelöst]js-skript zeitspanne Objekt-State "true" erfassen:
okay… das starten des Intervals funktioniert:
on({id: 'hm-rpc.0.OEQ0207710.5.STATE', change: "ne"}, function (obj) { if (obj.state.val) { //wenn Gerät EIN setState("javascript.0.Bewässerung.Ventil1.Timestamp_ON"/*Timestamp_ON*/, formatDate(new Date(), "TT.MM.JJJJ SS:mm"), true); setInterval(function(){ setState("javascript.0.Bewässerung.Ventil1.Laufzeit_last_ON"/*Laufzeit_last_ON*/, Math.round((Date.now() - obj.state.lc)/60000) + " Minuten", true); }, 10000); } else if (!obj.state.val) { // wenn Gerät AUS clearInterval(timer); setState("javascript.0.Bewässerung.Ventil1.Laufzeit_last_ON"/*Laufzeit_last_ON*/, Math.round((obj.state.lc - obj.oldState.lc)/60000) + " Minuten", true); setState("javascript.0.Bewässerung.Ventil1.Menge_last_ON"/*Laufzeit_last_ON*/, Math.round((obj.state.lc - obj.oldState.lc)/60000/60*4000) + " Liter", true); } });
aber das mit cearInterval(timer) habe ich noch nicht ganz verstanden
EDIT:
ich denke ich habs herausgefunden:
var intervalId = null; on({id: 'hm-rpc.0.OEQ0207710.5.STATE', change: "ne"}, function (obj) { if (obj.state.val) { //wenn Gerät EIN setState("javascript.0.Bewässerung.Ventil1.Timestamp_ON"/*Timestamp_ON*/, formatDate(new Date(), "TT.MM.JJJJ SS:mm"), true); intervalId = setInterval(function(){ setState("javascript.0.Bewässerung.Ventil1.Laufzeit_last_ON"/*Laufzeit_last_ON*/, Math.round((Date.now() - obj.state.lc)/60000) + " Minuten", true); }, 10000); } else if (!obj.state.val) { // wenn Gerät AUS clearInterval(intervalId); setState("javascript.0.Bewässerung.Ventil1.Laufzeit_last_ON"/*Laufzeit_last_ON*/, Math.round((obj.state.lc - obj.oldState.lc)/60000) + " Minuten", true); setState("javascript.0.Bewässerung.Ventil1.Menge_last_ON"/*Laufzeit_last_ON*/, Math.round((obj.state.lc - obj.oldState.lc)/60000/60*4000) + " Liter", true); } });
Hallo sveni_lee
ich habe das Script zufällig gefunden und mal nachgebaut, es funktioniert auch, aber nach einiger Zeit ändert sich ohne zutun der Timestamp_ON ??? dann fängt der Timer auch wieder neu an zu zählen.
Kannst du da ev. helfen?
Jukabroker -
RE: [Vorstellung] Meine zweite Visualisierung
Hallo,
ich habe mir das mit den Radio-Icons auch nachgebaut. Danke für die Vorstellung . Muss sagen es funktioniert einwandfrei.
Die Icon-Bilder der Sender bietet die "imageURL" ja schon an. Diese URL habe ich kopiert und bei Bild [0] und bei Bild [1] eingesetzt. Somit spart man sich das downloaden der Icons.
Ansonsten tolle Anleitung.
Gruß Jukabroker@mehrwiedu said in [Vorstellung] Meine zweite Visualisierung:
In VIS kann man dann auf die Button drücken und der Echo startet oder wechselt den Radiosender nach Wunsch.
Muss natürlich für jeden Echo separat gemacht werden.