Longpoll berücksichtigt nicht allowedDevicesRegexp

Begonnen von RPort, 14 September 2026, 11:02:17

Vorheriges Thema - Nächstes Thema

RPort

Ich nutze Homebridge (mit Homekit) zur Steuerung mit Siri.
Beim longpoll im Homekit kommen Json-Syntaxfehler - genauso (nur) im Raum everything in FHEM.
Ich habe versucht, den longpoll-filter in Homekit zu setzen, um nur die für Homekit relevanten Devices zu übertragen- das ist mir nicht gelunden. (Hier offtopic- aber, falls jemand weiß wie das geht- bitte Hinweise)

-> Die Filterung wollte ich in FHEM vornehmen.
Dazu ein FHEMWEB-Device names WEB_Homekit definiert sowie ein allowed-Device names allowed4Homekit.
In diesem allowed wollte ich die Devices ausschließen, die keinesfalls in Homekit benötigt werden bzw., die ich in Verdacht habe, den JSON-Fehler im longpoll zu verursachen:
z.B. mit attr allowed4Homekit allowedDevicesRegexp ((?!SolarForecast).)*
-> Die so ausgeschlossenen Devices werden in everything im WEB_Homekit nicht mehr angezeigt-> ok
-> Der JSON-Fehler tritt aber weiterhin bei Anzeige von everything im WEB_Homekit auf
-> Debugger zeigt in Zeile 1343 in fhemweg.js - var d = JSON.parse(l); - 
   dass die Daten für das ausgeschlossene Device weiterhin im longpoll übertragen werden (und den Fehler verursachen)

=> Nach meinem Verständnis soll allowed die Datensicherheit gewährleisten. Das ist verletzt, wenn man die Daten des longpoll im Debugger abgreifen kann.

rudolfkoenig

ZitatDas ist verletzt, wenn man die Daten des longpoll im Debugger abgreifen kann.
Danke fuer den Hinweis, habs gefixt und eingecheckt.

Bleibt noch das Problem des JSON Fehlers: kannst Du uns bitte die dazugehoerigen Daten zeigen?

RPort

Hallo Rudolf,
mein Test war negativ:

- ich habe einen update gemacht. Dabei wurde auch FHEMWEB aktualisiert. Shutdown restart.

1. Test:
attr allowed4Homekit allowedDevicesRegexp (?!SolarForecast).*
-> In der Oberfläche erscheinen alle Devices außer Solarforecast  - ok
-> Variable "input" im debugger enthält aber auch Events von Solarforecast- nicht ok - oder ist mein regex fehlerhaft?

2. Test:
attr allowed4Homekit allowedDevicesRegexp nothing
Es gibt kein Device "nothing", d.h. es sollten keinerlei Events im longpoll erscheinen
-> In der Oberfläche erscheinen keine Devices - ok
-> Variable "input"  enthält Events für alle? Devices - nicht ok

3. Test:
attr allowed4Homekit allowedDevices nothing
-> In der Oberfläche erscheinen keine Devices - ok
-> Debugger hält nicht mehr am Breakpoint - longpoll schickt anscheinend keine Daten mehr - ok

4. Test:
attr allowed4Homekit allowedDevices <comma separated list of device names>
-> In der Oberfläche erscheinen nur die gelisteten Devices
-> Variable "input"  enthält Events für  nicht gelistete Devices - nicht ok

rudolfkoenig

Vermutlich habe ich was uebersehen.
Jetzt muesste ich noch verstehen, was Du mit Variable "input" meinst.

RPort

Ich meine die Zeile 1318 (input = FW_pollConn.responseText;) in fhemweb.js