mirror of
https://github.com/GrKoR/esphome_aux_ac_component.git
synced 2025-12-06 11:36:55 +03:00
state => preset
This commit is contained in:
@@ -1793,7 +1793,7 @@ class AirCon : public esphome::Component, public esphome::climate::Climate {
|
||||
// бинарный сенсор состония разморозки
|
||||
esphome::binary_sensor::BinarySensor *sensor_defrost_ = nullptr;
|
||||
// текстовый сенсор, отображающий текущий режим работы сплита
|
||||
esphome::text_sensor::TextSensor *sensor_state_reporter_ = nullptr;
|
||||
esphome::text_sensor::TextSensor *sensor_preset_reporter_ = nullptr;
|
||||
|
||||
|
||||
// загружает на выполнение последовательность команд на включение/выключение табло с температурой
|
||||
@@ -1910,7 +1910,7 @@ class AirCon : public esphome::Component, public esphome::climate::Climate {
|
||||
void set_defrost_state(binary_sensor::BinarySensor *defrost_state_sensor) { sensor_defrost_ = defrost_state_sensor; }
|
||||
void set_display_sensor(binary_sensor::BinarySensor *display_sensor) { sensor_display_ = display_sensor; }
|
||||
void set_invertor_power_sensor(sensor::Sensor *invertor_power_sensor) { sensor_invertor_power_ = invertor_power_sensor; }
|
||||
void set_state_reporter_sensor(text_sensor::TextSensor *state_reporter_sensor) { sensor_state_reporter_ = state_reporter_sensor; }
|
||||
void set_preset_reporter_sensor(text_sensor::TextSensor *preset_reporter_sensor) { sensor_preset_reporter_ = preset_reporter_sensor; }
|
||||
|
||||
bool get_hw_initialized(){ return _hw_initialized; };
|
||||
bool get_has_connection(){ return _has_connection; };
|
||||
@@ -2242,7 +2242,7 @@ class AirCon : public esphome::Component, public esphome::climate::Climate {
|
||||
sensor_defrost_->publish_state(_current_ac_state.defrost);
|
||||
|
||||
// сенсор состояния сплита
|
||||
if (sensor_state_reporter_ != nullptr) {
|
||||
if (sensor_preset_reporter_ != nullptr) {
|
||||
std::string state_str = "";
|
||||
if (this->preset == climate::CLIMATE_PRESET_SLEEP) {
|
||||
state_str += "SLEEP";
|
||||
@@ -2251,7 +2251,7 @@ class AirCon : public esphome::Component, public esphome::climate::Climate {
|
||||
} else {
|
||||
state_str += "NONE";
|
||||
}
|
||||
sensor_state_reporter_->publish_state(state_str.c_str());
|
||||
sensor_preset_reporter_->publish_state(state_str.c_str());
|
||||
}
|
||||
|
||||
// состояние дисплея
|
||||
|
||||
@@ -55,8 +55,8 @@ CONF_DEFROST_STATE = 'defrost_state'
|
||||
ICON_DEFROST = "mdi:snowflake-melt"
|
||||
CONF_DISPLAY_INVERTED = 'display_inverted'
|
||||
ICON_DISPLAY = "mdi:clock-digital"
|
||||
CONF_STATE_REPORTER = "state_reporter"
|
||||
ICON_STATE_REPORTER = "mdi:format-list-group"
|
||||
CONF_PRESET_REPORTER = "preset_reporter"
|
||||
ICON_PRESET_REPORTER = "mdi:format-list-group"
|
||||
|
||||
|
||||
aux_ac_ns = cg.esphome_ns.namespace("aux_ac")
|
||||
@@ -205,8 +205,8 @@ CONFIG_SCHEMA = cv.All(
|
||||
}
|
||||
),
|
||||
|
||||
cv.Optional(CONF_STATE_REPORTER): text_sensor.text_sensor_schema(
|
||||
icon=ICON_STATE_REPORTER
|
||||
cv.Optional(CONF_PRESET_REPORTER): text_sensor.text_sensor_schema(
|
||||
icon=ICON_PRESET_REPORTER
|
||||
).extend(
|
||||
{
|
||||
cv.Optional(CONF_INTERNAL, default="true"): cv.boolean
|
||||
@@ -276,10 +276,10 @@ async def to_code(config):
|
||||
sens = await sensor.new_sensor(conf)
|
||||
cg.add(var.set_invertor_power_sensor(sens))
|
||||
|
||||
if CONF_STATE_REPORTER in config:
|
||||
conf = config[CONF_STATE_REPORTER]
|
||||
if CONF_PRESET_REPORTER in config:
|
||||
conf = config[CONF_PRESET_REPORTER]
|
||||
sens = await text_sensor.new_text_sensor(conf)
|
||||
cg.add(var.set_state_reporter_sensor(sens))
|
||||
cg.add(var.set_preset_reporter_sensor(sens))
|
||||
|
||||
cg.add(var.set_period(config[CONF_PERIOD].total_milliseconds))
|
||||
cg.add(var.set_show_action(config[CONF_SHOW_ACTION]))
|
||||
|
||||
@@ -96,9 +96,9 @@ climate:
|
||||
name: ${upper_devicename} Invertor Power
|
||||
id: ${devicename}_invertor_power
|
||||
internal: false
|
||||
state_reporter:
|
||||
name: ${upper_devicename} State Reporter
|
||||
id: ${devicename}_state_reporter
|
||||
preset_reporter:
|
||||
name: ${upper_devicename} Preset Reporter
|
||||
id: ${devicename}_preset_reporter
|
||||
internal: false
|
||||
visual:
|
||||
min_temperature: 16
|
||||
|
||||
Reference in New Issue
Block a user