NEWS
[Vorlage] Variable Zeitsteuerung mit VIS Editor
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Vergleichen vor, z.B. beim String-Vergleich, den du zuletzt beschrieben hast?
hat damit nix zu tun..
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
wenn eine bestehende Bedingung angepasst wird?
ja
-
@Glasfaser reproduzierbar?
Bei mir ist es nur ein Darstellungsfehler ...
ich denke mal das hat was mit dem HTML erstellen zu tun .Ganz am Anfang werden 3 Bedingungen angezeigt , dann werden die richtigen angezeigt .
... und mal werden die Bedingungen Angezeigt ohne Namen und Werte -
@smartboart sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
wenn eine bestehende Bedingung angepasst wird?
ja
Ich arbeite nicht mit Gruppen , kann auch dazu nicht viel Beitragen ...
muß es dann nicht bestätigt werden ... wie bei dir Gruppe H.
.
-
@Glasfaser
Hier scheint es tatsächlich ein Timing Problem zu geben. Wahrscheinlich wird die Erstellung des HTML getriggert bevor alle States kopiert wurden.
Seltsam dass ich dieses Problem selbst bei 5 Bedingungen nicht hatte. Werde ich korrigieren. Nur zur Info: ich verwende für die States influxdb, was nutzt du? Das Filesystem?@smartboart
Ich muss versuchen deinen Fehler bei mir nachzustellen. -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Das Filesystem?
Jipp ... ganz normale Datenpunkte im ioBroker.
z.B.:deconz.0.Sensors.2.open Wert : true/false hm-rpc.1.LEQ0980246.1.STATE Wert : true/false usw..
-
@smartboart
Funktioniert die Darstellung einwandfrei, wenn du oben den Filter nicht verwendest (z.B. Luftentfeuchter)?
Ist es nur ein Darstellungsproblem oder triggern die Timer auch entsprechend falsch, weil die Bedingung falsch wäre? -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Ist es nur ein Darstellungsproblem
kommt mir auch so vor ..... mal sehen was @smartboart dazu sagt .
-
@Glasfaser
Hatte mich vertan. Meinte natürlich redis und nicht influxdb. Man kann die States in eine Redis Datenbank schreiben lassen, default ist filesystem. Seit meiner Umstellung der States auf Redis ist die Admin Oberfläche deutlich schneller. Evtl. werden auch meine States minimal schneller aktualisiert. -
@smartboart
Kannst du mir bitte dein TimerJSON zusenden bzw hochladen? Ich denke, dass ich damit schon einiges anfangen kann. -
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@Glasfaser
Hatte mich vertan. Meinte natürlich redis und nicht influxdb.Ahh ...
habe States mit ioBroker auf meiner Synology . -
@Glasfaser
Wenn mit Gruppen gearbeitet wird, muss unten nur "bestätigt" werden, wenn tatsächlich für die Gruppe übernommen werden soll. Man kann die Zeiten und/oder die Bedingungen auf Gruppen übernehmen. Man ist aber nie gezwungen Änderungen für die Gruppe zu übernehmen.Zum Thema Timing: kannst du bitte diesen Bereich bei dir Suchen (dialogCtrl sollte ein guter Suchbegriff sein)
setTimeout(makeCondHtml,100); setTimeout(dialogCtrl,150,"open");
Ersetze bitte die 100 und 150 mit 200 bzw 300; also verdoppeln. Wenn es reicht, übernehme ich diese Timings.
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@smartboart
Funktioniert die Darstellung einwandfrei, wenn du oben den Filter nicht verwendest (z.B. Luftentfeuchter)?
Ist es nur ein Darstellungsproblem oder triggern die Timer auch entsprechend falsch, weil die Bedingung falsch wäre?ich meine es ist nur ein Darstellungsproblem...
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@smartboart
Kannst du mir bitte dein TimerJSON zusenden bzw hochladen? Ich denke, dass ich damit schon einiges anfangen kann.klar..
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@smartboart
Funktioniert die Darstellung einwandfrei, wenn du oben den Filter nicht verwendest (z.B. Luftentfeuchter)?
Ist es nur ein Darstellungsproblem oder triggern die Timer auch entsprechend falsch, weil die Bedingung falsch wäre?wenn ich alle anwähle und zum Luftentfeuchter scrolle sieht es beim Luftentfeuchter gleich aus...
wenn ich es richtig sehe ist glaube ich auch nur dieser betroffen...Alle 3 Tablet Ladgeräte und die Poolpumpe scheinen richtig dargestellt zu werden...
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
Zum Thema Timing: ......... (dialogCtrl ....)
habe rauf und runter gespielt ...
hier mein Ergebnis .. bei mirsetTimeout(makeCondHtml,200); setTimeout(dialogCtrl,400,"open");
sieht gut aus , auch die Verzögerung vom Popup öffnen hält sich in Grenzen .
.
-
@Glasfaser danke für den Test. Übernehme deine Werte
@smartboart ich schaue mir das JSON später an. Kurios dass nur ein Gerät betroffen ist. Hast du die in diesem Gerät genutzte Bedingung (also das State) auch woanders im Einsatz?
-
@GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
@smartboart ich schaue mir das JSON später an. Kurios dass nur ein Gerät betroffen ist. Hast du die in diesem Gerät genutzte Bedingung (also das State) auch woanders im Einsatz?
ich habe diesen State nur für Vis angelegt um es als Verriegelung für den Timer zu verwenden. Ist nix besonderes...
Im 1. Timer sieht es ja gut aus...
createState('Vis.EntfeuchtungAktiv',{ def: false, read: true, write: true, desc: 'Luftentfeuchter Automatik', type: 'boolean', role: 'switch' ,name: 'Luftentfeuchter Automatik'});
-
@GiuseppeS
Ich habe den Datenpunkt im Konfigurator nochmal angewählt und zwischen true und false und wieder auf tru zurückgestellt und dann hat er es richtig angezeigt...
-
Habe jetzt versucht deinen JSON zu entschlüsseln. Wieso auch immer bekomme ich Parse-Errors bei jedem Online-Viewer. Muss mal checken ob das bei meinem auch vorkommt.
Jedenfalls konnte ich das finden:
Im ersten (grünen) Timer steht im JSON als Auswertestring:
getState("javascript.0.Vis.EntfeuchtungAktiv").val == true
In den weiteren Timern mit einer Bedingung steht:
getState("javascript.0.Vis.EntfeuchtungAktiv").val >= 50
Darstellung schien dementsprechend zu passen. Wie es nun zu diesen unterschiedlichen Einträgen gekommen ist, ist mir ein Rätsel. Das HTML lässt ja bei booleans nur true/false zu. Hattest du diese Bedingungen mit der alten Übersicht erstellt? Oder hattest du bei deinem erstellten State ursprünglich nichts als Type stehen und hast es zu später zu boolean geändert?
Hattest du für die Übernahme der Bedingung auch den bool-Switch aktiviert?
EDIT: Mein Json lässt sich parsen. Dann lags wohl an Copy/Paste im Forum.