I wrote a simple Device type to control a LAN connected device using HTTP and JSON. This works but seems a bit crude because it doesn’t keep the device handler and tiles up-to-date. It looks like the right way to do this is to create a UPnP interface for the device, write a Service-Manager and Device Type for SmartThings. Right?
So, I built a sample UPnP device using Cling (http://4thline.org/projects/cling), then used the sample UPnP ServiceManager and UPnP Device, changed the searchTarget default value to “urn:schemas-upnp-org:device:MyController:1” and changed the namespace to ‘com.matrangola.sample’. I also added switch tile to the device (to verify it was doing something). I’ve verified that my sample UPnP interface works using Cling Workbench to query it.
My question is… How do I run the Service Manager in the SmartThings app on my Android Phone?
The Service Manager is published through the SmartApp IDE interface and DeviceType is published the same way. How should the device appear in the SmartThings Phone app? Under Add a Thing? Should the UPnP device be detected when select “Start looking for things”?
The getDevices(), ssdpHandler() and ssdpDiscover() are running, according to the log (I added some log messages to the Service Manager code).
I tired manually adding the device handler to using the “My Devices” in the IDE but that doesn’t bring up the service manager.