feat: refactor code to add more devices.

This commit is contained in:
sususweet
2025-09-24 20:56:04 +08:00
parent 51f0fcc8dc
commit b1bf76f292
8 changed files with 647 additions and 20 deletions

View File

@@ -60,7 +60,7 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
data_schema=vol.Schema({
vol.Required(CONF_ACCOUNT): str,
vol.Required(CONF_PASSWORD): str,
vol.Required(CONF_SERVER, default=1): vol.In(CONF_SERVERS)
vol.Required(CONF_SERVER, default=2): vol.In(CONF_SERVERS)
}),
errors=errors,
)

View File

@@ -15,7 +15,6 @@ DEVICE_MAPPING = {
"entities": {
Platform.CLIMATE: {
"thermostat": {
"name": "Thermostat",
"power": "power",
"hvac_modes": {
"off": {"power": "off"},
@@ -96,7 +95,6 @@ DEVICE_MAPPING = {
"entities": {
Platform.CLIMATE: {
"thermostat": {
"name": "Thermostat",
"power": "power",
"hvac_modes": {
"off": {"power": "off"},

View File

@@ -1,6 +1,6 @@
from homeassistant.const import Platform, UnitOfTemperature, PRECISION_HALVES
from homeassistant.const import Platform, UnitOfTemperature, PRECISION_HALVES, UnitOfTime, UnitOfArea, UnitOfVolume
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
# from homeassistant.components.binary_sensor import BinarySensorDeviceClass
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
from homeassistant.components.switch import SwitchDeviceClass
DEVICE_MAPPING = {
@@ -9,8 +9,151 @@ DEVICE_MAPPING = {
"queries": [{}],
"centralized": [],
"entities": {
Platform.SWITCH: {},
Platform.SENSOR: {}
Platform.SELECT: {
"fan_level": {
"options": {
"low": {"fan_level": "low"},
"medium": {"fan_level": "medium"},
"high": {"fan_level": "high"},
"auto": {"fan_level": "auto"}
}
},
"work_mode": {
"options": {
"none": {"work_mode": "none"},
"auto": {"work_mode": "auto"},
"spot": {"work_mode": "spot"},
"edge": {"work_mode": "edge"},
"single_room": {"work_mode": "single_room"},
"custom": {"work_mode": "custom"}
}
},
"work_status": {
"options": {
"idle": {"work_status": "idle"},
"cleaning": {"work_status": "cleaning"},
"returning": {"work_status": "returning"},
"docked": {"work_status": "docked"},
"on_base": {"work_status": "on_base"},
"charging": {"work_status": "charging"},
"error": {"work_status": "error"}
}
},
"move_direction": {
"options": {
"none": {"move_direction": "none"},
"forward": {"move_direction": "forward"},
"backward": {"move_direction": "backward"},
"left": {"move_direction": "left"},
"right": {"move_direction": "right"}
}
},
"query_type": {
"options": {
"work": {"query_type": "work"},
"status": {"query_type": "status"},
"battery": {"query_type": "battery"},
"error": {"query_type": "error"}
}
},
"sub_work_status": {
"options": {
"idle": {"sub_work_status": "idle"},
"cleaning": {"sub_work_status": "cleaning"},
"charging": {"sub_work_status": "charging"},
"charge_finish": {"sub_work_status": "charge_finish"},
"error": {"sub_work_status": "error"}
}
},
"water_level": {
"options": {
"low": {"water_level": "low"},
"normal": {"water_level": "normal"},
"high": {"water_level": "high"}
}
},
"mop_status": {
"options": {
"normal": {"mop_status": "normal"},
"lack_water": {"mop_status": "lack_water"},
"full_water": {"mop_status": "full_water"}
}
},
"error_type": {
"options": {
"no_error": {"error_type": "no_error"},
"can_fix": {"error_type": "can_fix"},
"need_help": {"error_type": "need_help"}
}
},
"control_type": {
"options": {
"none": {"control_type": "none"},
"app": {"control_type": "app"},
"remote": {"control_type": "remote"},
"auto": {"control_type": "auto"}
}
}
},
Platform.BINARY_SENSOR: {
"carpet_switch": {
"device_class": BinarySensorDeviceClass.RUNNING,
},
"have_reserve_task": {
"device_class": BinarySensorDeviceClass.RUNNING,
}
},
Platform.SENSOR: {
"dust_count": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"area": {
"device_class": SensorDeviceClass.AREA,
"unit_of_measurement": UnitOfArea.SQUARE_METERS,
"state_class": SensorStateClass.MEASUREMENT
},
"voice_level": {
"device_class": SensorDeviceClass.BATTERY,
"unit_of_measurement": "%",
"state_class": SensorStateClass.MEASUREMENT
},
"switch_status": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"water_station_status": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"work_time": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.MINUTES,
"state_class": SensorStateClass.MEASUREMENT
},
"battery_percent": {
"device_class": SensorDeviceClass.BATTERY,
"unit_of_measurement": "%",
"state_class": SensorStateClass.MEASUREMENT
},
"planner_status": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"sweep_then_mop_mode_progress": {
"device_class": SensorDeviceClass.BATTERY,
"unit_of_measurement": "%",
"state_class": SensorStateClass.MEASUREMENT
},
"error_desc": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"station_error_desc": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
}
}
}
}
}

View File

@@ -68,37 +68,31 @@ DEVICE_MAPPING = {
},
Platform.SENSOR: {
"bright": {
"name": "亮度",
"device_class": SensorDeviceClass.ILLUMINANCE,
"unit_of_measurement": "lx",
"state_class": SensorStateClass.MEASUREMENT
},
"temperature": {
"name": "温度",
"device_class": SensorDeviceClass.TEMPERATURE,
"unit_of_measurement": UnitOfTemperature.CELSIUS,
"state_class": SensorStateClass.MEASUREMENT
},
"softwater": {
"name": "软水",
"device_class": SensorDeviceClass.TEMPERATURE,
"unit_of_measurement": UnitOfTemperature.CELSIUS,
"state_class": SensorStateClass.MEASUREMENT
},
"left_time": {
"name": "剩余时间",
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.HOURS,
"state_class": SensorStateClass.MEASUREMENT
},
"air_set_hour": {
"name": "空调设置时间",
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.HOURS,
"state_class": SensorStateClass.MEASUREMENT
},
"air_left_hour": {
"name": "空调剩余时间",
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.HOURS,
"state_class": SensorStateClass.MEASUREMENT

View File

@@ -1,6 +1,6 @@
from homeassistant.const import Platform, UnitOfTemperature, PRECISION_HALVES
from homeassistant.const import Platform, UnitOfTemperature, PRECISION_HALVES, UnitOfTime, UnitOfElectricPotential, UnitOfVolume, UnitOfMass
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
# from homeassistant.components.binary_sensor import BinarySensorDeviceClass
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
from homeassistant.components.switch import SwitchDeviceClass
DEVICE_MAPPING = {
@@ -9,8 +9,227 @@ DEVICE_MAPPING = {
"queries": [{}],
"centralized": [],
"entities": {
Platform.SWITCH: {},
Platform.SENSOR: {}
Platform.SWITCH: {
"holiday_mode": {
"device_class": SwitchDeviceClass.SWITCH,
},
"water_way": {
"device_class": SwitchDeviceClass.SWITCH,
},
"soften": {
"device_class": SwitchDeviceClass.SWITCH,
},
"leak_water_protection": {
"device_class": SwitchDeviceClass.SWITCH,
},
"cl_sterilization": {
"device_class": SwitchDeviceClass.SWITCH,
},
"micro_leak": {
"device_class": SwitchDeviceClass.SWITCH,
},
"low_salt": {
"device_class": SwitchDeviceClass.SWITCH,
},
"no_salt": {
"device_class": SwitchDeviceClass.SWITCH,
},
"low_battery": {
"device_class": SwitchDeviceClass.SWITCH,
},
"salt_level_sensor_error": {
"device_class": SwitchDeviceClass.SWITCH,
},
"flowmeter_error": {
"device_class": SwitchDeviceClass.SWITCH,
},
"leak_water": {
"device_class": SwitchDeviceClass.SWITCH,
},
"micro_leak_protection": {
"device_class": SwitchDeviceClass.SWITCH,
},
"maintenance_reminder_switch": {
"device_class": SwitchDeviceClass.SWITCH,
},
"rsj_stand_by": {
"device_class": SwitchDeviceClass.SWITCH,
},
"regeneration": {
"device_class": SwitchDeviceClass.SWITCH,
},
"pre_regeneration": {
"device_class": SwitchDeviceClass.SWITCH,
}
},
Platform.BINARY_SENSOR: {
"maintenance_remind": {
"device_class": BinarySensorDeviceClass.PROBLEM,
},
"chlorine_sterilization_error": {
"device_class": BinarySensorDeviceClass.PROBLEM,
},
"rtc_error": {
"device_class": BinarySensorDeviceClass.PROBLEM,
}
},
Platform.SENSOR: {
"micro_leak_protection_value": {
"device_class": SensorDeviceClass.PRESSURE,
"state_class": SensorStateClass.MEASUREMENT
},
"regeneration_current_stages": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"water_hardness": {
"device_class": SensorDeviceClass.WATER,
"state_class": SensorStateClass.MEASUREMENT
},
"timing_regeneration_hour": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.HOURS,
"state_class": SensorStateClass.MEASUREMENT
},
"real_time_setting_hour": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.HOURS,
"state_class": SensorStateClass.MEASUREMENT
},
"timing_regeneration_min": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.MINUTES,
"state_class": SensorStateClass.MEASUREMENT
},
"regeneration_left_seconds": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.SECONDS,
"state_class": SensorStateClass.MEASUREMENT
},
"maintenance_reminder_setting": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"mixed_water_gear": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"use_days": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.DAYS,
"state_class": SensorStateClass.MEASUREMENT
},
"days_since_last_regeneration": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.DAYS,
"state_class": SensorStateClass.MEASUREMENT
},
"velocity": {
"device_class": SensorDeviceClass.SPEED,
"state_class": SensorStateClass.MEASUREMENT
},
"supply_voltage": {
"device_class": SensorDeviceClass.VOLTAGE,
"unit_of_measurement": UnitOfElectricPotential.VOLT,
"state_class": SensorStateClass.MEASUREMENT
},
"left_salt": {
"device_class": SensorDeviceClass.WEIGHT,
"unit_of_measurement": UnitOfMass.KILOGRAMS,
"state_class": SensorStateClass.MEASUREMENT
},
"pre_regeneration_days": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.DAYS,
"state_class": SensorStateClass.MEASUREMENT
},
"flushing_days": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.DAYS,
"state_class": SensorStateClass.MEASUREMENT
},
"salt_setting": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"regeneration_count": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"battery_voltage": {
"device_class": SensorDeviceClass.VOLTAGE,
"unit_of_measurement": UnitOfElectricPotential.VOLT,
"state_class": SensorStateClass.MEASUREMENT
},
"error": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"days_since_last_two_regeneration": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.DAYS,
"state_class": SensorStateClass.MEASUREMENT
},
"remind_maintenance_days": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.DAYS,
"state_class": SensorStateClass.MEASUREMENT
},
"real_date_setting_year": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"real_date_setting_month": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"real_date_setting_day": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"category": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"real_time_setting_min": {
"device_class": SensorDeviceClass.DURATION,
"unit_of_measurement": UnitOfTime.MINUTES,
"state_class": SensorStateClass.MEASUREMENT
},
"regeneration_stages": {
"device_class": SensorDeviceClass.ENUM,
"state_class": SensorStateClass.MEASUREMENT
},
"soft_available_big": {
"device_class": SensorDeviceClass.VOLUME,
"unit_of_measurement": UnitOfVolume.LITERS,
"state_class": SensorStateClass.MEASUREMENT
},
"water_consumption_big": {
"device_class": SensorDeviceClass.VOLUME,
"unit_of_measurement": UnitOfVolume.LITERS,
"state_class": SensorStateClass.MEASUREMENT
},
"water_consumption_today": {
"device_class": SensorDeviceClass.VOLUME,
"unit_of_measurement": UnitOfVolume.LITERS,
"state_class": SensorStateClass.MEASUREMENT
},
"water_consumption_average": {
"device_class": SensorDeviceClass.VOLUME,
"unit_of_measurement": UnitOfVolume.LITERS,
"state_class": SensorStateClass.MEASUREMENT
},
"salt_alarm_threshold": {
"device_class": SensorDeviceClass.WEIGHT,
"unit_of_measurement": UnitOfMass.KILOGRAMS,
"state_class": SensorStateClass.MEASUREMENT
},
"leak_water_protection_value": {
"device_class": SensorDeviceClass.PRESSURE,
"state_class": SensorStateClass.MEASUREMENT
}
}
}
}
}

View File

@@ -73,10 +73,11 @@ class MideaEntity(CoordinatorEntity[MideaDataUpdateCoordinator], Entity):
self._attr_device_class = self._config.get("device_class")
self._attr_state_class = self._config.get("state_class")
self._attr_icon = self._config.get("icon")
# Prefer translated name; allow explicit override via config.name
self._attr_translation_key = self._config.get("translation_key") or self._entity_key
name_cfg = self._config.get("name")
if name_cfg is None:
name_cfg = self._entity_key.replace("_", " ").title()
self._attr_name = f"{name_cfg}"
if name_cfg is not None:
self._attr_name = f"{name_cfg}"
self.entity_id = self._attr_unique_id
# Register device updates for HA state refresh
try:

View File

@@ -102,5 +102,141 @@
}
}
}
},
"entity": {
"select": {
"work_status": {
"name": "Work Status"
},
"fan_level": { "name": "Fan Level" },
"work_mode": { "name": "Work Mode" },
"move_direction": { "name": "Move Direction" },
"query_type": { "name": "Query Type" },
"sub_work_status": { "name": "Sub Work Status" },
"water_level": { "name": "Water Level" },
"mop_status": { "name": "Mop Status" },
"error_type": { "name": "Error Type" },
"control_type": { "name": "Control Type" },
"mode": { "name": "Mode" },
"rice_type": { "name": "Rice Type" }
},
"sensor": {
"bright": { "name": "Brightness" },
"temperature": { "name": "Temperature" },
"softwater": { "name": "Soft Water Temp" },
"left_time": { "name": "Remaining Time" },
"air_set_hour": { "name": "AC Set Time" },
"air_left_hour": { "name": "AC Remaining Time" },
"micro_leak_protection_value": { "name": "Micro Leak Protection Value" },
"regeneration_current_stages": { "name": "Regeneration Current Stages" },
"water_hardness": { "name": "Water Hardness" },
"timing_regeneration_hour": { "name": "Timing Regeneration Hour" },
"real_time_setting_hour": { "name": "Real Time Setting Hour" },
"timing_regeneration_min": { "name": "Timing Regeneration Min" },
"regeneration_left_seconds": { "name": "Regeneration Left Seconds" },
"maintenance_reminder_setting": { "name": "Maintenance Reminder Setting" },
"mixed_water_gear": { "name": "Mixed Water Gear" },
"use_days": { "name": "Use Days" },
"days_since_last_regeneration": { "name": "Days Since Last Regeneration" },
"velocity": { "name": "Velocity" },
"supply_voltage": { "name": "Supply Voltage" },
"left_salt": { "name": "Left Salt" },
"pre_regeneration_days": { "name": "Pre Regeneration Days" },
"flushing_days": { "name": "Flushing Days" },
"salt_setting": { "name": "Salt Setting" },
"e_version": { "name": "E Version" },
"regeneration_count": { "name": "Regeneration Count" },
"battery_voltage": { "name": "Battery Voltage" },
"error": { "name": "Error" },
"days_since_last_two_regeneration": { "name": "Days Since Last Two Regeneration" },
"remind_maintenance_days": { "name": "Remind Maintenance Days" },
"real_date_setting_year": { "name": "Real Date Setting Year" },
"real_date_setting_month": { "name": "Real Date Setting Month" },
"real_date_setting_day": { "name": "Real Date Setting Day" },
"category": { "name": "Category" },
"real_time_setting_min": { "name": "Real Time Setting Min" },
"regeneration_stages": { "name": "Regeneration Stages" },
"v_version": { "name": "V Version" },
"k_version": { "name": "K Version" },
"w_version": { "name": "W Version" },
"soft_available_big": { "name": "Soft Available Big" },
"water_consumption_big": { "name": "Water Consumption Big" },
"water_consumption_today": { "name": "Water Consumption Today" },
"water_consumption_average": { "name": "Water Consumption Average" },
"salt_alarm_threshold": { "name": "Salt Alarm Threshold" },
"leak_water_protection_value": { "name": "Leak Water Protection Value" },
"sn8": { "name": "SN8" },
"version": { "name": "Version" },
"dust_count": { "name": "Dust Count" },
"area": { "name": "Area" },
"voice_level": { "name": "Voice Level" },
"switch_status": { "name": "Switch Status" },
"water_station_status": { "name": "Water Station Status" },
"work_time": { "name": "Work Time" },
"battery_percent": { "name": "Battery Percent" },
"planner_status": { "name": "Planner Status" },
"sweep_then_mop_mode_progress": { "name": "Sweep Then Mop Mode Progress" },
"error_desc": { "name": "Error Description" },
"station_error_desc": { "name": "Station Error Description" },
"work_stage": { "name": "Work Stage" },
"voltage": { "name": "Voltage" },
"top_temperature": { "name": "Top Temperature" },
"bottom_temperature": { "name": "Bottom Temperature" },
"remaining_time": { "name": "Remaining Time" },
"warming_time": { "name": "Warming Time" },
"delay_time": { "name": "Delay Time" },
"indoor_temperature": { "name": "Indoor Temperature" },
"outdoor_temperature": { "name": "Outdoor Temperature" }
},
"binary_sensor": {
"air_status": { "name": "Air Running" },
"water_lack": { "name": "Water Lack" },
"softwater_lack": { "name": "Soft Water Lack" },
"wash_stage": { "name": "Washing Stage" },
"bright_lack": { "name": "Brightness Lack" },
"diy_flag": { "name": "DIY Flag" },
"diy_main_wash": { "name": "DIY Main Wash" },
"diy_piao_wash": { "name": "DIY Rinse" },
"diy_times": { "name": "DIY Times" },
"maintenance_remind": { "name": "Maintenance Remind" },
"chlorine_sterilization_error": { "name": "Chlorine Sterilization Error" },
"rtc_error": { "name": "RTC Error" },
"carpet_switch": { "name": "Carpet Switch" },
"have_reserve_task": { "name": "Have Reserve Task" },
"top_hot": { "name": "Top Hot" },
"flank_hot": { "name": "Flank Hot" },
"bottom_hot": { "name": "Bottom Hot" }
},
"climate": {
"thermostat": { "name": "Thermostat" }
},
"switch": {
"airswitch": { "name": "AC Switch" },
"waterswitch": { "name": "Water Switch" },
"uvswitch": { "name": "UV Switch" },
"doorswitch": { "name": "Door Switch" },
"dryswitch": { "name": "Dry Switch" },
"dry_step_switch": { "name": "Dry Step Switch" },
"holiday_mode": { "name": "Holiday Mode" },
"water_way": { "name": "Water Way" },
"soften": { "name": "Soften" },
"leak_water_protection": { "name": "Leak Water Protection" },
"cl_sterilization": { "name": "Chlorine Sterilization" },
"micro_leak": { "name": "Micro Leak" },
"low_salt": { "name": "Low Salt" },
"no_salt": { "name": "No Salt" },
"low_battery": { "name": "Low Battery" },
"salt_level_sensor_error": { "name": "Salt Level Sensor Error" },
"flowmeter_error": { "name": "Flowmeter Error" },
"leak_water": { "name": "Leak Water" },
"micro_leak_protection": { "name": "Micro Leak Protection" },
"maintenance_reminder_switch": { "name": "Maintenance Reminder Switch" },
"rsj_stand_by": { "name": "RSJ Stand By" },
"regeneration": { "name": "Regeneration" },
"pre_regeneration": { "name": "Pre Regeneration" },
"dry": { "name": "Dry" },
"prevent_straight_wind": { "name": "Prevent Straight Wind" },
"aux_heat": { "name": "Aux Heat" }
}
}
}

View File

@@ -102,5 +102,141 @@
}
}
}
},
"entity": {
"select": {
"work_status": {
"name": "工作状态"
},
"fan_level": { "name": "风扇档位" },
"work_mode": { "name": "工作模式" },
"move_direction": { "name": "移动方向" },
"query_type": { "name": "查询类型" },
"sub_work_status": { "name": "子工作状态" },
"water_level": { "name": "水位" },
"mop_status": { "name": "拖地状态" },
"error_type": { "name": "错误类型" },
"control_type": { "name": "控制类型" },
"mode": { "name": "模式" },
"rice_type": { "name": "米种类型" }
},
"sensor": {
"bright": { "name": "亮度" },
"temperature": { "name": "温度" },
"softwater": { "name": "软水温度" },
"left_time": { "name": "剩余时间" },
"air_set_hour": { "name": "空调设置时间" },
"air_left_hour": { "name": "空调剩余时间" },
"micro_leak_protection_value": { "name": "微漏保护值" },
"regeneration_current_stages": { "name": "再生当前阶段" },
"water_hardness": { "name": "水质硬度" },
"timing_regeneration_hour": { "name": "定时再生小时" },
"real_time_setting_hour": { "name": "实时设置小时" },
"timing_regeneration_min": { "name": "定时再生分钟" },
"regeneration_left_seconds": { "name": "再生剩余秒数" },
"maintenance_reminder_setting": { "name": "维护提醒设置" },
"mixed_water_gear": { "name": "混合水档位" },
"use_days": { "name": "使用天数" },
"days_since_last_regeneration": { "name": "距离上次再生天数" },
"velocity": { "name": "流速" },
"supply_voltage": { "name": "供电电压" },
"left_salt": { "name": "剩余盐量" },
"pre_regeneration_days": { "name": "预再生天数" },
"flushing_days": { "name": "冲洗天数" },
"salt_setting": { "name": "盐设置" },
"e_version": { "name": "E 版本" },
"regeneration_count": { "name": "再生次数" },
"battery_voltage": { "name": "电池电压" },
"error": { "name": "错误" },
"days_since_last_two_regeneration": { "name": "距离上次两次再生天数" },
"remind_maintenance_days": { "name": "提醒维护天数" },
"real_date_setting_year": { "name": "实际日期设置年" },
"real_date_setting_month": { "name": "实际日期设置月" },
"real_date_setting_day": { "name": "实际日期设置日" },
"category": { "name": "类别" },
"real_time_setting_min": { "name": "实时设置分钟" },
"regeneration_stages": { "name": "再生阶段" },
"v_version": { "name": "V 版本" },
"k_version": { "name": "K 版本" },
"w_version": { "name": "W 版本" },
"soft_available_big": { "name": "软水可用量" },
"water_consumption_big": { "name": "用水量" },
"water_consumption_today": { "name": "今日用水量" },
"water_consumption_average": { "name": "平均用水量" },
"salt_alarm_threshold": { "name": "盐报警阈值" },
"leak_water_protection_value": { "name": "漏水保护值" },
"sn8": { "name": "SN8" },
"version": { "name": "版本" },
"dust_count": { "name": "灰尘计数" },
"area": { "name": "面积" },
"voice_level": { "name": "语音音量" },
"switch_status": { "name": "开关状态" },
"water_station_status": { "name": "水站状态" },
"work_time": { "name": "工作时间" },
"battery_percent": { "name": "电池百分比" },
"planner_status": { "name": "规划器状态" },
"sweep_then_mop_mode_progress": { "name": "先扫后拖模式进度" },
"error_desc": { "name": "错误描述" },
"station_error_desc": { "name": "基站错误描述" },
"work_stage": { "name": "工作阶段" },
"voltage": { "name": "电压" },
"top_temperature": { "name": "上盖温度" },
"bottom_temperature": { "name": "底部温度" },
"remaining_time": { "name": "剩余时间" },
"warming_time": { "name": "保温时间" },
"delay_time": { "name": "预约时间" },
"indoor_temperature": { "name": "室内温度" },
"outdoor_temperature": { "name": "室外温度" }
},
"binary_sensor": {
"air_status": { "name": "空气运行" },
"water_lack": { "name": "缺水" },
"softwater_lack": { "name": "软水不足" },
"wash_stage": { "name": "洗涤阶段" },
"bright_lack": { "name": "亮光不足" },
"diy_flag": { "name": "自定义标记" },
"diy_main_wash": { "name": "自定义主洗" },
"diy_piao_wash": { "name": "自定义漂洗" },
"diy_times": { "name": "自定义次数" },
"maintenance_remind": { "name": "维护提醒" },
"chlorine_sterilization_error": { "name": "氯气杀菌错误" },
"rtc_error": { "name": "RTC 错误" },
"carpet_switch": { "name": "地毯开关" },
"have_reserve_task": { "name": "有预约任务" },
"top_hot": { "name": "上盖加热" },
"flank_hot": { "name": "侧壁加热" },
"bottom_hot": { "name": "底部加热" }
},
"climate": {
"thermostat": { "name": "温控器" }
},
"switch": {
"airswitch": { "name": "空调开关" },
"waterswitch": { "name": "热水开关" },
"uvswitch": { "name": "UV 开关" },
"doorswitch": { "name": "门锁开关" },
"dryswitch": { "name": "烘干开关" },
"dry_step_switch": { "name": "烘干分步开关" },
"holiday_mode": { "name": "假日模式" },
"water_way": { "name": "水路" },
"soften": { "name": "软化" },
"leak_water_protection": { "name": "漏水保护" },
"cl_sterilization": { "name": "氯气杀菌" },
"micro_leak": { "name": "微漏" },
"low_salt": { "name": "低盐" },
"no_salt": { "name": "无盐" },
"low_battery": { "name": "低电量" },
"salt_level_sensor_error": { "name": "盐位传感器错误" },
"flowmeter_error": { "name": "流量计错误" },
"leak_water": { "name": "漏水" },
"micro_leak_protection": { "name": "微漏保护" },
"maintenance_reminder_switch": { "name": "维护提醒开关" },
"rsj_stand_by": { "name": "RSJ 待机" },
"regeneration": { "name": "再生" },
"pre_regeneration": { "name": "预再生" },
"dry": { "name": "干燥" },
"prevent_straight_wind": { "name": "防直吹" },
"aux_heat": { "name": "电辅热" }
}
}
}