Wie führt man ein Python Script aus?

Begonnen von TheMonumental, 10 Juli 2021, 13:49:40

Vorheriges Thema - Nächstes Thema

TheMonumental

Beide Befehle liefern mir

/usr/bin/python3



TheMonumental

ok ich habs herausgefunden, ich hab das im falschen user-context installiert.
Ich hab fhem nochmal als su installiert und dann konnte er es importieren.

Jetzt hab ich nur noch den fehler:


Failed to connect to localhost:7072
Failed to send msg, len=22. Not connected.


mein fhem läuft local auf dem raspi.
Die oberfläche erreiche ich über Port 8083

also wenn ich den webbrowser auf dem raspi aufmache kann ich ihn mit dieser url erreichen:

http://localhost:8083/fhem

muss allerdings noch username und passwort mit angeben.


in meinem script hab ich folgendes stehen

_FHEM = fhem.Fhem("localhost")
_FHEM.send_cmd("set RecordingSound off")


wenn ich versuche es so zu öffnen:

_FHEM = fhem.Fhem("localhost:8083")

macht er mir "localhost:8083:7072" draus.

TheMonumental

Also das Anmelden/schalten über die IDE und das Terminal hat schonmal geklappt.

Ich bin den anweisungen von der Github-Seite gefolgt

https://pypi.org/project/fhem/
https://domschl.github.io/python-fhem/doc/_build/html/index.html#

aber wenn fhem das script ausführt kann es sich nicht mit dem server verbinden.

script sieht jetzt so aus:


_FHEM = fhem.Fhem(server="192.168.2.125",port=8083,protocol="http",password="xxxx",username="pi")
_FHEM.connect()
if _FHEM.connected():
    print("connected as fuck")
    _FHEM.send_cmd("set RecordingSound off")
else:
    print("Couldn't connect")
_FHEM.close()



Log aus dem Terminal mit User: su / pi

JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
recording
finished recording
connected as fuck



Und das Logfile aus FHEM

recording
finished recording
Couldn't connect
2021.07.10 18:12:02 3: ActOnRecording return value: -1



gibts hier vlt. wieder ein rechte-problem wie auch schon beim audio?

Wernieman

#18
Hast Du auf http ein Passwort gesetzt?
Laut Doku ist es eine basicauth und damit eher http als FHEM login ..... ich befürchte, Du mußt bein Scriptersteller nachfragen ...

Edit: Rechtschreibfehler
- 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

TheMonumental

Es war irgendwas mit crfs
Momentan funktionieren die Aufnahmen.

Ich habs schon fleißig getestet.
Das Skript blockiert immer noch den fhem-server während der aufnahme und meine Lampe wird nicht als "Off" dargestellt.

Das blockieren ist eher das schlimme, da so meine aufzeichnung des Soundlevels unterbrochen werden.

TheMonumental

Ich werde diesen Thread hier schließen und einen neuen zu dem Thema aufmachen.
Vielen Dank für eure Hilfe.

Neuer Thread hier
https://forum.fhem.de/index.php/topic,121998.msg1165994.html#msg1165994