mirror of
https://github.com/esphome/esphome.git
synced 2025-10-31 23:21:54 +00:00
[web_server] Update to use new climate API (#11363)
This commit is contained in:
@@ -1325,7 +1325,7 @@ std::string WebServer::climate_json(climate::Climate *obj, JsonDetail start_conf
|
|||||||
root["max_temp"] = value_accuracy_to_string(traits.get_visual_max_temperature(), target_accuracy);
|
root["max_temp"] = value_accuracy_to_string(traits.get_visual_max_temperature(), target_accuracy);
|
||||||
root["min_temp"] = value_accuracy_to_string(traits.get_visual_min_temperature(), target_accuracy);
|
root["min_temp"] = value_accuracy_to_string(traits.get_visual_min_temperature(), target_accuracy);
|
||||||
root["step"] = traits.get_visual_target_temperature_step();
|
root["step"] = traits.get_visual_target_temperature_step();
|
||||||
if (traits.get_supports_action()) {
|
if (traits.has_feature_flags(climate::CLIMATE_SUPPORTS_ACTION)) {
|
||||||
root["action"] = PSTR_LOCAL(climate_action_to_string(obj->action));
|
root["action"] = PSTR_LOCAL(climate_action_to_string(obj->action));
|
||||||
root["state"] = root["action"];
|
root["state"] = root["action"];
|
||||||
has_state = true;
|
has_state = true;
|
||||||
@@ -1345,14 +1345,15 @@ std::string WebServer::climate_json(climate::Climate *obj, JsonDetail start_conf
|
|||||||
if (traits.get_supports_swing_modes()) {
|
if (traits.get_supports_swing_modes()) {
|
||||||
root["swing_mode"] = PSTR_LOCAL(climate_swing_mode_to_string(obj->swing_mode));
|
root["swing_mode"] = PSTR_LOCAL(climate_swing_mode_to_string(obj->swing_mode));
|
||||||
}
|
}
|
||||||
if (traits.get_supports_current_temperature()) {
|
if (traits.has_feature_flags(climate::CLIMATE_SUPPORTS_CURRENT_TEMPERATURE)) {
|
||||||
if (!std::isnan(obj->current_temperature)) {
|
if (!std::isnan(obj->current_temperature)) {
|
||||||
root["current_temperature"] = value_accuracy_to_string(obj->current_temperature, current_accuracy);
|
root["current_temperature"] = value_accuracy_to_string(obj->current_temperature, current_accuracy);
|
||||||
} else {
|
} else {
|
||||||
root["current_temperature"] = "NA";
|
root["current_temperature"] = "NA";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (traits.get_supports_two_point_target_temperature()) {
|
if (traits.has_feature_flags(climate::CLIMATE_SUPPORTS_TWO_POINT_TARGET_TEMPERATURE |
|
||||||
|
climate::CLIMATE_REQUIRES_TWO_POINT_TARGET_TEMPERATURE)) {
|
||||||
root["target_temperature_low"] = value_accuracy_to_string(obj->target_temperature_low, target_accuracy);
|
root["target_temperature_low"] = value_accuracy_to_string(obj->target_temperature_low, target_accuracy);
|
||||||
root["target_temperature_high"] = value_accuracy_to_string(obj->target_temperature_high, target_accuracy);
|
root["target_temperature_high"] = value_accuracy_to_string(obj->target_temperature_high, target_accuracy);
|
||||||
if (!has_state) {
|
if (!has_state) {
|
||||||
|
|||||||
Reference in New Issue
Block a user