Nach Update der fhemweb.js keine Bedienung mehr mit iOS

Begonnen von daheim, 04 Dezember 2022, 19:53:13

Vorheriges Thema - Nächstes Thema

daheim

Hallo zusammen,

ich habe gerade mal ein Update von FHEM gemacht. Dabei ist mir schmerzlich aufgefallen, dass mein altes iPad mit iOS 9 leider keine Möglichkeit mehr bietet, Lampen zu steuern oder mit den Dropdown-Menüs die Heizungsthermostate zu steuern.
Alle Elemente sind nicht mehr in FHEM Web und im Floorplan vorhanden.

Den Cache habe ich gelöscht FHEM neu gestartet. Es bringt die Elemente nicht wieder...

Was kann ich machen, außer ein neues iPad zu kaufen?

Im Chrome (auf dem PC) funktioniert alles....

Viele Grüße und einen schönen zweiten Advent
Daniel

rudolfkoenig

Ich vermute, dass ein JavaScript Fehler die Aktionen verhindert.
Wenn ich den Fehler nicht kenne, kann ich das Problem nicht loesen.

Womoeglich hilt einen anderen FHEMWEB-Style zu verwenden, und/oder das FHEMWEB JavaScripts Attribut zu entfernen.

Ist das confirmJSError FHEMWEB Attribut gesetzt? Wenn ja, dann werden die JavaScript Fehler nicht angezeigt.
Es ist auch moeglich, dass das Problem vor dem "wirksam werden" dieses Attributes auftritt. Dann kann man mW nur im Safari in einem angeschlossenen Mac das Problem nachvollziehen, fraglich ist, ob ein aktuelles Safari mit dem alten iPad zusammenarbeitet.


daheim

Hallo Rudolf,

danke für deine Antwort und sorry für meine späte Antwort. Zur Zeit ist es stressig.

Ja ich habe ein Stylesheet für die Vollbildseitenmöglichkeit (was ein Wort) gesetzt. Es klappt mit keinem touchpad Stylesheet

Was kann ich noch machen?

Viele Grüße
Daniel


rudolfkoenig

Kannst Du es bitte noch mit dem f18 Style testen?
Und bitte die anderen Fragen (JavaScripts, confirmJSError) auch beantworten.

daheim

Hallo Rudolf,

sorry für die späte Antwort, aber ich habe jetzt erst Urlaub und kann wieder was machen...

Ich habe weder für JavaScripts noch confirmJSError in WEB2 ein attr gesetzt, jedoch unter WEB ist das attr JavaScript codemirror/fhem_codemirror.js gesetzt. Ich greife aber auf WEB2 mit dem entsprechenden "Problemkind" zu. (Habe auch die Probleme unter WEB und WEB3)

Mit dem stylesheetPrefix f18 habe ich auch keinen Erfolg. Was kann ich noch machen? Update ist aktuell, jedoch wieder mit der alten fhemweb.js

Viele Grüße
Daniel

rudolfkoenig

Mir faellt nur das zurueckrollen des FHEM-Updates ein, oder die Anzeige der iPad JavaScript-Console ueber Safari auf einem Mac.

Tom S

#6
Hallo,

seit einem Update meiner FHEM-Installation im Januar '23 habe ich ähnliche Problem wie oben von daheim geschildert auf einem älteren iPAD unter iOS 9:
sämtliche SVG-Plot werden nicht mehr angezeigt und auch das Slider-Device ist nur noch fragmentarisch sichtbar und nicht mehr bedienbar.

Unangenehm ist, dass das PAD an der Wand fest montiert ist und nicht einfach getauscht werden kann. Es wäre mir also viel daran gelegen, eine Lösung zu finden. Als style verwende ich darktouchpad, codemirror/fhem_codemirror.js ist nicht aktiviert.

Bitte dringend um Hilfe!

Ergänzung: die Tests mit verschiedenen StylePrefix, auch f18, waren alle erfolglos; reicht es aus, die fhemweb.js von vor dem Update zurückzuspielen?

Grüße Tom S

Tom S

3 x Pi 3B mit FHEM, CUL868/Selbstbau, USB Cam, IPCAM, SolarView PV-Überwachung, I2C, 1-wire

rudolfkoenig

Zitatreicht es aus, die fhemweb.js von vor dem Update zurückzuspielen?
Vermutlich, ich kann aber das Problem mangels Testsystem nicht nachstellen, kann mich also auch irren.
Wenn das funktioniert, dann haette ich gerne die Versionsnummer der alten Datei.

Tom S

Hallo rudolfkoenig,

ich habe heute die zuletzt gesicherte fhemweb.js wieder eingespielt und siehe da: alle SVG-Plots und auch der Slider sind auf dem iOS9-Pad wieder verfügbar und funktionieren tadellos!!

Hier der Versionsstempel der funktionsfähigen fhemweb.js


FW_version["fhemweb.js"] = "$Id: fhemweb.js 25983 2022-04-19 17:26:44Z rudolfkoenig $";


Nicht funktioniert nach dem letzten Update von FHEM hat es mit der Version 27117 mit Datum 2023-01-25.

Erstmal also herzlichen Dank für die zwar vage aber zutreffende Bestätigung, dass der Austausch dieser Datei ausreicht.
Ich frage mich allerdings, wie ich beim nächsten Update vorgehe. Wie kann ich verhindern, dass die fhemweb.js wieder überschrieben wird?
Oder könnte man die vom Browser unter iOS9 geforderte Funktionalität noch mit unterbringen?

Grüße
Tom S
Tom S

3 x Pi 3B mit FHEM, CUL868/Selbstbau, USB Cam, IPCAM, SolarView PV-Überwachung, I2C, 1-wire

rudolfkoenig

Ich habe die relativ zahlreichen Aenderungen zwischen 25983 und 27117 ueberflogen, leider ohne Ergebnis.

ZitatWie kann ich verhindern, dass die fhemweb.js wieder überschrieben wird?
Mit dem global Attribut exclude_from_update: https://fhem.de/commandref_modular.html#update-attr-exclude_from_update

ZitatOder könnte man die vom Browser unter iOS9 geforderte Funktionalität noch mit unterbringen?
Gerne, wenn man mir verraet, was das sein soll.
Ich versuche nur JavaScript-Features zu verwenden, die aelter als 10 Jahre sind.
Leider weiss ich nicht auswendig, welche Features ab wann von welchem Browser unterstuetzt wurden.

Wernieman

Da ein reines Austauschen der Datei reicht, könnte mit Zwischenversionen (aus dem SVN) geprüft werden? Um die Problemversion besser eingrenzen zu können?

Habe hier aber auch kein MAC um es zu prüfen ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Tom S

Hallo rudolfkoenig,

hier noch eine kleine Ergänzung: ich habe gerade mal eine andere FHEM-Instanz auf die fhemweg.js geprüft: die Version 26334 mit Datum 2022-08-18 zeigt in dem alten Browser das gleiche Problem unter iOS9, also keine SVG-Plots und keinen Slider.

Die relevante Änderung muss also zwischen V25983 und V26334 eingeflossen sein. Sind nur noch 4 Monate :). Vielleicht hilft das weiter.

Danke für den Tipp mit der exclude-Anweisung!
Tom S

3 x Pi 3B mit FHEM, CUL868/Selbstbau, USB Cam, IPCAM, SolarView PV-Überwachung, I2C, 1-wire

rudolfkoenig

ZitatDie relevante Änderung muss also zwischen V25983 und V26334 eingeflossen sein. Sind nur noch 4 Monate :).
So einfach ist das nicht.
V26334 enthaelt die "moderne" (d.h 6 Jahre alte) let Anweisung, das wurde aber umgehend in das auch von aelteren Browsern verstandene var ausgetauscht.