[FTUI 3] Werte aktualisieren sich nur sporadisch

Begonnen von dennis_n, 28 Januar 2023, 12:48:23

Vorheriges Thema - Nächstes Thema

dennis_n

Hallo,

ich habe das Problem, dass sich die Werte in der Tablet Ansicht nicht immer sofort aktualisieren.
Beispielsweise zeige ich mir Restlaufzeit meiner Spülmaschine am Tablet an.

In fhem werden die Werte alle 60 Sekunden ausgelesen. Sobald das Reading aktualisiert wurde, wird auch die 1er Version TabletUI  aktualisiert.
Bei der 3er Version allerdings nicht. Da bleibt es unter Umständen minutenlang auf einem Wert stehen, bevor es dann irgendwann mal wieder aktualisiert wird.

Wie kann ich das ändern?

Im <head> habe ich stehen:
<meta name="toast_position" content="topLeft">
  <meta name="toast" content="0">
  <meta name="longpoll" content="1"> <!-- 1=longpoll;0=shortpoll every 30sec -->
  <meta name="longpoll_type" content="websocket">


Gruss
Dennis

dennis_n

Hat denn wirklich niemand einen Tipp, woran das liegen könnte?

Gruss
Dennis

OdfFhem

Zitat von: dennis_n am 28 Januar 2023, 12:48:23

  <meta name="toast_position" content="topLeft">
  <meta name="toast" content="0">
  <meta name="longpoll" content="1"> <!-- 1=longpoll;0=shortpoll every 30sec -->
  <meta name="longpoll_type" content="websocket">


Fürs Aktualisieren der Daten eigentlich uninteressant, jedoch Anmerkung:
- meta-Element toast schaltet mit dem Wert 0 die Anzeige der Pop-Ups aus
- meta-Element toast_position damit eigentlich überflüssig

Fürs Aktualisieren der Daten:
- meta-Element longpoll wird nicht abgefragt
- meta-Element longpoll_type wird nicht abgefragt

Vielleicht zeigst Du mal das von FTUI3 verwendete FHEMWEB-Device ...

dennis_n

Hi,

hier mal die lists:

Internals:
   DEF        ftui3/ ./www/ftui/ Tablet-UI3
   FUUID      639da11b-f33f-8212-527b-9f09726fdbfb9cbc
   NAME       TABLETUI3
   NR         195
   STATE      TABLETUI3
   TYPE       HTTPSRV
   fhem:
     directory  ./www/ftui/
     friendlyname Tablet-UI3
     infix      ftui3/
Attributes:


Und das list von WEBtablet:
Internals:
   BYTES_READ 1564992
   BYTES_WRITTEN 763416895
   CONNECTS   2571
   DEF        8085 global
   FD         7
   FUUID      5ddb9356-f33f-8212-bb84-2b494b7aec227b65
   NAME       WEBtablet
   NR         36
   NTFY_ORDER 50-WEBtablet
   PORT       8085
   STATE      Initialized
   TYPE       FHEMWEB
   READINGS:
     2023-01-24 14:10:25   state           Initialized
Attributes:
   csrfToken  none
   longpoll   1
   stylesheetPrefix dark


Gruss
Dennis

OdfFhem

Ich habe mal mit genau Deinen Einstellungen getestet und erwartungsgemäß funktioniert alles reibungslos.

Im FHEMWEB-Device kannst Du eigentlich auch "longpoll 1" entfernen, da dies die Voreinstellung ist.


Kannst Du ein auf das Wesentliche reduzierte HTML-Beispiel bereitstellen, mit dem "jeder" Dein Problem nachvollziehen könnte ?

dennis_n

#5
Ich habe mal 2 Beispiele aus meiner HTML Datei genommen, bei denen es besonders auffällt.

<html>

<head>
 
  <script src="ftui.js"></script>

  <link href="ftui.css" rel="stylesheet">
  <link href="themes/ftui-theme.css" rel="stylesheet">
  <link href="favicon.ico" rel="icon" type="image/x-icon" />

  <!-- avoid 300ms delay on click-->
 
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
  <meta name="mobile-web-app-capable" content="yes">
  <meta name="apple-mobile-web-app-capable" content="yes">
 
   
  <meta name="toast_position" content="topLeft">
  <meta name="toast" content="5">
  <meta name="longpoll" content="1"> <!-- 1=longpoll;0=shortpoll every 30sec -->
  <meta name="longpoll_type" content="websocket">

  <!-- verbose level 0-4 -->
  <meta name="debug" content="0">


  <title>Mein Haus</title>
</head>

<body>


<ftui-tab-view id="View3">

      <ftui-grid-tile row="1" col="2" height="4" width="12">
      <ftui-grid-header color="secondary">Rolläden unten</ftui-grid-header>
      <ftui-row>     
      <ftui-column>     
      <ftui-label size="2">Küche</ftui-label>
      <ftui-button (value)="set ZWave_SWITCH_MULTILEVEL_9 dim 99" direction="vertical" color="current" fill="outline">
      <ftui-icon name="angle-up" class="size-1" height="90%"></ftui-icon>
      </ftui-button>
     
      <ftui-icon [name]="ZWave_SWITCH_MULTILEVEL_9:actual_position | map('0:window-shutter, 100:window-shutter-open')" [color]="ZWave_SWITCH_MULTILEVEL_9:actual_position | map('0:red, 100:mygreen')"  class="size-3">
      </ftui-icon>
     
      <ftui-button (value)="set ZWave_SWITCH_MULTILEVEL_9 dim 0" direction="vertical" color="current" fill="outline">
      <ftui-icon name="angle-down" class="size-1" height="90%"></ftui-icon>
      </ftui-button>
      </ftui-column>
     
      </ftui-row>
      </ftui-grid-tile>

      <ftui-grid-tile row="1" col="2" height="2" width="2">
        <ftui-label size="2">Spülmaschine</ftui-label>
        <ftui-slider [(value)]="SMV6ZCX07E:Fortschritt" min="0" max="100" handle="none" readonly></ftui-slider>
        <ftui-label [text]="SMV6ZCX07E:BSH.Common.Option.ProgramProgress"></ftui-label>
      </ftui-grid-tile>
     
     
    </body>

</html>


Zur Anzeige nutze ich ein altes iPad an der Wand.

Erst wenn ich die Seite neu lade, werden die Werte aktualisiert bei FTUI3.
Wenn ich hingegen die Seite mit dem alten TabletUI öffne, werden die Werte sofort geändert.

Es muss also schon irgendwas mit dem FTUI3 zu tun haben.

Selbst wenn ich die Tablet Ansicht im Browser auf habe, ändern sich die Werte erst, wenn ich die Seite neu lade.

Gruss
Dennis

grossmaggul

ZitatZur Anzeige nutze ich ein altes iPad an der Wand.
Wie alt?
FHEM auf Debian Buster Server, 2 x nanoCUL868, 1xnanoCUL465; Homematic, MAX, MiLight, HUE,  2 x Gosund SP1

dennis_n

Es ist ein iPad Air2

Aber wie gesagt, habe das gleiche Problem ja auch am Rechner.
Dort ändert sich der Wert des Readings erst, wenn ich länger auf der Seite bleibe und sie im Vordergrund ist.

Wenn ich beispielsweise mehrere Tabs im Browser auf habe und der Tab mit dem FTUI3 ist nicht der aktive, ändern sich auch keine Werte.
Wenn ich dann den Tab mit dem FTUI3 aktiv habe, dauert es bis sich die Werte aktualisieren. Aber auch nur einmalig. Wenn ich nämlich in dem Tab bleibe, ändern sich die Werte erstmal nicht, sondern auch wieder erst nach einer gewissen Zeit (zwischen 45 Sekunden und Minute nachdem sich das eigentliche Reading in fhem geändert hat).

Ich kann das Phänomen ganz gut mit der Spülmaschine beobachten. Dort wird mir jede Minute der Fortschritt aktualisiert. Ebenso im Reading bei fhem. Das alte TabletUI aktualisiert sich ebenfalls sofort, wenn das Reading in fhem aktualsiert wurde.
Nur im FTUI3 gibt es die Verzögerung.

Gruss
Dennis

mr_petz

#8
Also ES2020 bzw ES6 sollte da laufen wenn das ios höher 12 ist... (letzte dafür ist iOS15.7.3)
https://kangax.github.io/compat-table/es2016plus/

LG

dennis_n

ok, das betrifft das iPad.
Aber ich habe doch die gleichen Probleme im Browser am Rechner. Windows 10 mit aktuellem Browser Firefox.

Gruss
Dennis

OdfFhem

@dennis_n

Habe mal Dein Beispiel ausprobiert.
Klar, die Geräte bzw. Readings musste ich abändern ... aber anschließend wird jede Wertänderung unmittelbar dargestellt.

Da Dein geschildertes Problem auch im Desktop-Fall auftritt, solltest Du mal "<meta name="debug" content="1">" verwenden und die Konsole der Entwickler-Tools beobachten.
Ändere einen Wert und schaue, ob diese Wertänderung in der Konsole auftaucht.
Wenn nein, dann wird wohl kein Event ausgelöst ...
Wenn ja, dann sollte der neue Wert auch am Schirm dargestellt werden ...

dennis_n

OK, habe ich gemacht.
Im Browser in der Konsole befinden sich zwei Fehler nachdem ich einen Rolladen geöffnet habe, und sich das Icon nicht aktualisiert hat:

Die Verbindung zu ws://192.168.2.42:8083/fhem/?XHR=1&inform=type=status;filter=speakFlur,myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20state%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675083104887;fmt=JSON&timestamp=1675083128425 wurde unterbrochen, während die Seite geladen wurde. fhem.service.js:251:39


Und:

1 [websocket] error event
error { target: WebSocket, isTrusted: true, srcElement: WebSocket, eventPhase: 0, bubbles: false, cancelable: false, returnValue: true, defaultPrevented: false, composed: false, timeStamp: 53865, ... }
ftui.helper.js:152:17
    error http://192.168.2.42:8083/fhem/ftui3/modules/ftui/ftui.helper.js:152
    onerror http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:266

dennis_n

1 [websocket] error event
error { target: WebSocket, isTrusted: true, srcElement: WebSocket, currentTarget: WebSocket, eventPhase: 2, bubbles: false, cancelable: false, returnValue: true, defaultPrevented: false, composed: false, ... }
ftui.helper.js:152:17
    error http://192.168.2.42:8083/fhem/ftui3/modules/ftui/ftui.helper.js:152
    onerror http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:266
    (Async: EventHandlerNonNull)
    connect http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:265
    timer http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:299
    (Async: setTimeout handler)
    reconnect http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:298
    healthCheck http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:419
    scheduleHealthCheck http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:411
    (Async: setTimeout handler)
    scheduleHealthCheck http://192.168.2.42:8083/fhem/ftui3/modules/ftui/fhem.service.js:410
    checkConnection http://192.168.2.42:8083/fhem/ftui3/modules/ftui/ftui.app.js:206
    init http://192.168.2.42:8083/fhem/ftui3/modules/ftui/ftui.app.js:72

OdfFhem

Zitat von: dennis_n am 30 Januar 2023, 13:55:13
Im Browser in der Konsole befinden sich zwei Fehler nachdem ich einen Rolladen geöffnet habe, und sich das Icon nicht aktualisiert hat:
Heißt das jetzt, dass die Fehlermeldungen beim Bedienen des Rolladens ausgelöst werden ... also rauf oder runter oder ??? ...
Hängt es immer nur an diesem Rolladen ... wie sieht der auslösende Eintrag im Event-Monitor aus ?
Im Zweifel einfach mal einen dummy mit irgendeinem Reading als ftui-label integrieren und mit setreading das Aktualisierungsverhalten beobachten ...

Zitat von: dennis_n am 30 Januar 2023, 13:55:13

Die Verbindung zu ws://192.168.2.42:8083 ... wurde unterbrochen, während die Seite geladen wurde. fhem.service.js:251:39

Weiter oben wurde das beteiligte FHEMWEB-Device gezeigt, dort war nicht Port 8083, sondern Port 8085 betroffen ... 8083 also falsch ?
Vielleicht mal den initialen Aufruf zeigen ...

Zitat von: dennis_n am 30 Januar 2023, 14:15:29
1 [websocket] error event
error { target: WebSocket, ... }

Das error-Object ist nicht ganz unwichtig, endet aber mit ...; damit fehlt - sofern tatsächlich vorhanden - die entscheidende Information ...
Bitte mal näher anschauen bzw. zeigen ...

dennis_n

Sorry ich hatte Nachtdienst und bin vorher nicht mehr dazu gekommen hier Antwort zu geben.

Also der Fehler mit Port 8083 oder 8085 war von mir. Habe die Seite im Browser unterscheidlich aufgerufen. Also Port 8085 stimmt fü das Tablet.
Jetzt rufe ich die Seite mit diesem Port im Browser auf und erhalte folgende Fehlermeldungen auf der Konsole:

ie Verbindung zu ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,speakFlur,homestatus,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,Lang_schlafen,%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20t_001_summary%20USOC%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20state%20STATE%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20doorsensorState%20actual_position%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675435731604;fmt=JSON&timestamp=1675435731879 wurde unterbrochen, während die Seite geladen wurde.

und:

[websocket] error event
error { target: WebSocket, isTrusted: true, srcElement: WebSocket, currentTarget: WebSocket, eventPhase: 2, bubbles: false, cancelable: false, returnValue: true, defaultPrevented: false, composed: false, ... }
ftui.helper.js:152:17
    error http://192.168.2.42:8085/fhem/ftui3/modules/ftui/ftui.helper.js:152
    onerror http://192.168.2.42:8085/fhem/ftui3/modules/ftui/fhem.service.js:266
    (Async: EventHandlerNonNull)
    connect http://192.168.2.42:8085/fhem/ftui3/modules/ftui/fhem.service.js:265
    timer http://192.168.2.42:8085/fhem/ftui3/modules/ftui/fhem.service.js:299
    (Async: setTimeout handler)
    reconnect http://192.168.2.42:8085/fhem/ftui3/modules/ftui/fhem.service.js:298
    startBinding http://192.168.2.42:8085/fhem/ftui3/modules/ftui/ftui.app.js:165
    initComponents http://192.168.2.42:8085/fhem/ftui3/modules/ftui/ftui.app.js:102
    initPage http://192.168.2.42:8085/fhem/ftui3/modules/ftui/ftui.app.js:81
    init http://192.168.2.42:8085/fhem/ftui3/modules/ftui/ftui.app.js:68
    main http://192.168.2.42:8085/fhem/ftui3/ftui.js:6
    <anonym> http://192.168.2.42:8085/fhem/ftui3/ftui.js:38
    (Async: EventListener.handleEvent)
    <anonym> http://192.168.2.42:8085/fhem/ftui3/ftui.js:35

OdfFhem

Zitat von: dennis_n am 03 Februar 2023, 15:52:45
Sorry ich hatte Nachtdienst und bin vorher nicht mehr dazu gekommen hier Antwort zu geben.
Kein Problem ...

Zitat von: dennis_n am 03 Februar 2023, 15:52:45

error { target: WebSocket, isTrusted: true, srcElement: WebSocket, currentTarget: WebSocket, eventPhase: 2, bubbles: false, cancelable: false, returnValue: true, defaultPrevented: false, composed: false, ... }

Wie schon weiter oben gesagt:
ZitatDas error-Object ist nicht ganz unwichtig, endet aber mit ...; damit fehlt - sofern tatsächlich vorhanden - die entscheidende Information ...
Bitte mal näher anschauen bzw. zeigen ...
Die js-Zeilen sind uninteressant, das komplette error-Objekt ist wichtig ...

dennis_n

Ich sehe in der Konsole leider nur das, was ich Dir hier rauskopiert habe.

Wie komme ich denn an den kompletten Inhalt?

Gruss
Dennis

dennis_n

#17
Habe es gefunden. Sorry, hatte übersehen dass man das aufklappen kann.
Wird aber mega viel hier darzustellen.

Kommt gleich...


Hoffe das hilft weiter`
[websocket] error event
error { target: WebSocket, isTrusted: true, srcElement: WebSocket, currentTarget: WebSocket, eventPhase: 2, bubbles: false, cancelable: false, returnValue: true, defaultPrevented: false, composed: false, ... }

bubbles: false

cancelBubble: false

cancelable: false

composed: false

currentTarget: null

defaultPrevented: false

eventPhase: 0

explicitOriginalTarget: WebSocket { url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267", readyState: 3, bufferedAmount: 0, ... }
​​
binaryType: "blob"
​​
bufferedAmount: 0
​​
extensions: ""
​​
onclose: function onclose(event)​​
onerror: function onerror(event)​​
onmessage: function onmessage(msg)
​​
onopen: null
​​
protocol: ""
​​
readyState: 3
​​
url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267"
​​
<prototype>: WebSocketPrototype { close: close(), send: send(), url: Getter, ... }

isTrusted: true

originalTarget: WebSocket { url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267", readyState: 3, bufferedAmount: 0, ... }
​​
binaryType: "blob"
​​
bufferedAmount: 0
​​
extensions: ""
​​
onclose: function onclose(event)​​
onerror: function onerror(event)​​
onmessage: function onmessage(msg)
​​
onopen: null
​​
protocol: ""
​​
readyState: 3
​​
url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267"
​​
<prototype>: WebSocketPrototype { close: close(), send: send(), url: Getter, ... }

returnValue: true

srcElement: WebSocket { url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267", readyState: 3, bufferedAmount: 0, ... }
​​
binaryType: "blob"
​​
bufferedAmount: 0
​​
extensions: ""
​​
onclose: function onclose(event)​​
onerror: function onerror(event)​​
onmessage: function onmessage(msg)
​​
onopen: null
​​
protocol: ""
​​
readyState: 3
​​
url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267"
​​
<prototype>: WebSocketPrototype { close: close(), send: send(), url: Getter, ... }

target: WebSocket { url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267", readyState: 3, bufferedAmount: 0, ... }
​​
binaryType: "blob"
​​
bufferedAmount: 0
​​
extensions: ""
​​
onclose: function onclose(event)​​
onerror: function onerror(event)​​
onmessage: function onmessage(msg)
​​
onopen: null
​​
protocol: ""
​​
readyState: 3
​​
url: "ws://192.168.2.42:8085/fhem/?XHR=1&inform=type=status;filter=myAbfall,FWDienstplan,sonnenbatterie,FK_Spielzimmer,FK_Emilie,FK_Duschbad,FK_Schlafzimmer,FK_Elternbad,FK_HWR,FK_Kueche,FK_GaesteWC,FK_Esszimmer,FK_WZlinks,FK_WZrechts,FK_Buero_links,FK_Buero_rechts,FK_Garage,Haustuer_Nuki,ZWave_SWITCH_MULTILEVEL_5,ZWave_SWITCH_MULTILEVEL_9,ZWave_SWITCH_MULTILEVEL_6,ZWave_SWITCH_MULTILEVEL_7,ZWave_SWITCH_MULTILEVEL_8,ZWave_SWITCH_MULTILEVEL_4,ZWave_SWITCH_MULTILEVEL_3,ZWave_SWITCH_MULTILEVEL_13,ZWave_SWITCH_MULTILEVEL_12,ZWave_SWITCH_MULTILEVEL_11,Lichtszene,netatmo_M02_00_00_6b_32_04,netatmo_D70_ee_50_6b_20_46,netatmo_M03_00_00_09_ce_cc,Pooltemperatur,Sonnenstand,SMV6ZCX07E,homestatus,Lang_schlafen,%20Biotonne_days%20Papiertonne2-Rad-Behaelter04-woechentl_days%20t_001_summary%20USOC%20state%20doorsensorState%20actual_position%20STATE%20Biotonne_date%20GelbeTonneGelberSack_date%20Papiertonne2-Rad-Behaelter04-woechentl_date%20temperature%20Wassertemperatur%20co2%20sr_civil%20ss_civil%20BSH.Common.Option.ProgramProgress%20GelbeTonneGelberSack_days%20sceneValue%20Fortschritt;since=1675441144894;fmt=JSON&timestamp=1675441267267"
​​
<prototype>: WebSocketPrototype { close: close(), send: send(), url: Getter, ... }

timeStamp: 167380

type: "error"

<get isTrusted()>: function isTrusted()
​​
length: 0
​​
name: "get isTrusted"
​​
<prototype>: function ()

<prototype>: EventPrototype { composedPath: composedPath(), stopPropagation: stopPropagation(), stopImmediatePropagation: stopImmediatePropagation(), ... }
​​
ALT_MASK: 1
​​
AT_TARGET: 2
​​
BUBBLING_PHASE: 3
​​
CAPTURING_PHASE: 1
​​
CONTROL_MASK: 2
​​
META_MASK: 8
​​
NONE: 0
​​
SHIFT_MASK: 4
​​
bubbles:
​​
cancelBubble:
​​
cancelable:
​​
composed:
​​
composedPath: function composedPath()
​​
constructor: function ()
​​
currentTarget:
​​
defaultPrevented:
​​
eventPhase:
​​
explicitOriginalTarget:
​​
initEvent: function initEvent()
​​
originalTarget:
​​
preventDefault: function preventDefault()
​​
returnValue:
​​
srcElement:
​​
stopImmediatePropagation: function stopImmediatePropagation()
​​
stopPropagation: function stopPropagation()
​​
target:
​​
timeStamp:
​​
type:
​​
Symbol(Symbol.toStringTag): "Event"
​​
<get bubbles()>: function bubbles()
​​
<get cancelBubble()>: function cancelBubble()
​​
<set cancelBubble()>: function cancelBubble()
​​
<get cancelable()>: function cancelable()
​​
<get composed()>: function composed()
​​
<get currentTarget()>: function currentTarget()
​​
<get defaultPrevented()>: function defaultPrevented()
​​
<get eventPhase()>: function eventPhase()
​​
<get explicitOriginalTarget()>: function explicitOriginalTarget()
​​
<get originalTarget()>: function originalTarget()
​​
<get returnValue()>: function returnValue()
​​
<set returnValue()>: function returnValue()
​​
<get srcElement()>: function srcElement()
​​
<get target()>: function target()
​​
<get timeStamp()>: function timeStamp()
​​
<get type()>: function type()
​​
<prototype>: Object { ... }

OdfFhem

Zitat von: dennis_n am 03 Februar 2023, 17:20:50
Hoffe das hilft weiter
Leider nicht ...

Kannst Du mit der rechten Maustaste eine evtl. "informationsreichere" Darstellung erzeugen ?

dennis_n

Leider nein, habe alles abgesucht und sogar mal mit dem Chrome versucht.
Aber es scheint nicht zu gehen

OdfFhem

Chrome/Firefox müssten es eigentlich können ... s. Screenshots

- Ich habe im Tab "Console" der "Entwickler-Tools" mal auf ein Objekt gefiltert ... mangels error-Objekt in meinem Fall jeweils auf "FhemService"
- Bei Dir sollte die Darstellung bzgl. error-Objekt ähnlich aussehen

- auf dem Objekt-Bezeichner "FhemService" / "Object" (steht unmittelbar hinter dem Aufklappsymbol) die rechte Maustaste betätigen ...
- es wird ein Menü aufgebaut, in dem ein Menüpunkt "Copy object" enthalten ist
- wird "Copy object" ausgewählt, steht das komplette Objekt formatiert in der Zwischenablage

Den Inhalt der Zwischenablage
... mal selbst anschauen
oder
... "evtl. anonymisiert" hier zeigen

dennis_n

Habe es mehrfach genai so versucht, aber kein Erfolg. Er kopiert immer nur das was ich Dir hier schon gezeigt habe.
Habe auch einen anderen Rechner mit anderem Betriebssystem versucht. Geht nicht.

Dann habe ich nach Plugins gesucht, die die Funktion vielleicht zur Verfügung stellen. Scheint es aber nicht zu geben.
Ich weiss nicht mehr weiter.

Danke an Dich schonmal, dass Du Dir so viel Mühe gibts. Aber ich muss den Fehler doch irgendwie wegbekommen.
Was kann ich noch tun?

Gruss
Dennis

dennis_n

Ich wollte gerade mal ein Update auf die aktuellste Version machen.
Dabei ist mir im Log von fhem folgendes aufgefallen:

2023.02.04 09:54:29 1 : Downloading https://raw.githubusercontent.com/knowthelist/ftui/master/controls_ftui.txt
2023.02.04 09:54:29 1 : RMDIR: ./restoreDir/update/2022-11-19
2023.02.04 09:54:29 1 : UPD www/ftui/components/badge/badge.component.js
2023.02.04 09:54:29 1 : open ./www/ftui/components/badge/badge.component.js failed: Permission denied, trying to restore the previous version and aborting the update


Scheinbar gibt es da eine Rechte-Problem.
Wie kann ich das denn beheben? Habe FTUI3 aber ganz normal per Wiki installiert.

dennis_n

Ich bin vielleicht ein Stück weiter.Über die Safari Konsole kann ich mir die Fehler etwas genauer anschauen.

Ich habe mal ein Screenshot angehängt.
Irgendwas kann nicht geladen werden oder es besteht ekin Zugriff darauf.


OdfFhem

Zitat von: dennis_n am 04 Februar 2023, 09:59:16
Wie kann ich das denn beheben? Habe FTUI3 aber ganz normal per Wiki installiert.
Scheint ein Rechte-Problem zu sein
... hast Du wget genutzt und unter falschem Nutzer ausgeführt ?
... werden Rechte nachträglich durch z.B. docker o.ä. angepasst ?
...


Zur Beseitigung könntest Du im Grunde
.
.
.
- zunächst einmal das ftui-Verzeichnis im www-Ordner umbenennen (z.B. "mv ftui ftui.error") ... Deine Anpassungen wären damit (in der Regel) "gerettet"
.
- anschließend "update check https://raw.githubusercontent.com/knowthelist/ftui/master/controls_ftui.txt" ausführen ... alle Dateien sollten aufgelistet werden
- und dann "update all https://raw.githubusercontent.com/knowthelist/ftui/master/controls_ftui.txt" ausführen - alle Dateien sollten heruntergeladen werden
.
- abschließend einfach mal die mitgelieferte index.html antesten ... beispielsweise Aufruf von http://<rechner>:<port>/fhem/ftui3/ ... sollte eigentlich ohne Fehleranzeige in der Konsole funktionieren
.
- nun könnte man z.B. mal eine der "Label"-Kacheln an die eigenen Test-Bedürfnisse anpassen und mit "setreading" prüfen, ob die sofortige FTUI3-Reaktion funktioniert
.
.
.
Scheint alles normal zu funktionieren, dann könnte man jetzt die eigenen Dateien aus dem "gesicherten" ftui-Verzeichnis in das neue ftui-Verzeichnis übernehmen
.
Treten jetzt wieder Fehler auf, dann hilft vermutlich nur eine schrittweise Übernahme/Aktivierung der eigenen Dateien, um das schuldige Objekt ausfindig zu machen ...

dennis_n

Moin,

wie gesagt, Installation erfolgte ganz normal wie im Wiki beschrieben.
Rechte wurden nciht nachträglich angepasst.

Ich hatte dann gestern noch mein Verzeichnis gesichtert und genau den update check und update Befehl ausgeführt.
Die mitgelieferte index.html lief ohne Probleme und Fehlermeldungen über Stunden.

Also habe ich dann meine index wieder eingespielt, Fehler sofort wieder da.
Ich habe auch nur die index und eine css Datei angepasst, um noch zwei Farben hinzuzufügen.
Alles andere ist original.

Also muss der Fehler ja in meiner index liegen oder?

OdfFhem

Zitat von: dennis_n am 05 Februar 2023, 09:09:44
Also habe ich dann meine index wieder eingespielt, Fehler sofort wieder da.
Ich habe auch nur die index und eine css Datei angepasst, um noch zwei Farben hinzuzufügen.
Alles andere ist original.

Also muss der Fehler ja in meiner index liegen oder?
Dann häng doch einfach mal die "nicht original"-Dateien an ...

dennis_n

#27
Ich habe den Übeltäter gefunden!!!!

Die Kachel für mein Nuki Schloss war es.
Habe nacheinander alle Kacheln mal auskommentiert und geschaut, ab wann der Fehler nicht mehr kommt.

Bingo: Beim Nuki Schloss war es dann so.
Aber was genau ist da falsch?
Vermutlich die Leerzeichen beim Status "door closed" und "door oepened" ?

<ftui-grid-tile row="7" col="10" height="2" width="2" shape="round">
      <ftui-grid-header color="blue">Haustür</ftui-grid-header>
      <ftui-icon name="front-door" size="4" [color]="Haustuer_Nuki:doorsensorState | map('door closed:red, door opened:mygreen')" ></ftui-icon>   
       
      </ftui-grid-tile>


Gerade nochmal getestet. Hat auch nichts mit den Leerzeichen zu tun.
Wenn ich ein anderes Reading darstelle, geht es auch nicht.
Also sobald ich das Nuki Schloss darstellen will, kommt der Fehler in der Konsole und die Readings aktualisieren sich nicht mehr.

mr_petz


OdfFhem

Zitat von: mr_petz am 05 Februar 2023, 12:48:32
Giebt es einen ftui-grid-header?

Ja, gibt es
... height ... ''
... width ... '100%'
... color ... ''
... --grid-header-background-color ... #272727

OdfFhem

Zitat von: dennis_n am 05 Februar 2023, 12:02:34
Ich habe den Übeltäter gefunden!!!!

Ich habe Dein gezeigtes grid mal übernommen und es funktioniert einwandfrei ... kein Fehler weit und breit !?!

Tritt der Fehler u.U. nur mit der selbstdefinierten Farbe auf ... unwahrscheinlich, aber wer weiss ?
Lass mal ftui-icon und ftui-grid-header weg ... setze stattdessen ftui-label ein, um nur das Reading darzustellen ... funktioniert ?

dennis_n

Nein, funktioniert nicht.

Fehler kommt direkt wieder wenn ich das Grid so mache:

<ftui-grid-tile row="7" col="10" height="2" width="2" shape="round">
      <ftui-label [text]="Haustuer_Nuki:doorsensorState"></ftui-label> 
      </ftui-grid-tile>


Reading wird zwar dargestellt, abr der Fehler ist wieder in der Konsole.

OdfFhem

Langsam gehen mir die Ideen zur "Problem-Einkreisung" aus ...


Ich habe mal ein reduziertes Beispiel erstellt, dass Du in der Hauptebene (www/ftui) ablegen solltest:

<!DOCTYPE html>
<html>

<head>
  <script src="ftui.js"></script>
  <link href="ftui.css" rel="stylesheet">
  <link href="themes/ftui-theme.css" rel="stylesheet">
  <link href="favicon.ico" rel="icon" type="image/x-icon" />

  <title>Test</title>
</head>

<body>
  <ftui-grid base-width="150" base-height="50" margin="15">

    <ftui-grid-tile row="1" col="4" height="2" width="2" shape="round">
      <ftui-grid-header color="blue">Haustür</ftui-grid-header>
      <ftui-icon name="front-door" size="4" [color]="Haustuer_Nuki:doorsensorState | map('door closed:red, door opened:green')" ></ftui-icon>   
    </ftui-grid-tile>

    <ftui-grid-tile row="3" col="4" height="2" width="2" shape="round">
      <ftui-label [text]="Haustuer_Nuki:doorsensorState"></ftui-label>
    </ftui-grid-tile>

  </ftui-grid>
</body>
</html>

Ich habe es unter Linux-Chrome/Firefox sowie Android-Chrome getestet ... funktioniert einwandfrei ...

dennis_n

Habe Deine reduzierte Seite angelegt und der Fehler ist direkt da.  :(


OdfFhem

* Du nutzt "Adblock Plus" ... kann es daran liegen ? (vielleicht mal temporär deaktivieren)
Zitat... Starting with Adblock Plus ... we can block connections initiated via WebSockets ...

* in der "letzten" Zeile steht ziemlich weit links ein blauer Text error ... klappt darauf die rechte Maustaste ?

dennis_n

Leider nein. AdBlock komplett deaktiviert. Fehler kommt trotzdem.

Auch der click auf error lässt sich das nicht weiter kopieren.

Ich glaube ich lasse den Status der Tür einfach raus.
Mich würde zwar brennend interessieren, was da los ist. Will ja aber auch nicht eure Zeit und nerven hier strapazieren.


Gruss
Dennis