One of the big changes in HS3 is its communication framework. HS3 introduced
HSCF.dll, from the HS3 SDK documentation:
“Plug-in’s communicate with HomeSeer through a simple TCP connection on port 10400. A communication framework called HSCF is used for 2-way communications and the connection remains open as long as the plug-in is connected. If a connection is lost, HomeSeer will attempt to re-connect with the plug- in. The communication framework also does its best to maintain the connection. This framework was chosen over Windows WCF due to its high performance, simplicity, and better compatibility with Linux.”
Wanting to know more on the framework I stumbled upon Tinks post on the homeseer board:
“Yes, we created a framework for HS3 based upon a 3rd party product and turned it into the HSCF library that we use.
There are a lot of technical reasons why WCF would not work, reflection and uni-directionality being part of it, this framework eliminates a lot of those issues.”
Basically what we need to do to get connected to HS3 is:
Ok – that looks oddly similar to:
So, it looks like we found the “3rd party product” Tink refers to on the homeseer board.
I couldn’t find any license delivered with the HS3 binaries, nor could I find any reference to the original product. So giving the original framework author some credit, here are some references:
- SCS API
- Usage of SCS
- Implementation of SCS
- SCS source on GitHub
- SCS author on twitter
- SCS author homepage