The plugin file is interpreted as a tcl script and may contain all standard tcl commands as well as some special HomeVision commands described below. Global level commands will be executed to initialize the plugin. A plugin will typically setup and arm event handlers that will be invoked when a certain event occurs. This can be an external event (eg: data has been received on a socket that was opened by the plugin), a homevision event (eg: a special string was sent by the HomeVision controller), or a user event (eg: the user selects a menu entry created by the plugin).
The author of a plugin should make sure that both the plugin initialization code and the event handlers return control back to the main program within a reasonable time. Otherwise the plugin will cause the application to "freeze".
A number of example plugins can be found on the download page. In addition to providing useful functionality, these plugins can also be used to learn how to use the commands described below.
analog | Analog input port |
flag | Flag |
input | Input port |
ir | Infrared signal |
macro | Macro |
output | Output port |
pe | Periodic event |
se | Scheduled event |
temp | Digital temperature sensor |
timer | Timer |
var | Variable |
x10 | X-10 module |
zone | Thermostat zone |
TempScale | 0=Fahrenheit -1=Celsius |
Latitude | -179.9 - 180.0 |
Longitude | -179.9 - 180.0 |
TimeZone | -12 - 12 |
WavPlayCommand | |
WavFilePath | |
PrintCommand | |
Device | Read-only |
BaudRate | Read-only |
HVDateTime | Read-only |
HVVersion | Read-only |
HVCheckSum | Read-only |
HVTW523Stat | Read-only |
HVRunning | Read-only |
HVSelfTest | Read-only |
HVError | Read-only |
HVFileDateTime | Read-only |
HVFileName | Read-only |
ready | The main application has finished initializing and is ready for user interaction. |
connect | The application has connected to the HomeVision controller. |
open | A schedule file was opened. |
download | The current schedule is about to be downloaded into the HomeVision controller. |
loaded | The schedule has been downloaded into the HomeVision controller. |
statusupdate | An automatic status update report was received. |
x10update | An automatic x10 update or x10 house code update report was received. |
flagupdate | An automatic flag update report was received. |
varupdate | An automatic flag update report was received. |
inputupdate | An automatic input port update report was received. |
outputupdate | An automatic output port update report was received. |
analogupdate | An automatic analog input port update report was received. |
digitaltempupdate | An automatic digital temperature sensor update report was received. |
change | The schedule in memory has been changed. |
exit | The application is about to exit. |