Wurde schonmal über „Everything is a file“ nachgedacht? Inotify existiert in PHP und sollte auch ausserhalb Unixoider Betriebssysteme hinreichend performant sein.
Die Idee dahinter:
IP-Symcon schreibt seinen Objektbaum als Verzeichnisbaum und die Variablen als Datei weg. Fremdprogramme können dann die Datei(en) einlesen und verarbeiten (dh. Fremdprogramme lauschen via Inotify auf Änderungen)
Sofern im Objektbaum vom IP-Symcon entsprechende Variablen für eine Rückantwort angelegt werden, können Fremdprogramme dort neue Werte ablegen und IP-Symcon kann (via Inotify) diese Änderungen verarbeiten.
Dieser Featurewunsch basiert auf 2 Überlegungen:
-
PHP ist nicht jedermanns Liebling. Durch die potentiell einfache Integration von Scriptsprachen wie Python, PowerScript oder Bash sowie die sich daraus ergebende Möglichkeit z.B. via Selenium auch mal die Eingaben auf einer Webseite zu automatisieren, würden sich neue Käufergruppen erschliessen.
-
Der Featurewunsch ist letztendlich auch dem Umstand geschuldet, dass der Logikplan keinerlei Wiederverwendbarkeit (so zumindest mein letzter Wissensstand) von Sublogikplänen erlaubt - es ist zwar möglich, einen Sublogikplan via „Copy & Paste“ zu übertragen. Ab da sind es aber eigenständige Workflows und ein neues Feature in einem Sublogikplan bedeutet, die Änderung händisch auf alle anderen Sublogikpläne zu übertragen (bei einem grösseren Projekt kann das schonmal länger dauern).
Node-RED ist keine wirkliche Alternative.
Ideen, Kommentare, zustimmung/ablehnung?