Danke Euch allen. So werde ich das hinbekommen, was ich suche.
SUFU hatte ich benutzt, aber mir ist wohl das Wort Einschaltdauer nicht in den Sinn gekommen. Ich habe nach Zeitverzögerung gesucht.
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Schönen Sonntag noch.
Rudi
Moderator: Co-Administratoren
Aua,Ja !!! Cuxd kann noch viel mehr !HMTester hat geschrieben:Moin
CuxD habe ich nicht, ... Oder ist das Ding noch zu etwas anderem zu gebrauchen?
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 1 5");
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 0 10");
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 1 15");
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 0 20");
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ1234567:1.ALL_LEDS 2863311530 60");
! für alle LED´s der Statusanzeige nach 60 Sekunden auf grün.
Hallo Wissende!MaxWrestler hat geschrieben:Und genau diesen bräuchtest du um von der Script Ebene aus mein kleines TCL Script zu starten.
CuxD erzeugt für diesen Aufruf einen eigenen Prozess und überwacht ihn,hängt dieser Prozess aus welchen gründen auch immer, wird nach 5 Minuten derselbige terminiert.
Kurzes Script Beispiel, hier wird ein Aktor alle 5 Sekunden Ein und Ausgeschaltet (alle 4 Timer werden gleichzeitig gestartet !)
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 1 5");
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 0 10");
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 1 15");
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ0504341:1.STATE 0 20");MIt der LED Anzeige dann etwa so
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801121:1.CMD_EXEC").State("tclsh /usr/local/timer.tcl BidCos-RF.IEQ1234567:1.ALL_LEDS 2863311530 60");
! für alle LED´s der Statusanzeige nach 60 Sekunden auf grün.
Hier geht es zur neuesten Version von CuxD !
timer TCL.zip
TCL Script
Code: Alles auswählen
load tclrega.so
set wait_in_seconds [lindex $argv 2]
after [expr $wait_in_seconds * 1000]
set do_it [rega_script "var obj = dom.GetObject(\"[lindex $argv 0]\").State(\"[lindex $argv 1]\");" ]
Code: Alles auswählen
tclsh /usr/local/timer.tcl BidCos-RF.IEQ1234567:1.ALL_LEDS 2863311530 60
# für alle LED´s der Statusanzeige nach 60 Sekunden auf grün