[gelöst] Umlaute und Zeichen/Symbole im Alias und stateFormat

Begonnen von Gisbert, 05 Juli 2025, 13:00:36

Vorheriges Thema - Nächstes Thema

Gisbert

Hallo,

seit dem Fhem-Update letzte Nacht werden Umlaute und Zeichen/Symbole (z.B. Pfeile auf/ab) in alias-Namen, stateFormat, aber auch an anderer Stelle nicht lesbar dargestellt, siehe Bild.
Es ist unabhängig vom gewählten Style und tritt sowohl bei Chrome als auch bei Firefox (beides auf dem Android-Handy) auf.

Änderungen meinerseits: keine - zumindestens keine, die ich in einem Zusammenhang mit dem Fehler sehe.

Fhem läuft als VM mit aktuellem Debian auf Proxmox.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

Guybrush

check doch mal die Kodierung der fhem.pl. das siwht aus als wenn die datei in ascii gespeichert worden wäre statt utf-8?

geht zb mit uchardet

Gisbert

Hallo Guybrush,

deine Vermutung, dass die fhem.pl eine ASCII-Codierung hat, konnte ich bestätigen.

chatgpt schlägt mir folgendes für die Änderung vor:
iconv -f ascii -t utf-8 alte_datei.txt -o neue_datei.txt

Bevor ich das mache, frage ich lieber dreimal, bevor ich alles in die Grütze fahre. Oder gibt es noch eine weitere ggf. besseren Weg (download von der Fhem-Webseite)?

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

TomLee

Hallo,

hab seit 29402 kein update gemacht und da war das auch schon so.

Gisbert

#4
Zitat von: TomLee am 05 Juli 2025, 13:50:53Hallo,

hab seit 29402 kein update gemacht und da war das auch schon so.

Hallo TomLee,

worauf bezieht sich deine Aussage?

Meine fhem.pl hat das Speicherdatum 5.4.2025 2:45.

Wie bekomme ich denn die Umlaute und Sonderzeichen wieder lesbar hin?

Viele Grüße Gisbert

PS:
Ich hab diese Version:
$Id: fhem.pl 29809 2025-03-30 09:15:04Z rudolfkoenig
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

TomLee

Ich hab jetzt rein aus Interesse bspw. mal die 29402 durch die vorherige Version 29388 ersetzt. Damit ist wieder alles normal. Allerdings wenn ich dann die aktuelle 29809 oder auch die 29402 wieder einspiele, ist auch weiterhin alles normal, das versteh ich nicht. Auch nach einem ganz normalen update (also mit 29809) ist alles ok.

https://svn.fhem.de/trac/log/trunk/fhem/fhem.pl

Würde abwarten was Rudolf dazu sagt.

Gisbert

Zitat von: TomLee am 05 Juli 2025, 17:56:20Ich hab jetzt rein aus Interesse bspw. mal die 29402 durch die vorherige Version 29388 ersetzt. Damit ist wieder alles normal. Allerdings wenn ich dann die aktuelle 29809 oder auch die 29402 wieder einspiele, ist auch weiterhin alles normal, das versteh ich nicht. Auch nach einem ganz normalen update (also mit 29809) ist alles ok.

https://svn.fhem.de/trac/log/trunk/fhem/fhem.pl

Würde abwarten was Rudolf dazu sagt.

Hallo TomLee,

wie kann man die fhem.pl herunterladen, bzw. eine bestimmte Version?
Wenn ich es mit
wget https://svn.fhem.de/trac/browser/trunk/fhem/fhem.plversuche, werden alle Steuerungsanzeichen mit heruntergeladen.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

rudolfkoenig

Ich wuerde die Ursache in der Kodierung von fhem.cfg (nicht .pl) suchen.

Zitatwie kann man die fhem.pl herunterladen, bzw. eine bestimmte Version?
Version im URL angeben: https://svn.fhem.de/trac/browser/trunk/fhem/fhem.pl?rev=29803#
Oder auf der trac Seite das Feld "View version" ausfüllen.
Zum runterladen ganz nach unten scrollen und auf "Plain text" klicken.

Gisbert

#8
Zitat von: rudolfkoenig am 06 Juli 2025, 09:56:12Ich wuerde die Ursache in der Kodierung von fhem.cfg (nicht .pl) suchen.

Zitatwie kann man die fhem.pl herunterladen, bzw. eine bestimmte Version?
Version im URL angeben: https://svn.fhem.de/trac/browser/trunk/fhem/fhem.pl?rev=29803#
Oder auf der trac Seite das Feld "View version" ausfüllen.
Zum runterladen ganz nach unten scrollen und auf "Plain text" klicken.

Danke für die Info.
Ich schildere meine Beobachtungen:
  • Das Verhalten tritt nach einem Fhem-Update seit Sa, 5.7.2025, sehr früh morgens auf.
  • Es betrifft nur Devices in einer cfg (Fotovoltaik.cfg) und in einem Raum (room DEYE), die ich per include in die fhem.cfg eingebunden habe.
  • Bei einigen Devices wird nach 1~3 Sekunden die richtige Darstellung angezeigt.
  • Geht man in ein unansehnliches Device hinein, dann wird es sofort richtig dargestellt.
  • Das Verhalten ist unabhängig davon, welchen Style man benutzt oder welches Gerät (Win11-PC, Android-Handy) man benutzt.
  • Es sind Devices vom Typ readingsGroup, DOIF, MQTT betroffen, wobei letztere nach ein paar Sekunden richtig angezeigt werden.
  • Es macht keinen Unterschied für die Darstellung, ob ein Device in der fhem.cfg oder in einer per include ausgelagerten cfg steht.
  • Im FireFox in Win11 steht nach einer Weile dieses pop-up drin:
    fhemweb.js line 1335:
    SyntaxError: JSON.parse: expected ',' or ']' after array element at line 1 column 53080 of the JSON data

PS: Die Kodierungen aller cfg-Dateien lautet UTF-8.
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

Gisbert

Hallo Rudi,

die Kodierungen der fhem.cfg und aller per include eingebundenen .cfg lauten auf UTF-8.

Anscheinend bin ich der einzige, der ein Problem bei Darstellungen von Umlauten und Sonderzeichen (z.B. Pfeil hoch, Pfeil runter) hat.

Wie kann ich vorgehen, um das Problem zu lösen?

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

rudolfkoenig

ZitatDas Verhalten tritt nach einem Fhem-Update seit Sa, 5.7.2025, sehr früh morgens auf.
Wann war das Update davor?

ZitatBei einigen Devices wird nach 1~3 Sekunden die richtige Darstellung angezeigt.
Bindest Du weitere JavaScript Datein ein? Wenn ja: bitte ohne testen.
Und auch die Anzeige im Inkognitomodus: hier sind die Browser Plugins normalerweise nicht aktiviert.

Gisbert

Hallo Rudi,

das Fhem Update war am Samstagnacht, 5. Juli 2:45. Danach mache ich ein Backup des Fhem-Servers in Proxmox, wobei der Server vorher runtergefahren wird und nach dem Backup wieder hochgefahren wird. Das mache ich wöchentlich jede Samstagnacht.

JavaScript-Dateien (Endung: js) habe ich keine in /opt/fhem und /opt/fhem/FHEM.

Inkognito-Modus bei den verschiedenen Browsern nutze ich so gut wie nie, bei Fhem auch nicht.

Die Kodierungen aller cfg-Dateien sieht wie folgt aus. Es gibt anscheinend doch ein paar .cfg, bei denen eine andere Kodierung als UTF-8 vorliegt - jedoch tritt dort das Umlaute-Problem nicht zu Tage, da keine benutzt werden. Das Problem liegt nur bei Devices vor, die in Photovoltaik.cfg definiert wurden.
gisbert@Fhem:/opt/fhem$ uchardet *.cfg
fhem.cfg: UTF-8
gassistant-fhem.cfg: ASCII
rhasspy-de.cfg: UTF-8
gisbert@Fhem:/opt/fhem/FHEM$ uchardet *.cfg
AMAD.cfg: ASCII
ATtiny85.cfg: UTF-8
Aussenbeleuchtung.cfg: UTF-8
BenachrichtigungMuellabfuhr.cfg: UTF-8
Corona.cfg: ASCII
Fensterkontakte.cfg: UTF-8
Finanzdaten.cfg: UTF-8
FritzboxUniFiAnwesenheit.cfg: UTF-8
Gasspeicher.cfg: UTF-8
HeizungWarmwasser.cfg: UTF-8
HomematicAktorenSensoren.cfg: UTF-8
Ignore.cfg: ASCII
Luefterschaltung.cfg: UTF-8
Markisensteuerung.cfg: UTF-8
Monitoring.cfg: UTF-8
MultimediaTV.cfg: UTF-8
NRW-Feiertage.cfg: ASCII
NetzwerkServer.cfg: UTF-8
NetzwerkServerTV.cfg: UTF-8
Photovoltaik.cfg: UTF-8
Pushnachrichten.cfg: IBM852
Rauchmelder.cfg: UTF-8
Rollladen.cfg: UTF-8
Tankstelle.cfg: UTF-8
Traffic.cfg: UTF-8
WetterdatenSensorenInternet.cfg: UTF-8
Wlan-Kamera.cfg: ISO-8859-1
gassistant-fhem.cfg: ASCII
myDaikinCloud.cfg: UTF-8
myFujitsu.cfg: UTF-8
myHEOS.cfg: ASCII
myRhasspy.cfg: ASCII
myTuya.cfg: UTF-8
myfhempy.cfg: ASCII
rhasspy-de.cfg: UTF-8

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

rudolfkoenig

Zitatdas Fhem Update war am Samstagnacht, 5. Juli 2:45.
Ich wollte wissen, wann das Update davor war, um die Aenderungen zwischen den beiden Zeitpunkten zu pruefen.

ZitatJavaScript-Dateien (Endung: js) habe ich keine in /opt/fhem und /opt/fhem/FHEM.
Das habe ich ich auch nicht, wichtiger fuer mich ist eher, ob in der FHEMWEB Instanz das JavaScripts Attribut gesetzt ist.

ZitatInkognito-Modus bei den verschiedenen Browsern nutze ich so gut wie nie, bei Fhem auch nicht.
Sehr loeblich :), ich wollte aber trotzdem wissen, ob im Inkognito-Modus das Problem auftritt.
Wenn da nicht, dann liegt das Problem vmtl. an einem der Browser-Plugins.


ZitatPushnachrichten.cfg: IBM852
Wlan-Kamera.cfg: ISO-8859-1
Die beiden Dateien sollte man entweder zu ASCII oder zu UTF-8 konvertieren.
ASCII ist harmlos (subset von allen), und UTF-8 ist ok.
Alles Andere kann Probleme verursachen.
Das Gleiche gilt auch fuer log/fhem.save, hier werden die Readings gespeichert.

Gisbert

Hallo Rudi,

die beiden letzten Updates waren um 28.6. und 5.7., jeweils 2:45.

In der FHEMWEB Instanz ist das JavaScripts Attribut nicht gesetzt.

log/fhem.save hat die Kodierung UTF-8 und bei den beiden Dateien
Pushnachrichten.cfg: IBM852
Wlan-Kamera.cfg: ISO-8859-1
krieg ich die Kodierung nicht weg, auch selbst dann nicht, wenn ich den Inhalt auf Linux-Ebene per nano-Editor in einer neuen Datei speichere.
Ich hab auch noch keinen funktionierenden Befehl für die Umwandlung einer Kodierung gefunden.

Viele Grüße
Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

rudolfkoenig

ZitatIch hab auch noch keinen funktionierenden Befehl für die Umwandlung einer Kodierung gefunden.
Ich kenne recode:
recode ISO-8859-1..UTF-8 Wlan-Kamera.cfg