Tcl/shell: Unterschied zwischen den Versionen
(→tcl-Skripte auf die CCU transportieren) |
(→tcl-Skript starten) |
||
Zeile 8: | Zeile 8: | ||
==tcl-Skript starten== | ==tcl-Skript starten== | ||
+ | Starten kann man ein Skript auf der Zentrale selbst mit /bin/tclsh <scriptname.tcl>. Wenn man sich nicht dort einloggen möchte, kann man auch ein WebUI-Skript erstellen, in dem die folgenden Zeilen enthalten sein sollten. <br> | ||
+ | string stderr; <br> | ||
+ | string stdout; <br> | ||
+ | system.Exec("/bin/tclsh /usr/local/addons/<addon-name>/<skriptname.tcl> <eventuelle parameter>", &stdout, &stderr); <br> | ||
+ | Die spitzen Klammern natürlich weglassen. Parameter werden durch Leerzeichen getrennt. Die Verwendung von stderr und stdout ist sehr wichtig, ansonsten hängt sich die Zentrale nach einiger Zeit auf und führt keine WebUI-Programme mehr aus | ||
+ | [http://www.fhz-forum.de/viewtopic.php?f=26&t=4068&p=31131&hilit=stderr+ccu#p31131] | ||
==Start automatisieren== | ==Start automatisieren== |
Version vom 9. Februar 2011, 21:44 Uhr
tcl-Skripte auf die CCU transportieren
TCL-Skripte kann man auf verschiedene Arten auf die CCU übertragen. Am einfachsten ist es, sich einen bekannten Dienst zu installieren:
- ssh: http://www.fhz-forum.de/viewtopic.php?f=26&t=3014&hilit=homematic+ssh+server Vorsicht, auf der Seite nach unten scrollen und (mindestens) die Version 1.1 verwenden. Die Installation setzt übrigens autmomatisch ein Passwort, das man kennen sollte :) und ändern kann
- ftp: http://www.homematic-inside.de/index.php/software.html?view=item&item_id=36
Wenn man die Skripte auf der Zentrale hat, muß man sich im Zweifel einloggen, um sie zu testen. Das geht ebenfalls mit ssh oder auch
tcl-Skript starten
Starten kann man ein Skript auf der Zentrale selbst mit /bin/tclsh <scriptname.tcl>. Wenn man sich nicht dort einloggen möchte, kann man auch ein WebUI-Skript erstellen, in dem die folgenden Zeilen enthalten sein sollten.
string stderr;
string stdout;
system.Exec("/bin/tclsh /usr/local/addons/<addon-name>/<skriptname.tcl> <eventuelle parameter>", &stdout, &stderr);
Die spitzen Klammern natürlich weglassen. Parameter werden durch Leerzeichen getrennt. Die Verwendung von stderr und stdout ist sehr wichtig, ansonsten hängt sich die Zentrale nach einiger Zeit auf und führt keine WebUI-Programme mehr aus [1]