Also der Fehler:
ModuleNotFoundError: No module named 'msmart'
sagt ja deutlich aus, das Python Programm msmart nicht gefunden wird.
Da Du ja sagst, das es installiert ist, kann das nur 2 Ursachen haben:
- Du lügst
(was ich aber mal ausschließen würde) - Das Du mehrere Phyton Versionen hast und es nicht in der Version installiert ist, mit der das Script versucht es zu starten.
Um
Fall 2 mal zu überprüfen mache mal folgendes:
schau im Script in der ersten Zeile welches pyton Du verwendest.
Dann startest Du Python direkt auf der Shell.
z.B.
/opt/fhem/Python-3.9.5/python
oder
/usr/bin/env python3
(das sollte bevorzugt werden und ich habe es auch schon in meinem aktuellen Script angepasst)
dann:
>>> import sys
>>> sys.path
>>> exit()
Jetzt werden
alle Verzeichnisse angezeigt in denen msmart gesucht wird
Du musst nun schauen, ob msmart tatsächlich in irgeneinem dieser Verzeichnisse existiert.
Desweiteren ist es wichtig, das im Verzeichnis
/opt/scripts
nur die setAC.py liegt und keinerlei Dateien oder Unterverzeichnisse die msmart oder ähnlich heißen.
Wenn das gecheckt ist, dann schreibe bitte mal die Ausgabe von sys.path und wo msmart installiert ist