TabletUI: Fehler pagetab (z.B. Security Error widget_pagetab.js:43 bei Firefox)

Begonnen von NoKi, 24 September 2019, 12:46:38

Vorheriges Thema - Nächstes Thema

NoKi

Hallo,
ich würde gerne pagetab nutzen, bekomme das aber selbst in der einfachsten Variante nicht hin. Ich bekomme dabei je nach Browser sehr unterschiedliches Verhalten und unterschiedliche Fehlermeldungen. Leider reichen meine Kenntnisse nicht aus, die inhaltlich zu verstehen. Eine entsprechende Navigation mit Pagebutton oder Link funktioniert übrigens ohne Probleme.

Das Beispiel habe ich aus dem pagetab-Wiki übernommen, aber noch weiter vereinfacht habe, indem ich die Referenzen auf die Dummies entfernt habe.
Es soll zuerst die Navigationsleiste mit der leeren Seite "Start" aus index.html geladen werden, dann je nach Button die entsprechenden Unterseiten (wieder mit der Navigationsleiste).

FTUI-Version 2.7.14.

Ich wäre sehr dankbar, wenn mir jemand einen Tip geben könnte.

VG  Norbert


Firefox:
   Die leere Seite "Start" aus index.html lädt mit der Fehlermeldung (siehe unten). Die Fehlermeldung an dieser Stelle erscheint nicht mehr, wenn man Cookies als Ausnahme zugelassen hat; die weiteren erscheinen auch danach noch).
   Beim Klicken auf den ERSTEN Button (home) passiert gar nichts, es kommt KEINE Fehlermeldung.
   Bei den beiden anderen Buttons wird jeweils beim ERSTEN Klicken die gleiche Fehlermeldung angezeigt, ohne dass ansonsten etwas passiert. Bei weiteren Klicks passiert gar nichts mehr.

   Toast-Fehlermeldung:
      widget_pagetab.js:45
      Security Error: The operation is insecure.

   Konsole (User:Passwort@IP:port ersetzt)
      SecurityError: The operation is insecure. widget_pagetab.js:43
         loadPage https://<User>:<Passwort>@<IP>:<Port>/fhem/ftui/js/widget_pagetab.js:43
         toggleOn https://<User>:<Passwort>@<IP>:<Port>/fhem/ftui/js/widget_pagetab.js:65
         toggleOn https://<User>:<Passwort>@<IP>:<Port>/fhem/ftui/js/widget_famultibutton.js:399
         u https://<User>:<Passwort>@<IP>:<Port>/fhem/ftui/lib/fa-multi-button.min.js:1
         jQuery 2
            dispatch
            handle

Was ich bei Firefox schon (ohne Erfolg) versucht habe auf Basis von Hinweisen im www:
   
   Leeren des Browser-Caches:
   ==> keine Änderung

   In Cookies für /fhem/ftui/ als Ausnahme zugelassen:
   ==> Fehlermeldung erscheint bei der ersten Seite "Start" nicht mehr, ansonsten keine Änderung des Verhalten und der Fehler.
   
   network.websocket.allowInsecureFromHTTPS auf true gesetzt in Firefox-about:config (ohne das zu verstehen):
   ==> keine Änderung

   defer entfernt bei <script src="js/fhem-tablet-ui.min.js" defer></script>
   ==> keine Änderung

Chrome:
   Es wird sofort pagetab01.html geladen, statt der leeren Seite "Start" aus der index.html.
   Es gibt keine Fehlermeldungen und ansonsten funktioniert die Navigation wie vorgesehen.

Internet-Explorer(11):
   Lädt im menu.html keine Icons, sondern nur die Texte. Außerdem wird sofort pagetab01.html geladen, statt Start aus der index.html.
   Dazu kommt folgende Fehlermeldung:
   
   Toast-Fehlermeldung:
      Disconnected from Fhem.
      The connection was closed abnormally,
      e.g. without sending or receiving a close control frame.
      
   Konsole: siehe angehängte Datei

Edge:    
   Es wird neben dem menu.html (mit allen Icons) sofort pagetab01.html (statt der leeren Seite "Start" aus der index.html). Dabei erscheint die Fehlermeldung (siehe unten) und der Aufbau erfolgt extrem langsam.
   Ansonsten funktioniert die Navigation. Allerdings erscheint MANCHMAL beim Aufruf wieder die Fehlermeldung (kann bei jeder der Unterseiten passieren).

   Toast-Fehlermeldung:
      Disconnected from Fhem.
      The connection was closed abnormally,
      e.g. without sending or receiving a close control frame.

   Konsole: siehe angehängte Datei


Die TabletUI-Dateien:
index.html:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="lib/jquery.gridster.min.css" />
<link rel="stylesheet" href="css/fhem-tablet-ui.css" />
<link rel="stylesheet" href="lib/font-awesome.min.css" />
<link rel="stylesheet" href="lib/jquery.toast.min.css" />

<script src="../pgm2/jquery.min.js"></script>
<script src="lib/jquery.toast.min.js"></script>
<script src="lib/jquery.gridster.min.js"></script>
<script src="js/fhem-tablet-ui.js" defer></script>
<script src="js/fhem-tablet-ui.min.js" defer></script>

<title>FHEM-Tablet-UI</title>
</head>
<body>
<div class="gridster">
<ul>
<li data-row="1" data-col="1" data-sizex="1" data-sizey="4" data-template="menu.html"></li>
<li data-row="1" data-col="2" data-sizex="4" data-sizey="4">Start</li>
</ul>
</div>
</body>
</html>


menu.html:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div class="sheet">
<div class="row">
<div data-type="pagetab"
data-url="pagetab01.html"
data-icon="fa-home"
data-text="home"
class="cell"></div>
</div>
<div class="row">
<div data-type="pagetab"
data-icon="fa-fax"
data-url="pagetab02.html"
data-text="anrufe"
class="cell labelright"></div>
</div>
<div class="row">
<div data-type="pagetab"
data-icon="fa-fax warn"
data-url="pagetab03.html"
class="cell"></div>
</div>
</div>
</body>
</html>


pagetab01.html:
pagetab01.html:
<!DOCTYPE html>
<html>
<head></head>
<body>
<div class="gridster">
<ul>
<li data-row="1" data-col="1" data-sizex="1" data-sizey="4" data-template="menu.html"></li>
<li data-row="1" data-col="2" data-sizex="4" data-sizey="4" class="left-align">Pagetab01.html</li>
</ul>
</div>
</body>
</html>

pagetab02.html und pagetab03.html entsprechend
FHEM auf RasPi, diverse HM-Komponenten

OdfFhem

@NoKi

Da ich derzeit pagetab einsetze und bislang keinerlei Probleme hatte, habe ich das Wiki-Beispiel mal 1:1 übernommen und sowohl unter Firefox (Linux) als auch unter Chrome (Linux) getestet. Bei mir funktioniert es wie erwartet ...

Geblieben sind bei mir deshalb (mindestens) 3 Fragen:

  • Mit der Minimal-Version der index.html aus dem Wiki wird ja bereits alles Notwendige geladen! Was genau sollen die von Dir gemachten Änderungen in der index.html bewirken?
  • Wie verhalten sich Deine Testbrowser bei unveränderter Übernahme des Wiki-Beispiels?
  • Wie genau rufst Du denn die index.html überhaupt auf? (http,https,lokal,remote,...)

NoKi

Hallo OdfFhem,

vielen Dank für deine Hilfe.

Ein Hinweis vorab: Bei mir läuft Firefox unter Android, unter Win 10 und früher unter Win 7 - immer mit den gleichen Fehlern. Fhem läuft auf Raspberry 3 mit Linux.

Zu deinen Fragen:
ZitatMit der Minimal-Version der index.html aus dem Wiki wird ja bereits alles Notwendige geladen! Was genau sollen die von Dir gemachten Änderungen in der index.html bewirken?

  • In der index.html gibt es 2 Unterschiede zur Wiki-Datei:
    Es stehen nur noch verschiedene zusätzliche Links und src-Referenzen im head-Bereich - die sind von früheren Versuchen stehen geblieben und sind vermutlich unnötig.
    Im body-Bereich ist für das zweite gridster-Element der Text "Start" eingefügt.
  • Die Datei menu.html habe ich vereinfacht, indem ich die Referenzen auf die Dummies und die dazugehörige Abhängigkeit der Icons vom Status der Dummies entfernt habe. Nach meinem Verständnis sollte das aber keinerlei Einfluss auf die Navigation und den Seitenaufbau haben.
  • Die pagetab01.html etc. sind gar nicht geändert, sie sind identisch aus dem Wiki übernommen.
    Zum Test habe ich jetzt aber auch nochmal die Original index.html und menu.html 1:1 übernommen, und die Dummies in mein fhem, eingefügt.
ZitatWie verhalten sich Deine Testbrowser bei unveränderter Übernahme des Wiki-Beispiels?
Das Ergebnis ist im Wesentlichen unverändert (bis auf die Disconnect-Fehlermeldungen, die jetzt nicht mehr auftauchen):

  • ==> Das Verhalten im Firefox (bzgl. der Navigation) ist unverändert wie zuvor:
       Neben dem Menu wird die leere Seite aus index.html angezeigt.
       Beim Klicken auf den ERSTEN Button (home) passiert gar nichts, es kommt KEINE Fehlermeldung.
       Bei den beiden anderen Buttons wird jeweils beim ERSTEN Klicken die gleiche Fehlermeldung angezeigt, ohne dass ansonsten etwas passiert. Bei weiteren Klicks passiert gar nichts mehr.
       (Manchmal (!!!) wird auch beim ersten Aufruf der index.html gar nichts geladen - ich habe noch nicht herausgefunden wann das passiert und wann nicht.)

       Zusätzlich habe ich noch Firefox im abgesicherten Mode probiert, bei dem alle Add-Ons deaktiviert sind:
       ==> Das Verhalten ist unverändert wie zuvor.

  • ==> Das Verhalten in Chrome ist unverändert:
       Es wird neben dem menu.html (mit allen Icons) sofort pagetab01.html angezeigt, statt einer leeren Seite aus der index.html (wie ich erwarten würde).
       Die Navigation funktioniert danach wie vorgesehen. Es gibt keine Fehlermeldungen.

  • ==> Das Verhalten im Internet Explorer(11) ist unverändert, außer dass keine Disconnect-Toast-Fehlermeldungen mehr erscheinen:
       In dem menu.html werden die Icons nicht angezeigt, sondern nur die Texte. Die nicht sichtbaren Icons können aber angeklickt werden! Daneben wird sofort pagetab01.html angezeigt, statt einer leeren Seite aus der index.html (wie ich erwarten würde).
       Die Navigation funktioniert danach wie vorgesehen. Es gibt keine Fehlermeldungen.

  • ==> Das Verhalten in Edge ist nahezu unverändert, außer dass keine Disconnect-Toast-Fehlermeldungen mehr erscheinen (und damit identisch mit der von Chrome):
       Es wird neben dem menu.html (mit allen Icons) sofort pagetab01.html angezeigt statt einer leeren Seite aus der index.html (wie ich erwarten würde).
       Die Navigation funktioniert danach wie vorgesehen. Es gibt keine Fehlermeldungen.
ZitatWie genau rufst Du denn die index.html überhaupt auf? (http,https,lokal,remote,...)
In der Regel rufe ich zum Testen die Seite direkt im Browser auf:
über https://<IP>:<Port>/fhem/ftui/  (mit Eingabe von Benutzername und Passwort)

oder über fhem-webUI:
define TABLETUI HTTPSRV ftui/ ./www/tablet Tablet-UI

Das Verhalten im Firefox ist in beiden Fällen identisch.

Viele Grüße     
Norbert
FHEM auf RasPi, diverse HM-Komponenten

OdfFhem

@NoKi

Firefox unter Android kann ich leider nicht ausprobieren, aber ich habe mal meine Win10-Testmaschine gestartet und das Wiki-Beispiel unter den genannten vier Browsern getestet:

  • Den Disconnect-Fehler unter Edge bzw. IE11 kann ich dort ebenfalls reproduzieren; er taucht nicht immer auf, aber doch so oft, dass er stört. Ansonsten wird das Beispiel aber wie erwartet dargestellt.
  • Unter Firefox funktioniert das Beispiel ohne irgendwelche Auffälligkeiten.
  • Und auch unter Chrome läuft alles wie erwartet.
Optisch sehen die Darstellungen bei den vier Browsern sehr ähnlich aus; es fehlen keinerlei Icons, o.ä. (s. angehängtes Bild).


Im Unterschied zu Dir setze ich kein https ein; ob das letztlich für Deine Probleme sorgt, kann ich nicht beurteilen.
Setzt Du eine aktuelle Android-Version ein oder ist es schon eine betagte mit einem überalterten WebView-Control?
Hast Du das Wiki-Beispiel unter Android auch mal mit Chrome getestet?


ZitatEs wird neben dem menu.html (mit allen Icons) sofort pagetab01.html angezeigt, statt einer leeren Seite aus der index.html (wie ich erwarten würde).
Das automatische Laden des ersten Pagetab (im Beispiel pagetab01.html) gehört zum Standardverhalten. Der eigentliche Inhalt der index.html wird beim Initialisieren sofort ersetzt - wird also, wenn überhaupt, nur für einen klitzekleinen Moment sichtbar.

NoKi

Hallo OdfFhem,

nochmals Danke für die Hilfe.

ZitatDas automatische Laden des ersten Pagetab (im Beispiel pagetab01.html) gehört zum Standardverhalten. Der eigentliche Inhalt der index.html wird beim Initialisieren sofort ersetzt - wird also, wenn überhaupt, nur für einen klitzekleinen Moment sichtbar.
Das klärt zumindest den Teil. Das finde ich zwar schade - ich hatte erwartet und gehofft, dass die Unterseiten erst dann geladen werden, wenn man den Button betätigt (oder wenn man bei dem pagetab class="default" setzt) - aber dann ist das zumindest kein Fehler.
Damit funktionieren dann Chrome, Edge wohl richtig.

Bleibt in IE11 das Problem mit den nicht sichtbaren Icons und im Firefox die Ladeprobleme und die Navigation insgesamt mit dem JS:45-Fehler.

Die Android-Version ist alt: 4.4.2
Darauf habe ich sowohl Firefox als auch Chrome getestet - mit den gleichen Ergebnissen wie unter Win10.

ZitatIm Unterschied zu Dir setze ich kein https ein; ob das letztlich für Deine Probleme sorgt, kann ich nicht beurteilen.
Kann ich leider auch nicht beurteilen. Ich kann das ja mal Testweise wieder umstellen in fhem. Allerdings muss es letzlich auch mit https gehen - mit anderen Browsern geht es ja auch.
Interessant und merkwürdig ist für mich nach wie vor, dass pagebutton- und link-Navigation problemlos funktionieren.

VG   Norbert
FHEM auf RasPi, diverse HM-Komponenten

amenomade

Setze mal verbose 5 auf deinem HTTPSRV TabletUI Device, und guck mal, ob etwas in der Log kommt.

Wie alt sind deine FHEM und TabletUI?

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

NoKi

Hallo OdfFhem,

Sowohl fhem als auch tabletUI sind (zumindest ziemlich) aktuell:

  • fhem: fhem.pl:20069/2019-08-27
  • tabletUI: 2.7.14

Beim Aufruf von TabletUI kommen auch mit verbose 5 bei dem HTTPSRV TabletUI Device keine Meldungen im Log.

Aber:
Wenn ich fhem ohne https laufen lasse, funktioniert auch im Firefox alles!
Das ist wohl endlich die richtige Spur. Das hat schon mal sehr geholfen. Vielen Dank!
Allerdings verstehe ich leider nicht, warum das jetzt funktioniert, und habe daher auch noch keine Idee, was ich tun müsste, um es auch mit https zum Funktionieren zu bringen. Da muss ich jetzt weiter forschen. Hast du dazu noch einen Tip?

Darüber hinaus:
Bei jedem Start von FHEM kommen (mit und ohne https) folgende Meldungen:

  • FHEMWEB WEB CSRF error: csrf_268083012418819 ne csrf_308722839278424 for client WEB_192.168.178.36_61270 / command shutdown restart. For details see the csrfToken FHEMWEB attribute.
  • FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 192.168.178.10)
Um diese Fehlermeldungen wollte ich mich auch noch kümmern, war aber davon ausgegangen, dass sie mit dem pagetab-Firefox-Problem nichts zu tun haben, da es in anderen Browsern ja funktioniert. Da die mit und ohne https auftreten, gehe ich nach wie vor davon aus, dass die Annahme stimmt, oder?

Viele Grüße   Norbert
FHEM auf RasPi, diverse HM-Komponenten

amenomade

ZitatFHEMWEB WEB CSRF error: csrf_268083012418819 ne csrf_308722839278424 for client WEB_192.168.178.36_61270 / command shutdown restart. For details see the csrfToken FHEMWEB attribute.
Das ist nw. nicht die Ursache deines Problems. Um das zu vermeiden, musst Du nach einem Restart von Fhem, dein Browser komplett schliessen und wieder öffnen. Beim Restart von Fhem wird ein neues csrf Token generiert und dein Browser, so lange nicht neu gestartet, merkt es nicht.

ZitatFHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 192.168.178.10)
Das könnte evl. etwas damit zu tun haben, aber unwahrscheinlich. Was hast Du als sslVersion Attribut auf global?

Kannst Du debug höher setzen, und die Console-Ausgabe zeigen?
<meta name="debug" content="5">

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

NoKi

Hallo OdfFhem,

Zum Fehler:
ZitatFHEMWEB WEB CSRF error: csrf_268083012418819 ne csrf_308722839278424 for client WEB_192.168.178.36_61270 / command shutdown restart. For details see the csrfToken FHEMWEB attribute.
Das habe ich nachvollziehen können: wenn ich das Browserfenster nach dem fhem-Restart sofort schließe und neu öffne kommt diese Fehlermeldung nicht mehr. Es reicht aber auch, nur eine andere fhem-Seite aufzurufen, oder die Seite neu zu laden. Dann kann ich die Meldung also ignorieren.

Zum Fehler:
ZitatFHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 192.168.178.10)

  • Bei global habe ich das Attribut sslVersion gar nicht besetzt.
    Testweise habe ich auch dort einmal TLSv12:!SSLv3 eingesetzt. Sowohl der Fehler beim fhem-Restart als auch der js:45-Fehler beim Start von TabletUI mit https sind gleich geblieben.
    Muss das Attribut gesetzt sein?

  • Bei define WEB FHEMWEB 8083 global:
    OHNE https ist dieses Attribut auch nicht besetzt.
    MIT https hatte ich zusätzlich eingefügt:
       attr WEB HTTPS 1
       attr WEB sslVersion TLSv12:!SSLv3
Der Fehler tritt aber ja auch mit und ohne https auf.


ABER, leider gibt es Neues zu dem ursprünglichen Anlass für diesen Thread zum js:45-Fehler:

Nach Hin- und Her- ändern der fhem.cfg wegen https habe ich jetzt wieder die exakt gleiche Konfiguration OHNE https abgespeichert - und erhalte trotzdem wieder den js:45-Fehler, der ja zuvor beim Umstellen auf http verschwunden war.

Daraufhin habe ich als letzten Versuch noch Browser-Cache gelöscht, zur IP-Adresse gehörende Cookies gelöscht, Popup-Fenster für http://<IP:port> und https:<IP:port> als Ausnahme zugelassen, Browser neu gestartet ==> aber keine Änderung; der js:45-Fehler bleibt jetzt. Das Verhalten ist jetzt bis auf eine Ergänzung auch ohne https wieder komplett das gleiche, wie oben mit https beschrieben:

  • Neue Erkenntnis: Exakt bei jedem ERSTEN Aufruf der index.html wird gar nichts geladen, bei jedem ZWEITEN Aufruf wird die menu.html-Seite geladen - es sei denn, mann hat einen der Buttons 2 oder 3 betätigt => dann wird beim nächsten Laden auch wieder die menu.html angezeigt. (bisher gab es das auch, allerdings hatte ich diese Regelmäßigkeit nicht erkannt).

  • Eine pagetab-Seite wird generell nicht geladen.
  • Beim Klicken auf den ERSTEN Button (home) passiert gar nichts, es kommt KEINE Fehlermeldung.
    Bei den beiden anderen Buttons wird jeweils beim ERSTEN Klicken die gleiche Fehlermeldung angezeigt, ohne dass ansonsten etwas passiert. Bei weiteren Klicks passiert gar nichts mehr.
Das überfordert mich jetzt völlig. Warum war der Fehler zwischenzeitlich verschwunden? Wissentlich habe ich nichts geändert (bzw. alles wieder zurück gesetzt auf http). Er scheint dann wohl doch nicht mit http vs. https zusammen zu hängen.


Dann habe ich nach deiner Empfehlung folgendes in den head-Teil der index.html eingebaut:
<meta name="debug" content="5">
und dann jeweils in einem neu geöffneten Browser-Fenster die url (mit http) für das TabletUI aufgerufen und die Konsolen-Ausgabe festgehalten:

Konsolenausgabe bei Aufruf der index.html - wenn keine Icons angezeigt werden:
Aufruf der index.html aus neu geöffnetem Browser-Fenster über URL direkt - http ==> es werden keine Icons angezeigt, es wird keine pagetab-Seite angezeigt

Base dir: ./ fhem-tablet-ui.js:2525:9
jQuery dynamically loaded fhem-tablet-ui.js:2534:25
Filename: fhem-tablet-ui.js:2091:21
FHEM dir: http://192.168.178.10:8083/fhem/ fhem-tablet-ui.js:2091:21
dynamic load file:./lib/jquery.toast.min.js / async:false fhem-tablet-ui.js:2091:21
Got csrf from FHEM:csrf_959816031403573 fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/jquery.toast.min.js fhem-tablet-ui.js:2091:21
fhem-tablet-ui.css dynamically loaded. Waiting until it is ready to use... fhem-tablet-ui.js:2091:21
fhem-tablet-ui.css dynamically loaded. Waiting until it is ready to use... fhem-tablet-ui.js:2091:21
fhem-tablet-ui.css is ready to use. fhem-tablet-ui.js:2091:21
initPage - area=html fhem-tablet-ui.js:2091:21
dynamic load file:./lib/jquery.gridster.min.js / async:false fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/jquery.gridster.min.js fhem-tablet-ui.js:2091:21
init templates - Done fhem-tablet-ui.js:2091:21
initWidgets before- area=html fhem-tablet-ui.js:2091:21
fhem-tablet-ui.js:2091:21
initWidgets after removed- area=html fhem-tablet-ui.js:2091:21
fhem-tablet-ui.js:2091:21
Load plugin "pagetab" for area "html" fhem-tablet-ui.js:2091:21
Start load plugin "pagetab" for area "html" fhem-tablet-ui.js:2091:21
dynamic load file:./js/widget_pagetab.js / async:true fhem-tablet-ui.js:2091:21
dynamidynamic load done:./js/widget_pagetab.js fhem-tablet-ui.js:2091:21
Start load plugin "famultibutton" for area "undefined" fhem-tablet-ui.js:2091:21
dynamic load file:./js/widget_famultibutton.js / async:true fhem-tablet-ui.js:2091:21
dynamidynamic load done:./js/widget_famultibutton.js fhem-tablet-ui.js:2091:21
dynamic load file:./lib/fa-multi-button.min.js / async:false fhem-tablet-ui.js:2091:21
dynamic load file:./lib/jquery-ui.min.js / async:false fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/fa-multi-button.min.js fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/jquery-ui.min.js fhem-tablet-ui.js:2091:21
Finished load plugin "famultibutton" for area "undefined" fhem-tablet-ui.js:2091:21
Try to init plugin: pagetab fhem-tablet-ui.js:2091:21
init is executed / currently at : http://192.168.178.10:8083/fhem/ftui/ fhem-tablet-ui.js:2091:21
get localStore pagetab_doload (init) to: null fhem-tablet-ui.js:2091:21
init set doload : home: pagetab01.html fhem-tablet-ui.js:2091:21
init set doload to <initializing> fhem-tablet-ui.js:2091:21
load page called with : pagetab01.html fhem-tablet-ui.js:2091:21


Konsolenausgabe bei Aufruf der index.html - wenn die Icons angezeigt werden:
Aufruf der index.html aus neu geöffnetem Browser-Fenster über URL direkt - http ==> Icons werden angezeigt, es wird keine pagetab-Seite angezeigt

Base dir: ./ fhem-tablet-ui.js:2525:9
jQuery dynamically loaded fhem-tablet-ui.js:2534:25
Filename: fhem-tablet-ui.js:2091:21
FHEM dir: http://192.168.178.10:8083/fhem/ fhem-tablet-ui.js:2091:21
dynamic load file:./lib/jquery.toast.min.js / async:false fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/jquery.toast.min.js fhem-tablet-ui.js:2091:21
Got csrf from FHEM:csrf_959816031403573 fhem-tablet-ui.js:2091:21
fhem-tablet-ui.css dynamically loaded. Waiting until it is ready to use... 2 fhem-tablet-ui.js:2091:21
fhem-tablet-ui.css is ready to use. fhem-tablet-ui.js:2091:21
initPage - area=html fhem-tablet-ui.js:2091:21
dynamic load file:./lib/jquery.gridster.min.js / async:false fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/jquery.gridster.min.js fhem-tablet-ui.js:2091:21
init templates - Done fhem-tablet-ui.js:2091:21
initWidgets before- area=html fhem-tablet-ui.js:2091:21
fhem-tablet-ui.js:2091:21
initWidgets after removed- area=html fhem-tablet-ui.js:2091:21
fhem-tablet-ui.js:2091:21
Load plugin "pagetab" for area "html" fhem-tablet-ui.js:2091:21
Start load plugin "pagetab" for area "html" fhem-tablet-ui.js:2091:21
dynamic load file:./js/widget_pagetab.js / async:true fhem-tablet-ui.js:2091:21
dynamidynamic load done:./js/widget_pagetab.js fhem-tablet-ui.js:2091:21
Start load plugin "famultibutton" for area "undefined" fhem-tablet-ui.js:2091:21
dynamic load file:./js/widget_famultibutton.js / async:true fhem-tablet-ui.js:2091:21
dynamidynamic load done:./js/widget_famultibutton.js fhem-tablet-ui.js:2091:21
dynamic load file:./lib/fa-multi-button.min.js / async:false fhem-tablet-ui.js:2091:21
dynamic load file:./lib/jquery-ui.min.js / async:false fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/fa-multi-button.min.js fhem-tablet-ui.js:2091:21
dynamidynamic load done:./lib/jquery-ui.min.js fhem-tablet-ui.js:2091:21
Finished load plugin "famultibutton" for area "undefined" fhem-tablet-ui.js:2091:21
Try to init plugin: pagetab fhem-tablet-ui.js:2091:21
init is executed / currently at : http://192.168.178.10:8083/fhem/ftui/ fhem-tablet-ui.js:2091:21
get localStore pagetab_doload (init) to: initializing fhem-tablet-ui.js:2091:21
normal init : fhem-tablet-ui.js:2091:21
Finished load plugin "pagetab" for area "html" fhem-tablet-ui.js:2091:21
initWidgets - Done fhem-tablet-ui.js:2091:21
restartLongpoll fhem-tablet-ui.js:2091:21
stopLongpoll fhem-tablet-ui.js:2091:21
shortpoll: start in (ms):500 fhem-tablet-ui.js:2091:21
initPage-html: 438ms - Timer beendet fhem-tablet-ui.js:870:25
initPage (html): in 437ms fhem-tablet-ui.js:2091:21
startLongpoll: true fhem-tablet-ui.js:2091:21
websockets URL=ws://192.168.178.10:8083/fhem/?XHR=1&inform=type=status;filter=dummy1,dummy2, STATE;since=1570099580436;fmt=JSON&timestamp=1570099580451 fhem-tablet-ui.js:2091:21
2 fhem-tablet-ui.js:2091:21
start shortpoll fhem-tablet-ui.js:2091:21
send to FHEM: jsonlist2 dummy1,dummy2 STATE fhem-tablet-ui.js:2091:21
shortpoll: start in (ms):900000 fhem-tablet-ui.js:2091:21
get jsonlist2: 118ms - Timer beendet fhem-tablet-ui.js:1022:29
fhemJSON: 0=Arg 1=Results fhem-tablet-ui.js:2091:21
shortpoll: fhemJSON.Results.length=2 fhem-tablet-ui.js:2091:21
isUpdated=false 2 fhem-tablet-ui.js:2091:21
shortPoll: Done fhem-tablet-ui.js:2091:21
read jsonlist2: 12ms - Timer beendet fhem-tablet-ui.js:1118:29


Konsolenausgabe beim ERSTEN Klicken von Button 2 oder 3 (wobei der js:45-Fehler kommt):
ERSTES Klicken von Button 3 - Fehler js:45 etc. - sonst keine Reaktion

change window location : pagetab03.html fhem-tablet-ui.js:2091:21
toggle on with : pagetab03.html fhem-tablet-ui.js:2091:21
load page called with : pagetab03.html fhem-tablet-ui.js:2091:21
SecurityError: The operation is insecure. widget_pagetab.js:43
    loadPage http://<Benutzer:Passwort>@192.168.178.10:8083/fhem/ftui/js/widget_pagetab.js:43
    toggleOn http://<Benutzer:Passwort>@192.168.178.10:8083/fhem/ftui/js/widget_pagetab.js:65
    toggleOn http://<Benutzer:Passwort>@192.168.178.10:8083/fhem/ftui/js/widget_famultibutton.js:399
    u http://<Benutzer:Passwort>@192.168.178.10:8083/fhem/ftui/lib/fa-multi-button.min.js:1
    jQuery 2
        dispatch
        handle


Es gibt KEINE Ausgabe in der Konsole beim ZWEITEN Drücken der Buttons 2 oder 3 und bei jedem Klicken auf Button 1


Viele Grüße   Norbert
FHEM auf RasPi, diverse HM-Komponenten

amenomade

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

NoKi

Alle Cookies erlauben ==> keine Änderung.

Ich habe auch nochmal den abgesicherten Modus von Firefox probiert ==> keine Änderung.
FHEM auf RasPi, diverse HM-Komponenten

amenomade

Hmm das wird schwierig. Ich kann mir nicht vorstellen, was das Problem sein könnte.

Teste mal noch mit
<meta http-equiv="Cache-Control" content="no-store" />in den Headers in index.html.

Ansonsten bleibt nur das step by step debugging in der Console des Browsers... was eigentlich schwierig ist zu verfolgen
Oder/und dein Browser komplett auf standard Einstellungen zurückzusetzen.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

NoKi


  • Mit <meta http-equiv="Cache-Control" content="no-store" /> in der index.html ==> keine Änderung des Verhaltens
  • Browser mit der Firefox-eigenen Routine auf Standard-Einstellungen zurückgesetzt ==> keine Änderung des Verhaltens
ABER:
  • Komplettes Firefox-Profil mit allen Einstellung gelöscht ==> alles funktioniert!!!
Jetzt kann ich weitersuchen, bei welcher Einstellung das Problem auftaucht.
Erst mal wieder vielen Dank - ich werde berichten.

VG   Norbert
FHEM auf RasPi, diverse HM-Komponenten

amenomade

Ich würde in Richtung Add-Ons oder in Richtung Cookies zuerst suchen.

Hattest Du mal irgendwas über about:config geändert, oder hast Du immer nur die Menüs benutzt?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

NoKi

Neue Erkenntnis:

Die Fehler treten auf:

  • Bei Direktaufruf von TabletUI über die url mit:
          http://<Benutzer:Passwort>@<IP:port>/fhem/ftui/
  • Und beim Aufruf von TabletUI aus fhem heraus, wenn ich zunächst fhem starte mit
          http://<Benutzer:Passwort>@<IP:port>/fhem/
    und dann TabletUI aufrufe aus fhem heraus über
          define TABLETUI HTTPSRV ftui/ ./www/tablet Tablet-UI
    in der fhem.cfg.
Es treten KEINE Fehler auf, wenn ich die Aufrufe ohne die Benutzer:Passwort-Angabe mache, also

  • Bei Direktaufruf von TabletUI über die url mit:
          http://<IP:port>/fhem/ftui/
  • Und beim Aufruf von TabletUI aus fhem heraus, wenn ich zunächst fhem starte mit:
          http://<IP:port>/fhem/
    und dann TabletUI aufrufe aus fhem wie oben über
          define TABLETUI HTTPSRV ftui/ ./www/tablet Tablet-UI
    in der fhem.cfg.
    Beim ersten Aufruf werden dann die Zugangsdaten abgefragt.
Ich war bisher der Meinung, dieser Zusatz in der URL würde einfach die Abfrage im Browser oder die Speicherung von Benutzer und Passwort im Browser ersparen. Es scheint aber wohl etwas anderes zu passieren. Was verstehe ich da nicht?

Interessant scheint mir auch:

  • Dieses Problem tritt (bei mir) nur bei der Nutzung von pagetab und nur bei Firefox auf.
  • Nach einmaliger Eingabe von Benutzer/Passwort klappt der Zugriff auf fhem, per Direktaufruf von TabletUI über die url, und auch auf TabletUI aus fhem heraus ohne erneute Passworteingabe oder vorherige Speicherung der Zugangsdaten im Browser. Dies gilt auch, wenn man neue Browser-Fenster für fhem oder TabletUI öffnet. Erst nach komplettem Schließen und Neustart des Browsers (nicht nur der Seite!!) werden die Zugangsdaten dann wieder (einmalig) abgefragt.
    Daran ändert auch das Löschen von Cookies und Cache nichts, solange man danach den Browser nicht komplett schließt.
    Wo wird das gespeichert?

Jetzt ist dieses Verhalten übrigens auch gleich wenn ich die alten Einstellungen und Add-Ons des Browsers wieder verwende, und auch mit aktiviertem https in fhem.

VG    Norbert
FHEM auf RasPi, diverse HM-Komponenten