[FUIP]: Ansicht wird nur bei reload der Seite aktualisiert

Begonnen von Devender, 26 Juli 2019, 22:08:47

Vorheriges Thema - Nächstes Thema

Devender

Hallo Thorsten,

ich hätte da ein Problem für das ich keine Lösung finde.
Mittlerweile verwende ich FUIP auf zwei Wandtablets (Android Browser und/oder Fully) und einem Smartmirror mit Firefox auf einem RPi Desktop.
Normalerweise wird die Homeseite mit allerlei Statusbereichen angezeigt. Allerdings sind die nach einer Weile nicht mehr aktuell. Schliesse ich z.b ein bis dato geöffnetes Fenster bleibt das Symbol im FUIP auf offen stehen. Das bezieht sich auf alle Seiten, wenn diese eine bestimmte Zeit angezeigt werden und man keine "Eingabe" macht.
Erst nach einem Reload der Seite, der Wechsel auf eine Unterseite mit anschliessendem Wechsel auf die Homeseite aktualisiert dann die Ansicht.

Das gilt nicht nur für Fenster, sondern eigentlich alle Devices (Schalter, Wetter, Benzinpreis etc)  die ich darstellen lasse.

Ich dachte erst, es liegt am Browser oder am Fully. Da es aber auch mit dem Firefox nicht funktioniert bin ich etwas ratlos.
Als wir damals bezüglich der Templates Kontakt hatten, hatte ich das Problem nicht.

In FHEMWEB steht longpoll auf 1. 
Zum Vergleich: FTUI wird normal aktualisiert wenn sich ein State ändert.

Hast du eine Idee?

Viele Grüsse,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
also im Prinzip wird das auch wenn man FUIP verwendet komplett von FTUI kontrolliert. FUIP rendert ja mehr oder weniger nur FTUI-Seiten. ...aber mal sehen. Könntest Du mir mal den Quellcode einer möglichst einfachen FUIP-Seite und einer möglichst einfachen FTUI-Seite geben? Ich meine damit jeweils das "Quelltext anzeigen" im Browser.
Gruß,
    Thorsten
FUIP

Devender

Hi Thorsten,

im Anhang die beiden Dateien.
Ich habe die FTUI Seite etwas gekürzt da ich hier nur eine Seite habe die alles an Statusinformationen darstellt.
Bei FUIP habe ich eine kleine Seite (Badezimmer) genommen. Sie hat nur links das Seitenmenue als großen Block.

Hatte vorhin auch mal FTUI auf eine neue Version gehoben. Geholfen hat es aber nichts.
Falls du noch etwas benötigt sag bescheid.

Viele Grüße,
Dirk

FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
also was mir als erstes auffällt: Du hast in der FTUI-Version das longpoll abgeschaltet. (longpoll=0 schaltet laut Doku nicht die Toast-Messages ab, sondern die sofortige Statusänderung.) Dadurch müsste die Seite alle 30 Sekunden ein "shortpoll" machen, also alles updaten. Kann es sein, dass es auf der FTUI-Seite durchschnittlich 15 Sekunden dauert, bis ein update ankommt?
Gruß,
   Thorsten
FUIP

Devender

Hi Thorsten,

ja du hast recht. 15 Sekunden braucht das FTUI. Ist  mir nie aufgefallen : -[

Ich habe jetzt noch mal getestet. Badezimmerfenster auf , 15sek dann sieht man den Status im FTUI. Im FUIP sogar sofort.
Warte ich aber eine Weile  werden die Stati im FUIP nicht mehr aktualisiert. Sieht man immer ganz gut beim Wetter. Ansicht fuer Montag steht dann auch den Rest der Woche da, wenn  ich keinen Reload der Seite mache.
Als Workaround hatte ich mal das automatische Wechslen der Seiten eingesetzt. Hilft aber nur bedingt.

Ich dachte erst, es liegt an den Slidern. Die waren ja noch nicht gross getestet. Aber auch der Ausbau hat nicht geholfen.

Viele Gruesse,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
was passiert denn, wenn Du das longpoll in FTUI ganz normal machst, also eingeschaltet?
Was passiert, wenn Du in FHEMWEB longpoll auf "websocket" stellst?
...und wie lange ist "eine Weile"?
Gruß,
   Thorsten
FUIP

Thorsten Pferdekaemper

FUIP

Thorsten Pferdekaemper

Hi,

ich habe jetzt nochmal ein bisschen rumprobiert, aber ich konnte das Problem nicht wirklich nachvollziehen. Anscheinend ist es (bei mir) auch egal, wie man "longpoll" im FHEMWEB-Device einstellt. Allerdings habe ich nicht wirklich lange gewartet (also nicht mehrere Stunden/Tage).

Aber: Ich sehe manchmal bei mir im "Produktivsystem" ein ähnliches Problem. Ich bekomme nach einiger Zeit (ich glaube mehrere Stunden) manchmal eine Toast-Message mit "shortpoll request failed". Dann hilft auch nur neu laden. Bei Dir scheinen die Meldungen aber nicht zu kommen. Hast Du die abgeschaltet?

Außerdem: Tritt das Problem wirklich bei der FUIP-Seite auf, deren HTML Du mir gegeben hast? Ich kann mir das fast nicht vorstellen, da die ja nach 30 Sekunden zur Homeseite zurückspringen sollte.

Gruß,
   Thorsten
FUIP

Devender

Guten morgen Thorsten,

Eine  ReverseProxy habe ich nicht dazwischen.
Das Websocket habe ich gestern mal eingestellt aber das hat es  nicht verbessert.
Bezueglich der Weile. Ist schwer zu sagen. FUIP laeuft auf zwei Wandtablets deren Display sich abschaltet nach  3 Minuten. Schaue ich dann nach 5 oder 10 Minuten nach funktioniert es meist nicht mehr mit der Aktualisierung. Auf dem Smart Mirror teste ich das heute mal genauer.

Toastnachrichten bekomme ich eigentlich keine. Auf der Testseite passiert das auch.  Da  kann man das  gut testen wenn man das Fenster öffnet oder schliesst und sich das Symbol dann nicht mehr verändert.
Der automatische Reload nach 30 Sek. war mal ein Test, den ich gemacht hatte als du diese Funktion neu  bereitgsstellt  hattest.

Da ich heute mal im Homeoffice bin lege ich mir das Tablet mal auf den Tisch und probiere mal  aus der  Weile eine genaue Zeit zu machen.

Vermutlich habe nur ich das Prolem und es ist keins von FUIP  :-[

Viele Gruesse ,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Zitat von: Devender am 30 Juli 2019, 06:49:35
Bezueglich der Weile. Ist schwer zu sagen. FUIP laeuft auf zwei Wandtablets deren Display sich abschaltet nach  3 Minuten. Schaue ich dann nach 5 oder 10 Minuten nach funktioniert es meist nicht mehr mit der Aktualisierung.
Also auf meinem Windows-Laptop funktioniert nach dieser Zeit noch alles. Möglicherweise hat das Problem auch etwas mit dem "Abschalten" zu tun.

ZitatToastnachrichten bekomme ich eigentlich keine. Auf der Testseite passiert das auch.  Da  kann man das  gut testen wenn man das Fenster öffnet oder schliesst und sich das Symbol dann nicht mehr verändert.
Könntest Du mir mal das HTML dieser Seite geben?

Zitat
Der automatische Reload nach 30 Sek. war mal ein Test, den ich gemacht hatte als du diese Funktion neu  bereitgsstellt  hattest.
Ok, aber tritt das Problem auf dieser Seite auf? Ich denke ja nicht...

Zitat
Vermutlich habe nur ich das Prolem und es ist keins von FUIP  :-[
Meiner Meinung nach kann das nicht wirklich ein FUIP-Problem sein, da FUIP da ja nichts spezielles macht. Allerdings bist Du nicht alleine. Ich habe ja ein ähnliches Problem, nur halt (manchmal?) mit irgendwelchen roten Toast-Messages. Es wäre also gut, wenn wir da beide weiterforschen würden.

Gruß,
   Thorsten
FUIP

Thorsten Pferdekaemper

Hi,
ich habe hier noch was zu dem Thema gefunden:
https://forum.fhem.de/index.php/topic,97258.0.html
Das riecht irgendwie nach unserem Problem hier.
Gruß,
   Thorsten
FUIP

Devender

#11
Hi Thorsten,

mit dem Abschalten dachte ich am Anfang auch.. Als ich aber dann FUIP für den Smartmirror gebaut hatte ist es mir dort morgens auch aufgefallen.
Am einfachsten sieht man das am Wetterhtml. Ich schaue Montagsmorgens das Wetter an. Am Dienstag steht da immer noch Montag. Die FUIP Seite für den Spiegel besteht auch nur aus einer Seite mit diversen Anzeigen.

Da das ganze auf einem normalen Raspberry Desktop mit Firefox läuft würde ich das Abschalten eigentlich ausschliessen.
Mit Chromium passiert das gleiche. Dann hatte ich noch einen dritten einfachen Browser probiert. Der verhaut mir aber die komplette Anzeige/Fortmatierung

Ich wollte gerade die Seite Badezimmer über den FUIP Export exportieren:
2019.07.31 20:01:39 1: PERL WARNING: Argument "auto" isn't numeric in addition (+) at ./FHEM/42_FUIP.pm line 2910.
2019.07.31 20:01:39 1: PERL WARNING: Argument "auto" isn't numeric in addition (+) at ./FHEM/42_FUIP.pm line 2911.
Can't call method "serialize" on an undefined value at ./FHEM/42_FUIP.pm line 2113


Und das FHEM bleibt stehen  :-X


Das letzte Update hatte ich glaube ich am Wochenende gemacht.

Wenn ich den automatischen Reload verwende und z.b von Badezimmer wieder auf die Hauptseite wechsel sind die Daten aktuell. Es wird ja ein Laden der Seite angefordert.

Danke übrigens für den Link zum Problem von peterk_de. Das lese ich mal durch und schaue ob ich da weiter was testen kann.

Als Anhang der Quelltext der Badezimmerseite mit dem automatischen Reload auf die Hauptseite nach 30 Sekunden.

Viele Grüße,
Dirk

PS: Ich baue jetzt mal auf die Hauptseite ein Reload alle 5 Minuten ein. Mal sehen ob es vom WAF her noch passend ist.
PS: Nachtrag: Auch bei mir nach 30Min auf der Hauptseite am Rechner mit Firefox (mal Update auf Stau, Fenster zu /Auf) sofort ein Update....


FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Zitat von: Devender am 31 Juli 2019, 20:12:52
Ich wollte gerade die Seite Badezimmer über den FUIP Export exportieren:
2019.07.31 20:01:39 1: PERL WARNING: Argument "auto" isn't numeric in addition (+) at ./FHEM/42_FUIP.pm line 2910.
2019.07.31 20:01:39 1: PERL WARNING: Argument "auto" isn't numeric in addition (+) at ./FHEM/42_FUIP.pm line 2911.
Can't call method "serialize" on an undefined value at ./FHEM/42_FUIP.pm line 2113


Und das FHEM bleibt stehen  :-X
Das ist natürlich richtig blöd. Kannst Du mir mal die FUIP....cfg-Datei dazu geben?
Gruß,
    Thorsten
FUIP

Thorsten Pferdekaemper

Hi,
zum ursprünglichen Problem:
https://forum.fhem.de/index.php/topic,102884.0.html
Kannst Du die Korrektur mal ausprobieren?
Gruß,
   Thorsten
FUIP

Devender

Zitat von: Thorsten Pferdekaemper am 07 August 2019, 19:50:11
Das ist natürlich richtig blöd. Kannst Du mir mal die FUIP....cfg-Datei dazu geben?
Gruß,
    Thorsten

Hi Thorsten,

anbei die cfg - Datei meiner FUIP Installation.

Ich hoffe du kannst damit etwas anfangen.
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Devender

Zitat von: Thorsten Pferdekaemper am 08 August 2019, 16:48:52
Hi,
zum ursprünglichen Problem:
https://forum.fhem.de/index.php/topic,102884.0.html
Kannst Du die Korrektur mal ausprobieren?
Gruß,
   Thorsten
Wo baue ich die Änderung ein? Ich kann es jetzt aus deinem Beitrag nicht direkt rauslesen  :(

In der letzten Woche habe ich mich mit reload der Seite nach 300 Sekunden beholfen. Das Funktioniert ist aber natürlich keine perfekte Lösung.
Ich vermute bei meinen Tablets habe ich das gleiche Problem wie Peterk_de.
Das Problem was er beschreibt gerade mit Android 8.X. Trotz Root und diversen Optionen aktiviert was Display und Standby angeht.

Viele Grüße,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Zitat von: Devender am 09 August 2019, 20:27:57
Wo baue ich die Änderung ein? Ich kann es jetzt aus deinem Beitrag nicht direkt rauslesen  :(
In der Datei /opt/fhem/www/tablet/js/fhem-tablet-ui.js. Bei mir ist das in etwa Zeile 1209. Es fehlt nur das "encodeURI()"
Außerdem musst Du sicherstellen, dass Du tatsächlich fhem-tablet-ui.js und nicht fhem-tablet-ui.min.js
Gruß,
   Thorsten
FUIP

Thorsten Pferdekaemper

Hi,
das Problem mit dem Absturz beim Export habe ich auch gefunden. Korrektur kommt wahrscheinlich spätestens morgen, aber eher sogar heute noch.
Gruß,
   Thorsten
FUIP

Thorsten Pferdekaemper

Sodele, das Problem mit dem Absturz sollte jetzt behoben sein.
Gruß,
   Thorsten
FUIP

Devender

HI Thorsten,

Update gerade durchgeführt und den Export getestet.
Funktioniert.

Danke!

VG,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Devender

Zitat von: Thorsten Pferdekaemper am 12 August 2019, 15:06:20
In der Datei /opt/fhem/www/tablet/js/fhem-tablet-ui.js. Bei mir ist das in etwa Zeile 1209. Es fehlt nur das "encodeURI()"
Außerdem musst Du sicherstellen, dass Du tatsächlich fhem-tablet-ui.js und nicht fhem-tablet-ui.min.js
Gruß,
   Thorsten

Die Änderungen habe ich jetzt auch mal eingebaut und werde schauen, ob es funktioniert.
Danke für deine Analyse  :)

Ich werde berichten
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
ich habe jetzt auf longpoll (ajax) umgestellt. Ich denke, dass das Problem nur bei Websockets auftritt. Bei meinen Tests konnte ich keine echten "Hänger" mehr finden, auch nicht bei Abbruch der Verbindung und nicht einmal, wenn man FHEM durchstartet.
Gruß,
   Thorsten
FUIP

Devender

Hallo Thorsten,

ich habe das Update gerade durchgeführt. Ich werde berichten!
Ich deaktiviere mal den Reload der Hauptseite für die nächsten paar Tage.

Viele Grüße,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
ich habe gerade eine etwas größere Änderung in FUIP hochgeladen. Unter Anderem sollte das die Probleme mit "Hängern" und Ähnlichem beheben. ...und wenn nicht, dann haben wir jetzt eine wesentlich bessere Möglichkeit, das ganze zu analysieren.
Details wie immer in den "FUIP-News".
Könntest Du das mal ausprobieren?
Gruß,
   Thorsten
FUIP

Devender

Ich mache gleich das update und schalte mein Seitenreload nach 300 Sek. aus
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Devender

Guten Morgen Thorsten,

Mein erster Zwischenstand nach dem Update gestern sieht gut aus.
Gestern habe ich in unregelmaessigen Abstaenden, Fenster geoeffnet und Lichter geschalter und mir den Status
direkt oder spaeter angesehen. Das Status war immer korrekt.
Auch das Popup fuer die Alarmanlage mit PIN wurde direkt angezeigt. Das war vorher nur nach Reload da.

Ich habe jetzt noch kein spezielles Log aktiviert. Beobachte die naechsten Tage aber weiter und stelle es auf dem SmartMirror auch noch um.
Falls du noch etwas benoetigst, sag bescheid.

Vielen lieben Dank fuer deine Muehe  ;D ;D.
Super Arbeit *Daumen Hoch

Gruesse,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
nein, momentan brauche ich dazu nichts mehr. Das kommt erst dann, wenn es damit Probleme gibt.
Bei mir gibt es damit tatsächlich noch Probleme. Wenn ich das die ganze Nacht auf dem Handy offen lasse, dann ist das Ding morgens "disconnected", aber der Reconnect funktioniert nicht. Das scheint daran zu liegen, dass der Chrome Browser nach zwei oder drei Stunden ein "beforeunload" produziert (also so tut, als ob die Seite rausgeworfen wird). Wenn ich das Ding dann wieder aufrufe, dann sehe ich zwar die Seite, es kommt aber kein visibilitychange Event. Momentan habe ich dazu noch keine richtige Lösung, aber irgendwie werden wir dem auch noch beikommen.
Gruß,
   Thorsten
FUIP

Devender

Bei mir laeuft es auf zwei Tablets rund um die Uhr mit Fully.
Der Bildschirm wird zwar in den Schonermodus gesetzt aber nicht abgeschaltet.
Sobald die MotionDetection aktiv wird, ist die Anzeige auch wieder da und aktuell.

Ich beobachte es aber weiter und melde mich, wenn ich Probleme sehe.
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
also so lange der Browser "glaubt", dass die Seite sichtbar ist, dürfte nichts passieren. Selbst wenn FHEM zwischendurch mal durchstartet dürfte sich das ganze wieder neu verbinden.
Gruß,
   Thorsten
FUIP

Devender

Zitat von: Thorsten Pferdekaemper am 07 November 2019, 14:32:50
Hi,
also so lange der Browser "glaubt", dass die Seite sichtbar ist, dürfte nichts passieren. Selbst wenn FHEM zwischendurch mal durchstartet dürfte sich das ganze wieder neu verbinden.
Gruß,
   Thorsten

Funktioniert  :)
Es kommt das Overlay mit Disconnect und nach fhem oder Wlan wieder verfuegbar ist stimmen die Werte wieder.
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Thorsten Pferdekaemper

Hi,
seit dem letzten update sollte auch das letzte Problem behoben sein. Zumindest bei mir gab es die letzten zwei Tage keine "Hänger" mehr.
...endlich!
Danke für die Geduld und für's Testen.
Gruß,
   Thorsten
FUIP