Websocket connection zu fronthem funktioniert nicht mehr

Begonnen von alkazaa, 14 Juli 2024, 14:57:34

Vorheriges Thema - Nächstes Thema

alkazaa

Hallo allerseits!

Die smartvisu websocket connection funktioniert bei mir seit gestern nicht mehr.

Vorgeschichte:
  • Ich habe vor ca. 4 Wochen meinen raspi von bullseye auf bookworm umgestellt, und zwar wie hier beschrieben. Danach lief alles wie gehabt, auch smartvisu und die Homematic-Software über pivccu (alles auf dem gleichen Raspi).
  • Gestern habe ich (wagemutigerweise) die pivccu Version auf einen neuen Stand gebracht (der allerdings noch im 'testing', nicht im 'stable' repository liegt, s. hier).
  • Während des updates kam vom System die übliche Anregung, nicht mehr benötigte Module mit autoremove zu entfernen. Das habe ich gemacht. Ich erwähne es hier, weil für das Problem vielleicht relevant ist.
  • Nach komplettem Neustart liefen FHEM und pivccu probemlos, aber smartvisu konnte sich nicht mehr mit dem fronthem websocket server verbinden. Im FHEM logfile fand ich heute diesen Eintrag: 2024.07.13 22:33:32.981 1: reload: Error:Modul 01_fronthem deactivated:[/li]
    [li] Can't locate Net/WebSocket/Server/Connection.pm in @INC (you may need to install the Net::WebSocket::Server::Connection module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/arm-linux-gnueabihf/perl5/5.36 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl-base /usr/lib/arm-linux-gnueabihf/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at FHEM/fhwebsocket.pm line 27, <$fh> line 1774.[/li]
    [li]BEGIN failed--compilation aborted at FHEM/fhwebsocket.pm line 27, <$fh> line 1774.[/li]
    [li]Compilation failed in require at ./FHEM/01_fronthem.pm line 30, <$fh> line 1774.[/li]
    [li]BEGIN failed--compilation aborted at ./FHEM/01_fronthem.pm line 30, <$fh> line 1774.
  • Der von smartvisu gemeldete Fehler lautet: "Could not connect to fronthem server! Websocket error undefined."

Ich merkte erst durch den Log Eintrag, dass ich jetzt auf Perl Version 5.36 war: Vor dem update auf bookworm lief perl 5.32.1 und es gab nur die Verzeichnisse wie z.B. "/usr/share/perl/5.32.1". Ich habe dann, gemäß dem Kapitel "fronthem Installation" im FHEM wiki ein update von fronthem versucht: "sudo cpanm Net::WebSocket::Server" und "sudo cpanm JSON". Danach existierte auch das Verzeichnis "/usr/share/perl/5.36.0", sowie darunter auch Net/WebSocket/Server/Connection.pm.

Geholfen hat es aber nichts (auch nicht Erteilen von execute Rechten an 'Connection.pm'). Port 2121 ist nicht anderweitig in Benutzung.

Bin jetzt ratlos und erst mal wieder auf das bullseye backup von vor 2 Wochen zurück.

-Franz

wvhn

Moin Franz,

die Fehlermeldung von smartVISU besagt, dass der Browser, in dem smartVISU aufgerufen wird, keinen Websocket-Server unter der in der smartVISU-Konfiguration eingetragenen Adresse findet. Also hat sich entweder die Adresse geändert (IP / Port), oder der WS-Server läuft nicht. Dies kann man auch mit dem Weasel Websocket Client direkt im Browser testen und damit Effekte der Visu ausschließen.

Nach einem Betriebssystem-Upgrade würde ich einmal den Templatechecker in der Visu laufen lassen. Der prüft, ob die erforderlichen PHP-Module installiert sind. Das hat aber mit dem hier auftretenden Fehler nichts zu tun.

Ich habe bei Betriebssystem-Upgrades die Erfahrung gemacht, dass die Option autoremove gefährlich ist. Man sollte sich vorher genau ansehen, welche Pakete als überflüssig angegeben werden und die noch benötigten Pakete mit "apt-mark" als manuell installiert registrieren. Dann werden sie nicht gelöscht.

Gruß
Wolfram


alkazaa

Moin Wolfram,
Danke für die Rückmeldung!
Zitat von: wvhn am 15 Juli 2024, 10:38:14Ich habe bei Betriebssystem-Upgrades die Erfahrung gemacht, dass die Option autoremove gefährlich ist.
Ich denke auch, dass es das war. Im Moment bin ich wieder zurück auf meiner bullseye Version vom 18.6. Wenn ich Zeit und Lust habe, werde ich nochmal den bookworm upgrade machen und dann etwas vorsichtiger vorgehen. Ich kriege dann vielleicht raus, welches Paket es war. Zuerst mache ich aber den pivccu upgrade auf der bullseye-Basis (denn der dürfte, was fronthem angeht, unkritisch sein).

Beste Grüße
Franz