Seite 1 von 3

python skript getriggert über TW ausführen?

Verfasst: Di Jan 12, 2021 10:58 pm
von tger977
Hallo zusammen,

ich suche nach einer Möglichkeit wie ich ein python Script mit Parametern die über eine Logik vorgegeben werden sollen ausgeführt werden kann.

Einen Python Container und das Skript per CLI im Container ausführen habe ich schon erfolgreich getestet.

Aber wie bekomme ich nun einen Aufruf über z.B. ein KNX Objekt oder einen Logikausgang getriggert? :confusion-scratchheadyellow:

Wäre für Hinweise dankbar...

Re: python skript getriggert über TW ausführen?

Verfasst: Di Jan 12, 2021 11:16 pm
von Chris M.
Am einfachsten dürfte der Wiregate-Plugin-Container sein. Bei dem musst Du aber ggf. noch Python nachinstallieren.

Dann dort ein Plugin (in Perl) schreiben, dass das Python-Skript aufruft.

Re: python skript getriggert über TW ausführen?

Verfasst: Di Jan 12, 2021 11:56 pm
von tger977
Danke Chris. Schau ich mir mal an...

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 5:30 am
von StefanW
Hallo Andi,

der Ansatz mit dem Plugin-Container ist der richtige Ansatz, weil man dort schon einen installierten und parametrierten eibd bekommt.

Es sollte auch eine in phyton einbindbare API des eibd geben, wie und für welche Version kann ich nicht sagen. Von Perl aus aufrufen ist vermutlich die am schnellsten realisierbare Methode.

lg

Stefan

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 7:40 am
von tger977
Danke für eure Hinweise. Damit ich nun den mit dem python Script gebauten Container mergen kann mit dem wiregate plugin Container: gibt es irgendwo ein repo auf z.B. github das man forken kann um dort noch die Ergänzungen einzubauen, dann auf Dockerhub bauen lassen kann und dann falls es funktioniert auch auf dockerhub ein fertiges Image bereitstellenzu können?

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 8:24 am
von blaubaerli
Hallo Andi,

schau mal hier „wiregate-perl-plugin-environment:dev-0.9“.

Der läuft bei mir. Rest sollte sich selbst erklären. Habe gerade leider keine Zeit für eine ausführlichere Antwort.

Beste Grüße
Jens

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 1:23 pm
von Cepheus73
Um es schnell zu testen kannst du auch das Python-Script im plugin-Container unter /etc/wiregate ablegen (z.B. per WinSCP verbinden).
Dann im init.sh-Script unter /etc/wiregate Python nachinstallieren (wobei standardmäßig nur Python 3.5 geht wegen der verwendeten Debian-Version).

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 5:03 pm
von Sensej
StefanW hat geschrieben: Mi Jan 13, 2021 5:30 am
Es sollte auch eine in phyton einbindbare API des eibd geben, wie und für welche Version kann ich nicht sagen.
Hallo Stefan,
gibt es Schwierigkeiten/Komplikationen(z.B Telegramme gehen verloren usw.), wenn mehrere Clients(TWS-Busmonitor und externe Python Anwendung) KNX-Telegramme über TPUART-Schnittstelle abhören?

MfG Juri

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 5:10 pm
von StefanW
Sensej hat geschrieben: Mi Jan 13, 2021 5:03 pmgibt es Schwierigkeiten/Komplikationen(z.B Telegramme gehen verloren usw.), wenn mehrere Clients(TWS-Busmonitor und externe Python Anwendung) KNX-Telegramme über TPUART-Schnittstelle abhören?
Nein, der Stack kopiert stur die Telegramme für jeden angeschlossenen Tunnel.

KNX ist ein sehr langsames Protokoll mit 9.600 kBit. Demgegenüber ist die Ethernet Schnittstelle mit 100.000 kBit/s deutlich schneller... die er nebenbei auch bedienen kann.

Stefan

Re: python skript getriggert über TW ausführen?

Verfasst: Mi Jan 13, 2021 5:15 pm
von gbglace
Von daher nur aufpassen was Du auf der IP-Seite programmierst , so dass dort kein Telegrammsturm auf den Stack trifft und ihn dann blockiert.