event
english page
Das Programm ermöglich das ereignisgesteuerte Aufrufen von beliebigen
Kommandos. Im Konfigurationsfile wird festgelegt, welcher APROL®-Punkt
Kommandos starten soll. Dabei kann das Kommando bei jeder Wertänderung,
oder nur bei bestimmten Werten aufgerufen werden. Die gesamte Ausgabe des
Kommandos (sowohl stdout als auch stderr) wird, versehen mit PID des Kommandos, Datum und Uhrzeit, in ein Logfile geschrieben. War die Ausführung des
Kommandos nicht erfolgreich (Returnwert ungleich 0), so wird das Kommando
solange gestartet, bis es ohne Fehlercode ausgeführt werden konnte.
Das Konfigurationsfile besteht aus beliebig vielen Zeilen mit mindestens
3 Spalten:
- der APROL®-Punktname, dessen Wertänderung Aktionen bewirken
soll
- einem Ausdruck, der angibt, bei welchen Werten das nachfolgende Kommando
gestartet werden soll; hier kann ein beliebiger Tcl-Ausdruck stehen, für
den aktuellen Wert des Punktes kann $v geschrieben werden.
- das Kommando, das gestartet werden soll, optional gefolgt von Parametern.
Ist das letzte Zeichen kein ";", so wird der Punktname an die Parameterliste
angehängt, ist das letzte Zeichen kein "&", so wird das Kommando nur dann
ausgeführt, wenn es für die Konfigurationszeile nicht läuft.
Beispiele:
wenn der Wert des Punktes stoerung grösser 0 ist, soll das
Programm alarm mit Parameter stoerung aufgerufen werden, sofern es
nicht gerade gestartet wurde, d.h. das Programm kann immer nur einmal laufen
stoerung $v>0 alarm
wenn der Wert des Punktes gewicht grösser
als 100.5 ist, soll ein Fenster am Bildschirm erscheinen
gewicht $v>100.5 echo {wm iconify . ; tk_dialog .w Achtung \
{Achtung, Behälter 5 ist voll} {} 0 OK; exit} | wish;
bei jeder Wertänderung des Punktes test Programm
test_geaendert mit Parameter test aufrufen, Programm darf mehrmal
laufen
test 1 test_geaedert&
Das Programm benötigt das Paket ProxyIosys