I just sent an email to email@example.com - assuming that is the right place to send it to. This will basically break a bunch of stuff that is working in groovy world, when it is retired - I am sure my devices are not the only ones!
Agreed - The cloud connected device option is a non-option if you are not the manufacturer of the device - I don’t have a budget to run a cloud server? When all that is needed is to maybe create a whitelist of domains that are accessible?
It would be nice. But I doubt they’ll do it from a security standpoint. Maybe if they can waive liability of your hub get hacked for remote execution. The workaround is run another device locally that they aren’t responsible for and communicate with it.
I’d love to understand why internet requests are blocked. As it stands, I was able to stand up a local proxy for an internet server, so it’s clearly technically capable of making these requests. This sure puts a much larger burden on users for devices that require data from the internet.
In my case I’m querying the local power company’s hourly pricing API to control hub devices based on electricity prices. This worked on the groovy version.
If not completely opening up the internet to devices, how about a new section in the config.yaml that can poke holes in the ‘firewall’ sort of speak?
(www.rboyapps.com - Making SmartThings Easy!)
I had offered a solution to SmartThings. Define specifically which domains and/or internet IP’s the driver will be working with in the package file. When when the user installs the driver, it should prompt the user to allow access to those domains and IP’s. This way the user know exactly what they’re agreeing to. If the driver updates the package in future with new domains it should block them until the user reinstalls the drivers. This would avoid any backdoor issues.
I’ve created a workaround for my driver using a local proxy. The proxy is written in Go and can be run anywhere on the local network (I run on an Intel NUC running Ubuntu). The driver uses UDP multicast to discover the proxy.