Not sure how many people have seen or used these but the Etekcity Wifi Light Switches are quite reasonable on amazon and work very well. They have a decent app and integrate with Alexa/Google Home but I wanted some additional options and integrations.
I have reverse engineered the API calls from their smartphone app, and have put together a Python 3 program that allows a number of options to be executed from any device running a python shell. It supports basic on-off commands, queries device state, can dump a detailed list of all your devices associated with your account, and I’ve also added an energy saver mode that can be setup to occasionally poll the status of a switch and turn it off if it’s been on to long.
I’d love to take this and convert it into a groovy-based device handler but thought I’d start with python to get the api calls straight as I know Python well.
I’m not great with groovy, so if anyone wants to assist with converting this into a device handler for integration into smartthings feel free.
Hopefully some others find this useful…
Update - Solution 8/29/20
Thanks so much to @nic_kline for his work on building this into working native device handlers.
Check out his github page for the code:
Note The ‘etekcity-plug-high-amp.src’ should be used to control the in-wall light switches as well as the higher amp plugs.