I have Broadlink RM Pro with RM Bridge/Plugin running to control my RF outlets, so I can make HTTP request to
[IP]/lights_on to turn the lights on, and
[IP]/lights_off to turn the lights off.
I use @CSC’s HTTP button creator to create a button that would make these HTTP requests. So I have one button: one for on, and one for off.
At first I named these “Lights On” and “Lights Off”. However, this doesn’t work too well since when I ask Alexa to turn lights on, it would complain that there are multiple devices called “lights”.
So I ended up naming these HTTP buttons
X_Off. I then create another virtual switch
Lights, with a smart light with a program that would turn on
X_On on when
Lights is turned on, and turn on
Lights is turned off. The result is ok. I have a virtual switch that I can turn on or off in my app, or through voice command.
The problem is when I turned the lights on without going through SmartThings. The status of
Lights is still off, when the lights really are already on. When I ask Alexa to turn off the lights, SmartThings wouldn’t respond since it thought the lights are already off.
My question: is there another, easier way to work with HTTP button? If not, is there a way I could set my virtual switch so that it sends the command (say off) even though the status is already off?