A couple of weeks ago I ran into an article and survey on the Homeseer message board. It was about the programming language support for Homeseer 3.
August 2012: The survey is now closed

Major changes

  1. Linux is supported using MONO to allow .NET code to run. It should also run OSX.
  2. VBScript is not supported, scripts need to be converted to VB.Net.
  3. ASP is not supported for web pages but ASP.NET is supported.
  4. Device status is gone, only device value is available. Value pairs are used to represent device status such as ON=1, Off=0, etc.
  5. Device control done using CAPI API. This API was introduced in HS2, but has been expanded. Old functions like ExecX10 have been removed.
  6. Plugins are now EXE’s, rather than DLL’s. This will help increase reliability and also make it easier to debug. Also, plugins can run on other PC’s on the network or over the Internet.
    DJ: Plugins are EXE’s? No clue what that means. An EXE for me is a Windows executable ;-)


Which commands will most likely change?
Do read the survey and the Homeseer 3 development FAQ for all known details. Another recap can be found on the iHomeAutomate.eu website.

API FunctionStatus
AddActionwill be missing
AddCondtionwill be missing
CAPIHandleStatuswill be missing
ClearConditionswill be missing
ClearLastX10will be missing
ControlThermostatwill be missing
DeviceStatuswill be missing
DeviceStringExists, but parameter changed to REF
DeviceTimeExists, but parameter changed to REF
DeviceValueExists, but parameter changed to REF
DeviceValuesAddExists, but parameters changed
DeviceValuesGraphicsAddExists, but parameter changed
DeviceLastChangeNeeds to change to use REF
DeviceExistsNeeds to change to use REF
DialInternetConnectionwill be missing
DisconnectInternetConnectionwill be missing
ExecX10will be missing (use CAPI interface instead)
ExecX10ByNamewill be missing
ExecX10NoLogwill be missing
GetDeviceEnumeratorLimited support (many device properties changed)
GetDeviceExLimited support (many device properties changed)
GetDeviceCodeReturns technology dependent code
GetEventByRefIssues with accessing events directly.
GetEventEnumeratorwill be missing
GetEventwill be missing, replaced with GetEventEx
(issues with accessing events directly)
GetEventExIssues with accessing events directly.
GetTVGTDatawill be missing
GetURLIEonly works on Windows, not Linux
InstallScriptwill be missing
InterfaceVersionchanges from 3 to 4
IsDialUpConnectedwill be missing
IsOffwill be missing
IsOnwill be missing
keysWindows Only, not Linux
lastx10will be missing
NewConditionwill be missing
NewEventActionwill be missing
NewEventExwill be missing
NewEventGetRefwill be missing
NewRecurringEventwill change
NewTimeEventwill change
PrintOutwill be missing
PrintOutRawwill be missing
RunningAsServicewill be missing
SetDeviceLastChangewill be missing
SetDeviceStatuswill be missing
SetDeviceStatusByNamewill be missing
SetDeviceStringparameter changed to REF
SetDeviceTimeparameter changed to REF
SetDeviceValueparameter changed to REF
SetDeviceValueExparameter changed to REF
SetSecurityModeparameter changed to Boolean
Transmitparameters will change
X10InterfaceStatuswill be missing


How will I be able to test and re-write code/scripts?

Q: I want my plugin and scripts to run under Linux, but I know nothing about Linux and I don’t know how to install it. How can I test my code?
A: We will provide a virtual machine file that you can simply download and run. This will provide a complete test environment for you.


ALL of my scripts and Web pages are written in VBScript and classic ASP, so I’m pretty much screwed!
I’ve been waiting for years to see the next gen Homeseer but it will probably take me a year to get them converted. I’ll have to learn ASP.NET and VB.NET which I’m completely unfamiliar with.


Do you have good info on VB.NET or ASP.NET?
Do you know a (relatively) easy way to convert VBScript to VB.NET?


Update: Some interesting links
ASP.NET turorials

Comments are closed.