It uses both. But I think string is recommended.
This is my thermostat settings:
Group g_Stortbad_TSTAT "Stort Bad Termostat" [ "Thermostat" ]
Number stort_bad_Temperature "Stort Bad Temperatur [%.1f °C]" <cu_heating> (g_Stortbad_TSTAT,Temperatur,gTvaer,gSugeTemp) [ "CurrentTemperature" ] { channel="ihc:controller:elko:stortbad_temperatur_fb" }
Number stort_bad_Tempsetpunkt "Stort Bad Temperature setpunkt [%.1f °C]" <temperature> (g_Stortbad_TSTAT) [ "homekit:TargetTemperature" ] { channel="ihc:controller:elko:stortbad_temperaturSet_fb", autoupdate="false" }
Number stort_bad_fugt "Stort Bad Fugtighed [%.0f %%]" <Humidity> (g_Stortbad_TSTAT,Fugtighed,gHumidityBathRoom) [ "CurrentHumidity" ] { channel="ihc:controller:elko:stortbad_fugtighed" }
String stort_bad_Mode "Stort Bad Mode [%s]" (g_Stortbad_TSTAT) [ "homekit:TargetHeatingCoolingMode" ]
Switch telestat1_stort_bad "Stort Bad Telestat [%s]" <cu_switch> (g_Stortbad_TSTAT,gTelestat) { channel="ihc:controller:elko:stortbad_telestat" }
Then I use a rule, based on the telestat state, which send either heat or cool to GA.
rule "heatingmode stortbad"
when
Item telestat1_stort_bad changed
then
if (telestat1_stort_bad.state.toString == "ON" ) {
stort_bad_Mode.postUpdate("heat") }
else {
stort_bad_Mode.postUpdate("cool") }
end
When “heat” is send to GA the thermostat in the Google Home app will turn red. And when sending “cool”, the thermostat turn to blue.
Btw.. Stay healthy, Stuart!