Fehler in fhemweb.js

Begonnen von bicmac, 31 Dezember 2020, 20:34:47

Vorheriges Thema - Nächstes Thema

bicmac

Hi, seid dem letztem Update bekomme ich sobald ich ein notofy über die Oberfläche aufmachen will folgende Fehlermeldung.


fhemweb.js line 1292:
SyntaxError: Invalid regular expression: missing )


Das tritt aber nur bei Notifys auf. Vorher gab es da keine Probleme.

Rudolf König evtl hast Du eine Idee.


xenos1984


amenomade

Dann lieber nach

    FHEM Forum »    FHEM »    Frontends »    FHEMWEB

das Thread verschieben.

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

rudolfkoenig

Da ich auf Anhieb das Problem nicht nachstellen kann: kannst du bitte die Ausgabe von "list -r problemNotify" hier anhaengen?

bicmac

Hi,
das tritt bei mir mit jedem Notify auf.
Hier mal ein List auf 2 Beispiele:


define eventonchange_notify notify global:DEFINED.* attr $EVTPART1 event-on-change-reading .*
attr eventonchange_notify DbLogExclude .*
attr eventonchange_notify alias eventonchange_notify
attr eventonchange_notify room SYSTEM->LOGIK->NOTIFY

setstate eventonchange_notify active
setstate eventonchange_notify 2020-12-31 20:23:39 state active



define notify_fensterstatus notify fenster_eg_.*_status:.* {\
  my $status=(ReadingsVal("$NAME","state","unknown"));;\
  my @spl = split('_', $status);;\
fhem "setreading $NAME my_fensterstatus $spl[0]";;\
Log 3, "$NAME: $status - > $spl[0]";;\
}
attr notify_fensterstatus DbLogExclude .*
attr notify_fensterstatus alias notify_fensterstatus
attr notify_fensterstatus room ,SYSTEM->LOGIK->NOTIFY

setstate notify_fensterstatus 2021-01-01 10:02:53
setstate notify_fensterstatus 2020-12-31 20:23:40 state active


Interessant ist ggf auch die Tatsache das wenn ich die Fehler Meldung wegklichke danach die GU zerschossen ist und in dem Notify ein Klich auf "RAW definition" folgende Fehlermeldung bringt:


Unknown command rawDef, try help.


rudolfkoenig

Ich kann das Problem mit keinem der beiden notifies nachstellen.

Bitte sicherstellen, dass FHEM aktuell ist (in FHEM: update)
Sicherstellen, dass im Browser die aktuelle fhemweb,js verwendet wird. Dafuer ist evtl. ein Force-Reload oder Cache-Loeschen notwendig.

Falls das Problem danach in einem Inkognito(!)-Fenster immer noch auftritt, dann brauche ich folgende Angaben:
- die Ausgabe von version
- Browser-Version und OS.
- die JavaScript Consolenmeldungen aus dem Browser.

Tritt das Problem auch mit ganz anderen, bisher fuer FHEM unbenutzten Browser (z.Bsp. vom Tablet, etc) auf?

bicmac

Hi, es tritt mit allen Browsern auf meinen MACs aus.
Im Chrome kommt aber eine etwas andere Fehlermeldung:


fhemweb.js line 1292:
Uncaught SyntaxError: Invalid regular expression: /^($mystate$/: Unterminated group


hier mal die daten die Du wolltest.


Latest Revision: 23434

File                      Rev   Last Change

fhem.pl                   23373 2020-12-17 18:53:33Z rudolfkoenig
57_ABFALL.pm              11023 2018-06-13 12:34:34Z uniqueck
39_alexa.pm               21651 2020-04-12 18:44:12Z justme1968
96_allowed.pm             23247 2020-11-28 10:44:57Z rudolfkoenig
95_Astro.pm               20848 2019-12-29 16:22:56Z CoolTux
90_at.pm                  23280 2020-12-02 13:54:35Z rudolfkoenig
98_autocreate.pm          23006 2020-10-22 19:40:17Z rudolfkoenig
73_AutoShuttersControl.pm 23008 2020-10-23 05:32:18Z CoolTux
57_Calendar.pm            21910 2020-05-10 12:22:05Z neubert
98_cmdalias.pm            16300 2018-03-01 08:48:21Z rudolfkoenig
93_DbLog.pm               22246 2020-06-23 21:12:11Z DS_Starter
98_DOIF.pm                23418 2020-12-26 10:04:12Z Damian
98_dummy.pm               20665 2019-12-06 11:05:35Z rudolfkoenig
30_DUOFERN.pm             23133 2020-11-10 17:26:01Z Telekatz
10_DUOFERNSTICK.pm        14082 2017-04-23 11:46:58Z Telekatz
37_echodevice.pm          23325 2020-12-11 15:33:38Z michael.winkler
No Id found for 36_ekey.pm
10_EnOcean.pm             23408 2020-12-23 07:38:05Z klaus.schauer
91_eventTypes.pm          14888 2017-08-13 12:07:12Z rudolfkoenig
93_FHEM2FHEM.pm           17361 2018-09-17 11:44:10Z rudolfkoenig
01_FHEMWEB.pm             23405 2020-12-22 21:31:51Z rudolfkoenig
92_FileLog.pm             23138 2020-11-11 20:43:14Z rudolfkoenig
95_holiday.pm             21902 2020-05-09 08:18:29Z rudolfkoenig
98_HTTPMOD.pm             23330 2020-12-12 10:56:29Z StefanStrobel
30_HUEBridge.pm           23363 2020-12-16 09:35:18Z justme1968
31_HUEDevice.pm           23344 2020-12-13 17:05:33Z justme1968
49_IPCAM.pm               18505 2019-02-05 21:50:23Z rudolfkoenig
98_JsonList2.pm           22270 2020-06-26 09:25:18Z rudolfkoenig
10_MQTT2_DEVICE.pm        23382 2020-12-19 11:40:59Z rudolfkoenig
00_MQTT2_SERVER.pm        23326 2020-12-11 17:47:10Z rudolfkoenig
No Id found for 99_MyUtils.pm
91_notify.pm              21427 2020-03-15 10:10:32Z rudolfkoenig
59_PROPLANTA.pm           18714 2019-02-24 16:08:46Z tupol
70_Pushover.pm            20897 2020-01-06 12:16:20Z loredo
33_readingsGroup.pm       21151 2020-02-08 16:00:45Z justme1968
91_sequence.pm            22810 2020-09-21 10:19:17Z rudolfkoenig
96_SIP.pm                 21469 2020-03-21 19:30:58Z Wzut
00_SONOS.pm               22400 2020-07-14 17:54:36Z Reinerlein
21_SONOSPLAYER.pm         22400 2020-07-14 17:54:36Z Reinerlein
98_statistics.pm          20819 2019-12-23 23:07:57Z tupol
98_structure.pm           22721 2020-09-03 18:51:29Z rudolfkoenig
99_SUNRISE_EL.pm          22789 2020-09-18 19:00:46Z rudolfkoenig
00_TCM.pm                 23400 2020-12-21 18:52:49Z klaus.schauer
50_TelegramBot.pm         23001 2020-10-21 19:33:31Z viegener
98_telnet.pm              23434 2020-12-29 20:22:05Z rudolfkoenig
98_update.pm              20778 2019-12-18 17:46:44Z rudolfkoenig
99_Utils.pm               22524 2020-08-02 14:34:02Z rudolfkoenig
98_version.pm             15140 2017-09-26 09:20:09Z markusbloch
98_vitoconnect.pm         23398 2020-12-21 10:57:54Z andreas13
98_weblink.pm             16293 2018-02-28 21:33:57Z rudolfkoenig
59_WUup.pm                21699 2020-04-16 07:40:18Z mahowi

ABFALL_getEvents.pm       11023 2018-06-13 12:34:34Z uniqueck
ABFALL_setUpdate.pm       11021 2017-09-13 00:32:22Z uniqueck
AttrTemplate.pm           22985 2020-10-18 09:04:19Z rudolfkoenig
Blocking.pm               23268 2020-12-01 11:48:48Z rudolfkoenig
Color.pm                  20813 2019-12-22 18:42:10Z justme1968
Common.pm                 10759 2016-02-07 20:00:12Z rleins
ControlPoint.pm           22400 2020-07-14 17:54:36Z Reinerlein
CoProcess.pm              18425 2019-01-26 16:45:12Z justme1968
DevIo.pm                  23241 2020-11-27 16:25:33Z rudolfkoenig
GPUtils.pm                19666 2019-06-20 11:17:29Z CoolTux
HttpUtils.pm              22917 2020-10-05 14:37:58Z rudolfkoenig
Info.pm                      28 2008-11-09 01:08:44Z dsully
Meta.pm                   21008 2020-01-18 10:22:10Z loredo
RTypes.pm                 10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm          23300 2020-12-06 11:36:24Z rudolfkoenig
SubProcess.pm             14334 2017-05-20 23:11:06Z neubert
TcpServerUtils.pm         22894 2020-10-01 19:49:32Z rudolfkoenig
UConv.pm                  21159 2020-02-09 14:04:27Z loredo

doif.js                    15546 2017-12-03 09:57:42Z Ellert
f18.js                     22644 2020-08-22 10:22:29Z rudolfkoenig
fhemweb.js                 23409 2020-12-23 11:08:10Z rudolfkoenig
fhemweb_readingsGroup.js   15189 2017-10-03 17:53:27Z justme1968


Googe Chrome Version Version 87.0.4280.88 (Offizieller Build) (x86_64) & Safari Version 13.1.3 (15609.4.1)
beides auf MAC OS Catalina 10.15.7

Consolenmessage laut Chrome:


GET http://fhemprod.fritz.box:8083/fhem/hausautomatisierung-com/custom.js net::ERR_ABORTED 404 (Not Found)
fhemweb.js:1292 Uncaught SyntaxError: Invalid regular expression: /^($mystate$/: Unterminated group
    at new RegExp (<anonymous>)
    at FW_detailSelect (fhemweb.js:1292)
    at HTMLSelectElement.<anonymous> (fhemweb.js:123)
    at Function.each (jquery.min.js:2)
    at m.fn.init.each (jquery.min.js:2)
    at HTMLDocument.FW_jqueryReadyFn (fhemweb.js:122)
    at j (jquery.min.js:2)
    at Object.fireWith [as resolveWith] (jquery.min.js:2)
    at Function.ready (jquery.min.js:2)
    at HTMLDocument.J (jquery.min.js:2)
FW_detailSelect @ fhemweb.js:1292
(anonymous) @ fhemweb.js:123
each @ jquery.min.js:2
each @ jquery.min.js:2
FW_jqueryReadyFn @ fhemweb.js:122
j @ jquery.min.js:2
fireWith @ jquery.min.js:2
ready @ jquery.min.js:2
J @ jquery.min.js:2
fhem?detail=initialUsbCheck:1 [DOM] Found 2 elements with non-unique id #sel_setinitialUsbCheck: (More info: https://goo.gl/9p2vKq) <select id=​"sel_setinitialUsbCheck" informid=​"sel_setinitialUsbCheck" name=​"arg.setinitialUsbCheck" class=​"set">​...​</select>​ <select id=​"sel_setinitialUsbCheck" informid=​"sel_setinitialUsbCheck" name=​"arg.setinitialUsbCheck" class=​"set">​...​</select>​
[Violation] Forced reflow while executing JavaScript took 47ms
fhemweb.js:517 13:36:57.972 Inform-channel opened (websocket) with filter
fhemweb.js:517 13:36:58.016 Rcvd:
2fhem?detail=initialUsbCheck:1 Unchecked runtime.lastError: The message port closed before a response was received.





rudolfkoenig

Ich habe zwar immer noch nicht die leiseste Ahnung, wie ($mystate dahinkommt, ich habe die Pruefung aber in eval gepackt, und damit das Problem unterm Teppich gekehrt. Wenn jemand mir was Nachstellbares zeigen koennte, wuerde ich mich freuen.

bicmac

wie wird denn die Liste in addregexppart aufgebaut. Da stehem bei mir noch ein paar sachen drinnen die ich mir nicht erklären kann
wie zum Beispiel

{§my
($mystate
(($mstate
47
51

woher kommen den die Werte aus der Liste?


bicmac

Zitat von: rudolfkoenig am 01 Januar 2021, 19:12:22
Ich habe zwar immer noch nicht die leiseste Ahnung, wie ($mystate dahinkommt, ich habe die Pruefung aber in eval gepackt, und damit das Problem unterm Teppich gekehrt. Wenn jemand mir was Nachstellbares zeigen koennte, wuerde ich mich freuen.

Heist das es kommt zeitnah ein update?

xenos1984

Zitat von: bicmac am 01 Januar 2021, 19:49:35
wie wird denn die Liste in addregexppart aufgebaut. Da stehem bei mir noch ein paar sachen drinnen die ich mir nicht erklären kann

woher kommen den die Werte aus der Liste?
Schau mal im Quelltext der Seite, die den Fehler verursacht, ob du ein <div> mit Attribut list="..." findest. Davon sollte es einige geben. So weit ich sehen kann, sind das Container für Auswahllisten (also z.B. die Liste der Attribute). Vielleicht findet sich da der "Schuldige".

rudolfkoenig

Zitatwie wird denn die Liste in addregexppart aufgebaut. Da stehem bei mir noch ein paar sachen drinnen die ich mir nicht erklären kann
Das Modul eventTypes sammelt alle Events, wirft den Zahlenanteil raus, und entfernt bekannte "Saboteure". Das notify "Wizard" erstellt aus den Daten von EventTypes eine Liste von moeglichen Werten, die man zum notify-Regexp hinzufuegen kann. Das Problem kommt sehr wahrscheinlich aus dieser Ecke, weil ich diese noch nicht als "Saboteur" identifiziert habe. Kannst Du bitte deine /opt/fhem/log/eventTypes.txt Datei hier anhaengen?

ZitatHeist das es kommt zeitnah ein update?
Wenn ich (oder einer der anderen Modulentwickler) was geaendert habe, dann check ich das in SVN ein (https://svn.fhem.de/trac/browser/trunk/fhem). Entweder laedt man die Datei von da aus selbst runter, oder man wartet am folgenden Tag bis acht Uhr, da wird die Aenderung per FHEM update zur Verfuegung gestellt.

bicmac

Zitat von: rudolfkoenig am 02 Januar 2021, 10:29:18
Das Modul eventTypes sammelt alle Events, wirft den Zahlenanteil raus, und entfernt bekannte "Saboteure". Das notify "Wizard" erstellt aus den Daten von EventTypes eine Liste von moeglichen Werten, die man zum notify-Regexp hinzufuegen kann. Das Problem kommt sehr wahrscheinlich aus dieser Ecke, weil ich diese noch nicht als "Saboteur" identifiziert habe. Kannst Du bitte deine /opt/fhem/log/eventTypes.txt Datei hier anhaengen?
Wenn ich (oder einer der anderen Modulentwickler) was geaendert habe, dann check ich das in SVN ein (https://svn.fhem.de/trac/browser/trunk/fhem). Entweder laedt man die Datei von da aus selbst runter, oder man wartet am folgenden Tag bis acht Uhr, da wird die Aenderung per FHEM update zur Verfuegung gestellt.


Hi,

klar hier ist die Datei als Anhang.
das ganze kommt dann wohl von einem Fehler den ich mal Ende Dezember in einem Notify hatte. Dieser ist aber behoben und meldet den Fehler nicht mehr. Nur irgendwie zieht sich das Modul dann wohl noch den alten Fehler mit rein.
Kann ich da aktiv irgendwas löschen aus den Logs damit sich die eventTypes.txt neu aufbaut?


rudolfkoenig

ZitatKann ich da aktiv irgendwas löschen aus den Logs damit sich die eventTypes.txt neu aufbaut?
Klar, man stoppt FHEM, editiert die Datei mit einem Texteditor, entfernt unpassende Zeilen, und startet FHEM neu.
Alternativ machst du morgen ein update: beim Neustart danach werden solche Eintraege ignoriert, und beim Speichern aus der Datei entfernt.

Ich wuesste gerne, wie man solche Eintraege erzeugen kann, wenn Du eine Anleitung hast, bin ich daran interessiert.