NEWS
Widgets zeigen nicht den aktuellen Status nach dem laden der Vis
-
Hallo,
Meine Vis besteht aus mehreren Seiten welche ich über Reiter umschalten kann.
Die Widgets (hqwidgets) auf der Seite die beim Laden dargestellt werden, zeigen den richtigen Status an.
Also Lampe an/aus oder die Temperatur im Raum. Die Widgets auf den anderen Seiten zeigen
erst den richtigen Status an, wenn sich nach dem Laden der Vis der Status ändert.
Dabei ist es egal ob der Reiter gerade aktiv ist währen ich eine Lampe einschalte.
Falls das nicht ganz klar geworden ist, hier ein Beispiel:
Wohnzimmer (1. Reiter): Lampe ist an
Flur (2. Reiter): Lampe ist an
Nach dem laden der Vis zeigt die Vis das die Lampe im Wohnzimmer an ist. Aber im Flur wird angezeigt das die Lampe aus ist.
Schalte ich die Lampe im Flur aus und ein, zeigt die Vis auch an, dass die Lampe an ist. Egal ob ich zu dem Zeitpunkt des Schaltens
Wohnzimmer oder Flur offen habe.
Betroffen sind wirklich alle Widgets auf allen Reitern mit Außnahme der Widgets auf dem 1. Reiter.
hqwidgets 1.1.2
vis 1.1.7
Viele Grüße,
Conny
-
welcher Browser
-
Firefox,
Safari (iPhone) und
blu (iPhone)
-
Firefox,
Safari (iPhone) und
blu (iPhone) `
Hallo Conny,
ich stehe gerade vor ähnlichen Problemen.
Verwendest du zufällig auch das Material Design CSS?
Danke für ein kleines Zeichen und Grüße
ThomasLPZ
Gesendet von iPhone mit Tapatalk
-
Hallo ThomasLPZ,
tut mir leid, dass ich mich erst jetzt melde. Ich hatte in der letzten Zeit zu wenig Zeit mich mit meiner Hausautomatisierung zu beschäftigen, darum habe ich auch kein Blick in dieses Forum geworfen.
Ich verwende Material Design CSS nicht bewusst. Wenn dann habe ich das durch Auswahl von Widgets mit rein bekommen.
Viele Grüße,
Conny
-
Hi Conny,
ich denke unbewusst kann das Material Design nicht verwendet werden. Meine Vermutung, dass es daran bei mir liegen konnte, hat sich leider auch nicht bestätigt.
Bist du denn dem Problem auf die Spur gekommen? Ich bin mittlerweile ratlos.
Viele Grüße
Thomas
Gesendet von iPhone mit Tapatalk
-
Ich habe das Problem bei einem Neubau meiner VIS auch. ich werde am WE einen Thread mit den genauen Widgets…... machen.
-
Also ich habe jetzt nochmal ein wenig rumprobiert. Auch mal andere Widgets ausprobiert. Immer das gleiche Verhalten. Eigentlich verwende ich nur KNX Objekte um aber auszuschließen das es mit dem KNX Adapter zusammenhängt habe ich nun den MQTT Adapter installiert. Jetzt kommt das Verblüffende:
Wenn ich ein Widget mit einem MQTT Objekt verbinde startet es immer aktiv. Auch wenn das Objekt nicht aktiv ist.
Bei den KNX Objekten ist es ja wie oben beschrieben, das die Widgets inaktiv starten. Auch wenn das Objekt aktiv ist.
Ich habe eine Theorie bei der ich aber noch nicht genau weiß wie ich diese beweisen oder widerlegen kann:
Beim laden des Widgets könnte ein Initwert geladen werden, der evtl. vom schreibenden Adapter kommt. Und eben nicht der aktuelle Wert des Objekts. Evtl. wird nur bei sichtbaren Widgets die richtige Lesefunktion aufgerufen und nicht sichtbaren eben nur der Initwert.
Viele Grüße,
Conny
-
Ich habe herausgefunden wie ich das Problem umgehen kann.
In der Funktion vis.loadRemote() wird die Funktion vis.conn.getStates() aufgerufen. Im nicht Edit Modus wird eine Liste aller sichtbaren Widgets übergeben. Im Edit Modus wird null übergeben, was zur Folge hat, dass alle Werte geladen werden. Um mein Problem zu umgehen übergebe ich jetzt erst einmal immer null.
Ich sehe zwei verschiedene Lösungsmöglichkeiten, bin mir aber nicht sicher, welche die "richtige" ist, oder ob es noch eine bessere Lösung gibt.
- Man könnte dafür sorgen, dass vis.conn.getStates nicht nur die sichtbaren Widgets des sliderTabs übergeben bekommt, sondern aller.
- Wenn ich den Tab des sliderTabs wechsle, rufe ich noch mal vis.conn.getStates auf.
Viele Grüße,
Conny