With Webcore ending for ST, how do I continue to change a bulb color?

I currently use IFTTT from Weatherflow to send a webhook to webcore. Based on the temperature reading, webcore then changes the color of a light bulb in ST. Without webcore, and ST’s inability to change the color of a bulb in IFTTT, has anyone discovered another convoluted way to change a bulb color with connected services? I can’t wrap my mind around what’s possible.

Hubitat is never an option.

I just wrote 8 routines for my furnace humidifier. It uses the built in Weather device’s temperature to toggle my humidifier on/off in 10 degree increments. It sounds like your bulbs aren’t directly ST compatible. If they were, you could do the same thing (If temp is <x, >x, or in the range x-y) set color to blue.

The bulbs are compatible, but the weather source is not as it’s from my backyard weather station. This is why I use IFTTT and webcore currently.

SharpTools.io supports webhooks (HTTP Triggers) that you can react to and send commands onto SmartThings.

HTTP Triggers are part of the premium tier, but if you have a weather device attached to your SmartThings account, you could react to that changing instead and send the command onto SmartThings as part of the free tier.

3 Likes

Thanks. I didn’t know Sharptools advanced so much. I got the webhook working, now I have to figure out how to get the temperature data from the webhook to affect a light. Thank you.

1 Like

Check out the ‘How to pass data to a rule’ part of this article:

2 Likes

Thanks. I was able to get the data in and some ability to change bulb color. In webcore I had the bulb change at 70 degrees or lower for example, then 65 or lower, 60 or lower, etc.

When I do it in SharpTools it’s seeing all of the “or lower” statements and cycling through all the different colors set up. Is there a way to do a range of temperatures rather than one?

You can add multiple conditions, use the else path, or reverse the order of your conditions (depending on your particular need)

IF temp <= 70 and temp > 65
THEN //do thing 1

IF temp <= 65 and temp > 60
THEN //do thing 2

IF temp < 60
THEN //do last thing for anything less than 60
2 Likes

Thanks again. That makes sense to add more than one condition. For some reason it’s just making my bulb the color blue, so I’ll have to check if the negative temperature ranges are being read instead of all the other conditions.

Keep in mind that the setColor() command in SmartThings accepts Hue as 0-100 whereas Hue is usually 0-360 in general color theory, so you may have to scale things accordingly.

If your device isn’t automatically showing the Color Picker in your rule editor, you can also Toggle the advanced switch in the top-right corner of the command block on and then change the data type on the left of the attribute to the color type.

Thanks again. That’s what it didn’t like. I was using the wrong hue. Found your math on the sharptools site, so if anyone is looking…

If regular hue is 240 then 240/360 * 100 = 66.66, which is the new hue number in the 0-100 base.

1 Like