Ablaufplan Änderungen im Skript

Ist es möglich in einen Ablaufplan mit einem Skript einzugreifen? Also Werte ändern oder as auch immer.

Was hast du denn vor? Du kannst einen Ablaufplan starten und stoppen. Andere Änderungen sind aktuell noch nicht vorgesehen und daher mit Vorsicht zu genießen. Du kannst allerdings die Datei auslesen und bearbeiten via IPS_GetScriptContent bzw. IPS_SetScriptContent. Das Format könnte sich aber bedarfsbedingt ändern, daher müssen dazugehörige Skripte eventuell in kommenden Versionen angepasst werden. Schließlich kannst du über die undokumentierte Funktion IPS_GetFlowScriptStatistic die Informationen zu bisherigen und der laufenden Ausführung abfragen.

Ich hab meine Bewässerung (Gardena) in IPS eingebunden. Dazu hab ich für den Rasen und die Thujen zwei Variablen angelegt. Die eine spiegelt die minimale Bodenfeuchte wieder und die andere die Bewässerungsdauer. Das ganze kann ich über das Webfront ändern. Im Ablaufplan kann ich aber derzeit nur fixe Werte für die Dauer und auch für die „Wenn-Dann“ Abfrage eingeben. Er soll nur bewässer, wenn der Boden trocken ist.
Ich wollte halt bei einer Änderung einer der Variablen den Ablaufplan ändern. Ich habs jetzt aber auf die altbewährte Methode mit einem Skript gemacht :wink: . Der Auslösetime ist zusätzlich im WF verlinkt, somit kann ich auch die Startzeit im WF ändern.
Das mag für den einen oder anderen Unverständlich sein, aber ich persönlich mag nicht so gerne hardcodierte Sachen, auch wenn es nicht notwendig ist.
Außerdem hab ich gestern noch auf die Unlimited Version umgestellt, daher ist mir die Variablenanzahl egal.

Wir wollen noch diverse Aktionen auch mit Variablenwerten schaltbar machen. Das ist ja beispielsweise für die mathematischen Aktionen oder das ganze Programm mit „Auf Wert schalten/setzen“ auch schon umgesetzt. Für „Warten“ ist das auch bereits umgesetzt. Das findest du unter den allgemeinen Expertenaktionen.

Guten Morgen,

ich würde das Thema gerne noch einmal aufgreifen, da ich Ablaufpläne gerne dynamisch gestalten würde. Dazu wäre es gut, wenn man per Skript eingreifen könnte, um Variablen dynamisch zu definieren (z.B. über IPS_GetParent oder Variablen unterhalb der Parent-Variablen, z.B. über IPS_GetVariableIDByName).

Noch schöner wäre es natürlich, wenn man dies im Ablaufplan unmittelbar als Auswahlmöglichkeit beim Festlegen einer Variablen hätte (z.B. beim Festlegen einer Variablen zum Vergleich oder zum Setzen eines Wertes).

@Dr.Niels Wäre so etwas umsetzbar oder geht es bereits irgendwie?

Viele Grüße!

Ich verstehe deine Frage gerade nicht ganz. Du kannst selbstverständlich als Aktion ein PHP-Skript ausführen, welches du dann frei definierst.

Hallo Dr.Niels,

sorry wenn ich mich unverständlich ausgedrückt habe. Es geht um Folgendes:

Ich würde gerne einen Ablaufplan duplizieren, um ihn unter unterschiedlichen Instanzen zu verwenden, die die gleichen (nicht dieselben) Variablen mit denselben Namen enthalten. Wähle ich z.B. zum Schalten einer Variablen im Ablaufplan „Aktion hinzufügen“, dort als Ziel die Variable und dann unter Aktion „Schalte auf Wert einer anderen Variablen“, kann ich sowohl als Ziel als auch als Parameter jeweils nur eine Variable aus dem Objektbaum wählen. Dupliziere ich den Ablaufplan und verwende ihn unter einer Parallelinstanz, muss ich alle so gewählten Variablen „nachziehen“. Es wäre daher hilfreich, wenn man nicht nur eine bestimmte Variable zur Auswahl hätte, sondern z.B. „Parent“ des Ablaufplans oder die durch den Namen zu identifizierende „Child“ unterhalb der „Parent“. Durch eine solche dynamische Variablenauswahl müsste nichts mehr „nachgezogen“ werden und die Ablaufpläne könnten flexibler verwendet werden.

Ich hoffe, das ist jetzt verständlicher :wink:

Viele Grüße…

Ah, jetzt verstehe ich die Idee. Aktuell könntest du so etwas nur via PHP-Code umsetzen.

Ok, schade - danke für die Info…!

Alternativ hast du natürlich die Möglichkeit dir eigene Aktionen zu bauen. Wenn es hier nur um ein oder zwei Bausteine geht, ist das vielleicht geschickter…