(Netio App) irsend per python - ich schnall es nicht

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    Ich fang mal so an, ich bin kein Programmierer kann aber zum Teil mit ein bisschen Code schon etwas anfangen bestimmt nicht (komplett) verstehen aber zusammenhänge zum teil schon erkennen.

    Nun zum eigentlichen problem: Ich wollte mir eine Fernbedienung mit der Netio App basteln die meine schon angelegten IR-Codes senden kann. Wenn ich einen IR-Code per Terminal sende funktioniert das auch schon sehr gut nur leider überhaupt nicht in meiner Netio App.

    Ich hoffe mir kann jemand mal so eine art Beispiel posten wie meine netio_server.py aussehen sollte wenn mein Terminal Befehl zum Beispiel so aussieht: irsend SEND_ONCE YAMAHA KEY_POWER

    Mike

  • (Netio App) irsend per python - ich schnall es nicht? Schau mal ob du hier fündig wirst!

  • tja das ist das was ich bis jetzt habe, sitze an diesem problem seit heute morgen ohne weitere erfolge


    • Offizieller Beitrag

    Erweiter mal die handle command Funktion, die Punkte nicht mit schreiben, die Zeigen nur an das dort drüber noch was steht ;) Direkt unter dem letzten

    Code
    else:
                self.send('unknown command\n')
                print 'Unknown command:', line

    Block, wäre ein Guter Punkt :). Auf die Einrückung achten!

    Code
    def handle_command(self, line):
            .
            .
            if line == "MACH YAMAHA AN"
                self.send("Yamaha an\n")
                subprocess.call(["irsend" ,"SEND_ONCE", "YAMAHA", "KEY_POWER"])

    Dann must du an den Server den String "MACH YAMHA AN" Senden (ich denke aus der NETIO App). Dabei must du aufpassen das irsend auch von überall erreichbar ist und nicht nur in nem Ordner in /home/pi rumschlummert, oder du musst den kompllen Pfad mit angeben (/home/pi/bla/blub/irsend)

  • So hab es jetzt mit folgendem Code (habe Zeichen geändert und hinzugefügt, denke die hast du vergessen und eventuell falsch eingegeben?? bitte überprüfen ob ich es jetzt verbogen habe oder ob es ein Fehler von dir war) probiert aber leider geht es immer noch nicht, nach dem beenden mit CTRL+C kommt eine Fehler Meldung wie folgt:

    ^CTraceback (most recent call last):
    File "netio_server.py", line 158, in <module>
    for obj, flags in evt:
    File "netio_server.py", line 148, in poll
    evt = self.epoll.poll()

    Zeile 148: evt = self.epoll.poll()

    Zeile 158: for obj, flags in evt:

    hast du eine Idee??
    EDIT: is ja doof, ich dachte du siehst gleich noch die Zeilennummern grrrrrr

    Einmal editiert, zuletzt von Vaio (29. September 2014 um 19:43)

    • Offizieller Beitrag

    du hast 2 die gleiche funktion ;), mein code muss in die Bestehende command_handle integriert werden. das

    Code
    def handle_command(self, line):

    musst du dann natürlich weg lassen. Es sollte nur zeigen wohin mit dem Spass.

  • hehe ok werd ich = versuchen

    DANKE :thumbs1::thumbs1::thumbs1::thumbs1::thumbs1::heart::heart::heart::heart::heart:


    Du bist der größte, es funzt

    Einmal editiert, zuletzt von Vaio (29. September 2014 um 20:10)

  • Hallo zusammen,

    ich habe seid gestern auch NetIO (App) und versuche gerade Infrarot einzubinden.
    Funksteckdosen funktionieren einwadfrei...

    Aber mal ne blöde frage... wo finde ich den "def handle_command(self, line):"

    in meiner netio_server.py find ich davon nichts... diese hier sieht auch ganz anders aus, als die die ich habe (frisch installiert)

    Vielen Dank schon mal und viele Grüße
    Markus

  • Kann gelöscht werden habe den Fehler gefunden!!


    Hallo mal wieder,

    Ich würde gern mein python script erweitern um weitere IR befehle für Tv und Beamer, habe auch schon so einiges probiert bekomme es aber absolut nicht zum laufen. Ich hoffe das mir da jemand weiter helfen kann.

    hier mal mein script:

    Einmal editiert, zuletzt von Vaio (19. September 2015 um 14:21)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!