Tcl/shell: Unterschied zwischen den Versionen
Zeile 9: | Zeile 9: | ||
==tcl-Skript in der Homematic ablegen== | ==tcl-Skript in der Homematic ablegen== | ||
Die Scripte werden mit FTP im Dateiverzeichnis unter '''/usr/local/addons/<addon-name>/<skriptname.tcl>''' abgelegt. | Die Scripte werden mit FTP im Dateiverzeichnis unter '''/usr/local/addons/<addon-name>/<skriptname.tcl>''' abgelegt. | ||
− | Dazu muß zunächst der FTP-Dienst im Homatic-Linux aktiviert werden und | + | Dazu muß zunächst der FTP-Dienst im Homatic-Linux aktiviert werden und per Telnet ein FTP-Passwort vergeben werden. |
+ | Siehe dazu auch [http://www.homematic-inside.de/index.php/software.html?view=item&item_id=36 Homematic-inside] | ||
==tcl-Skript starten== | ==tcl-Skript starten== |
Aktuelle Version vom 2. Juni 2011, 18:31 Uhr
Inhaltsverzeichnis
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 in der Homematic ablegen
Die Scripte werden mit FTP im Dateiverzeichnis unter /usr/local/addons/<addon-name>/<skriptname.tcl> abgelegt. Dazu muß zunächst der FTP-Dienst im Homatic-Linux aktiviert werden und per Telnet ein FTP-Passwort vergeben werden. Siehe dazu auch Homematic-inside
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]