Neuigkeiten:

Am Sonntag den 8.12.2024 kann es ab ca. 8:00 Uhr zu kurzzeitigen Einschränkungen / Ausfällen bei den Diensten des FHEM Vereines kommen.
Die Server müssen mal gewartet und dabei neu gestartet werden ;)

Hauptmenü

fhempy:nach FHEM update startet fhemp nicht mehr

Begonnen von boeho, 12 Juni 2024, 15:03:55

Vorheriges Thema - Nächstes Thema

boeho

Hallo zusammen,
nach einem notwendgen FHEM update startet fhempy nicht mehr.

Mein fhempy.log
Activating virtual environment...OK
2024-06-12 14:51:23,295 - ERROR    - __main__: Failed to load fhempy
Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/bin/start_fhempy.py", line 141, in <module>
    import fhempy.lib.fhem_pythonbinding as fpb
ModuleNotFoundError: No module named 'fhempy'
2024-06-12 14:51:23,308 - INFO     - __main__: Attempting install of fhempy>=0.1.462
2024-06-12 14:51:23,379 - ERROR    - __main__: Unable to install package fhempy>=0.1.462: /opt/fhem/.fhempy/fhempy_venv/bin/python3: No module named pip
2024-06-12 14:51:23,379 - ERROR    - __main__: Failed to install fhempy, exit now...

FHEM.log
2024.06.11 23:58:50 3: fhempyserver_15733: starting
2024.06.11 23:58:50 3: fhempyserver_15733: using logfile: ./log/fhempy-2024-06-11.log
2024.06.11 23:59:50 3: fhempyserver_15733: read: end of file reached while sysread
2024.06.11 23:59:50 3: fhempyserver_15733: stopped

Console von der Installation sudo apt install python3 python3-pip python3-dev libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libglib2.0-dev libdbus-1-dev bluez libbluetooth-dev git

Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut... Fertig
Statusinformationen werden eingelesen... Fertig
python3 ist schon die neueste Version (3.12.3-0ubuntu1).
python3-pip ist schon die neueste Version (24.0+dfsg-1ubuntu1).
python3-dev ist schon die neueste Version (3.12.3-0ubuntu1).
libffi-dev ist schon die neueste Version (3.4.6-1build1).
libssl-dev ist schon die neueste Version (3.0.13-0ubuntu3.1).
libjpeg-dev ist schon die neueste Version (8c-2ubuntu11).
zlib1g-dev ist schon die neueste Version (1:1.3.dfsg-3.1ubuntu2).
autoconf ist schon die neueste Version (2.71-3).
build-essential ist schon die neueste Version (12.10ubuntu1).
libglib2.0-dev ist schon die neueste Version (2.80.0-6ubuntu3.1).
libdbus-1-dev ist schon die neueste Version (1.14.10-4ubuntu4).
bluez ist schon die neueste Version (5.72-0ubuntu5).
libbluetooth-dev ist schon die neueste Version (5.72-0ubuntu5).
git ist schon die neueste Version (1:2.43.0-1ubuntu7.1).
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.

 sudo cpan Protocol::WebSocket
Loading internal logger. Log::Log4perl recommended for better logging
Reading '/root/.cpan/Metadata'
  Database was generated on Tue, 11 Jun 2024 13:17:02 GMT
Protocol::WebSocket is up to date (0.26).



Ich habe inzwischen alles mehrfach gelöscht und installiert und bin jetzt etwas ratlos.





boeho


Die Meldung im fhempy.log
- ERROR    - __main__: Unable to install package fhempy>=0.1.462: /opt/fhem/.fhempy/fhempy_venv/bin/python3: No module named pip
deute ich so, dass es 'pip' nicht gebt, deshalb hier mal der Verzeichnisinhalt
drwxr-xr-x 2 fhem dialout 4096 Jun  7 21:42 ./
drwxr-xr-x 5 fhem dialout 4096 Mai  9 11:19 ../
-rw-r--r-- 1 fhem dialout 2010 Feb 29 10:44 activate
-rw-r--r-- 1 fhem dialout  936 Feb 29 10:44 activate.csh
-rw-r--r-- 1 fhem dialout 2216 Feb 29 10:44 activate.fish
-rw-r--r-- 1 fhem dialout 9033 Feb 29 10:44 Activate.ps1
-rwxr-xr-x 1 fhem dialout  251 Jun  7 21:42 fhempy*
-rwxr-xr-x 1 fhem dialout  233 Apr 12 12:18 markdown2*
-rwxr-xr-x 1 fhem dialout  243 Mai  9 11:19 meross_api_cli*
-rwxr-xr-x 1 fhem dialout  248 Mai  9 11:19 meross_sniffer*
-rwxr-xr-x 1 fhem dialout  258 Feb 29 10:47 normalizer*
-rwxr-xr-x 1 fhem dialout  246 Feb 29 10:44 pip*
-rwxr-xr-x 1 fhem dialout  246 Feb 29 10:44 pip3*
-rwxr-xr-x 1 fhem dialout  246 Feb 29 10:44 pip3.11*
lrwxrwxrwx 1 fhem dialout    7 Feb 29 10:32 python -> python3*
lrwxrwxrwx 1 fhem dialout   16 Feb 29 10:32 python3 -> /usr/bin/python3*
lrwxrwxrwx 1 fhem dialout    7 Feb 29 10:32 python3.11 -> python3*
-rwxr-xr-x 1 fhem dialout  245 Apr 12 12:18 upnp-client*

Kann es an den Rechten irgend einer Datei liegen??



boeho

Hallo,
ich vermute, dass etwas mit der Installation von pip nicht geklappt hat. Deshalb würde ich es gerne wieder deinstallieren, kenne aber nicht die Syntax passend zur Installation (Console) aus GitHub von Domenik.
Habe
Ubuntu 24.04 LTS
Python 3.12.3

In der GUI wird nach der Installation nur 'fhempy_local' angezeigt. Ich meine da war noch eine Versionsnummer angehangen.
Ausserdem steht in fhemp_local:  prev_error   127.0.0.1: Connection refused (111)
 Wer kann helfen?

GhostSG

Moin zusammen,

nach einem Update von Debian 11 auf 12 hatte ich auch das Problem, dass der fhempy nicht mehr starten wollte:
Hier ein Auszug aus dem Log:

2024-10-05 17:34:52,591 - INFO     - __main__: Attempting install of fhempy>=0.1.462
2024-10-05 17:34:52,615 - ERROR    - __main__: Unable to install package fhempy>=0.1.462: /opt/fhem/.fhempy/fhempy_venv/bin/python3: No module named pip
2024-10-05 17:34:52,615 - ERROR    - __main__: Failed to install fhempy, exit now...
Activating virtual environment...OK
2024-10-05 17:36:12,091 - ERROR    - __main__: Failed to load fhempy
Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/bin/start_fhempy.py", line 141, in <module>
    import fhempy.lib.fhem_pythonbinding as fpb
ModuleNotFoundError: No module named 'fhempy'



Ich habe dann ziemlich viel versucht - fhempy neu installieren, FHEM-Update, Reboots, Python neu installieren usw.

Bei mir lag es am Ende daran, dass fhempy immer wieder versucht hat sich in die Datei "fhem_pythonbinding.py" in dem Script "/opt/fhem/FHEM/bindings/python/bin/start_fhempy.py", line 141" zu importieren und daran scheitertete.

Wie sich herausstellte, war VOR meinem Debian Update Python 3.9 installiert.
Die fragliche Datei lag unter "./opt/fhem/.fhempy/fhempy_venv/lib/python3.9/site-packages/fhempy/lib/fhem_pythonbinding.py"

Nach dem Debian Update...und anschließendem Python Update (3.11) UND mehrmaliger Versuche Pip, Fhempy, Python usw. zu installieren....wurde aber KEIN Verzeichnis
"python3.11" angelegt. Hier versuchte das Script "start_fhempy.py" jedoch die zu importierende Datei "fhem_pythonbinding.py" zu finden...was scheitern musste.

Kurzum. Ich habe einfach einen Ordner "python3.11" angelegt und alle Inhalte aus 3.9 rüberkopiert, sodass am Ende der Pfad
"./opt/fhem/.fhempy/fhempy_venv/lib/python3.11/site-packages/fhempy/lib/fhem_pythonbinding.py" existierte. Einmal ein "shutdown restart" in FHEM und schon lief fhemyp wieder.

boeho

Danke für den Tip.
Ich habe zwar Python 3.12, aber einen Versuch war es wert. Habe gleiches, aber eben mit Pfad python3.12 gemacht.
fhempy_local und fhempy_server wurden wieder grün.
Im fhempy.log habe ich nun folgendes:
Activating virtual environment...OK
2024-10-10 11:13:21,227 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.742...
2024-10-10 11:13:21,247 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2024-10-10 11:13:21,458 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2024-10-10 11:13:32,633 - INFO     - websockets.server: connection open
2024-10-10 11:13:32,634 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2024-10-10 11:13:35,248 - INFO     - meross_iot.http_api: Login successful against https://iotx-eu.meross.com
2024-10-10 11:13:35,249 - ERROR    - meross_integration: Exception raised by task: <Task finished name='Task-24' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.fhempy/fhempy_venv/lib/python3.12/site-packages/fhempy/lib/generic.py:216> exception=KeyError('mfaLockExpire')>
Traceback (most recent call last):
  File "/opt/fhem/.fhempy/fhempy_venv/lib/python3.12/site-packages/fhempy/lib/generic.py", line 224, in _handle_task_result
    task.result()
  File "/opt/fhem/.fhempy/fhempy_venv/lib/python3.12/site-packages/fhempy/lib/generic.py", line 218, in _run_coro
    await coro
  File "/opt/fhem/.fhempy/fhempy_venv/lib/python3.12/site-packages/fhempy/lib/meross/meross_setup.py", line 28, in run_setup
    http_api_client = await MerossHttpClient.async_from_user_password(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/fhem/.fhempy/fhempy_venv/lib/python3.12/site-packages/meross_iot/http_api.py", line 119, in async_from_user_password
    creds = await cls.async_login(email=email,
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/fhem/.fhempy/fhempy_venv/lib/python3.12/site-packages/meross_iot/http_api.py", line 280, in async_login
    mfa_lock_expire=response_data["mfaLockExpire"],
                    ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
KeyError: 'mfaLockExpire'

Perfekt war das Kopieren noch nicht, aber ich bin wieder optimistisch. Kann jemand helfen?