Fix mop attribute for unified mop and water box in Xiaomi Miio (#58990)
Co-authored-by: Teemu R. <tpr@iki.fi> Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
This commit is contained in:
parent
d126d88977
commit
7945facf1e
2 changed files with 23 additions and 2 deletions
|
@ -29,6 +29,7 @@ from .const import (
|
|||
MODELS_HUMIDIFIER_MJJSQ,
|
||||
MODELS_VACUUM,
|
||||
MODELS_VACUUM_WITH_MOP,
|
||||
MODELS_VACUUM_WITH_SEPARATE_MOP,
|
||||
)
|
||||
from .device import XiaomiCoordinatedMiioEntity
|
||||
|
||||
|
@ -77,7 +78,7 @@ FAN_ZA5_BINARY_SENSORS = (ATTR_POWERSUPPLY_ATTACHED,)
|
|||
|
||||
VACUUM_SENSORS = {
|
||||
ATTR_MOP_ATTACHED: XiaomiMiioBinarySensorDescription(
|
||||
key=ATTR_MOP_ATTACHED,
|
||||
key=ATTR_WATER_BOX_ATTACHED,
|
||||
name="Mop Attached",
|
||||
icon="mdi:square-rounded",
|
||||
parent_key=VacuumCoordinatorDataAttributes.status,
|
||||
|
@ -105,6 +106,19 @@ VACUUM_SENSORS = {
|
|||
),
|
||||
}
|
||||
|
||||
VACUUM_SENSORS_SEPARATE_MOP = {
|
||||
**VACUUM_SENSORS,
|
||||
ATTR_MOP_ATTACHED: XiaomiMiioBinarySensorDescription(
|
||||
key=ATTR_MOP_ATTACHED,
|
||||
name="Mop Attached",
|
||||
icon="mdi:square-rounded",
|
||||
parent_key=VacuumCoordinatorDataAttributes.status,
|
||||
entity_registry_enabled_default=True,
|
||||
device_class=DEVICE_CLASS_CONNECTIVITY,
|
||||
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
|
||||
),
|
||||
}
|
||||
|
||||
HUMIDIFIER_MIIO_BINARY_SENSORS = (ATTR_WATER_TANK_DETACHED,)
|
||||
HUMIDIFIER_MIOT_BINARY_SENSORS = (ATTR_WATER_TANK_DETACHED,)
|
||||
HUMIDIFIER_MJJSQ_BINARY_SENSORS = (ATTR_NO_WATER, ATTR_WATER_TANK_DETACHED)
|
||||
|
@ -118,8 +132,12 @@ def _setup_vacuum_sensors(hass, config_entry, async_add_entities):
|
|||
device = hass.data[DOMAIN][config_entry.entry_id].get(KEY_DEVICE)
|
||||
coordinator = hass.data[DOMAIN][config_entry.entry_id][KEY_COORDINATOR]
|
||||
entities = []
|
||||
sensors = VACUUM_SENSORS
|
||||
|
||||
for sensor, description in VACUUM_SENSORS.items():
|
||||
if config_entry.data[CONF_MODEL] in MODELS_VACUUM_WITH_SEPARATE_MOP:
|
||||
sensors = VACUUM_SENSORS_SEPARATE_MOP
|
||||
|
||||
for sensor, description in sensors.items():
|
||||
parent_key_data = getattr(coordinator.data, description.parent_key)
|
||||
if getattr(parent_key_data, description.key, None) is None:
|
||||
_LOGGER.debug(
|
||||
|
|
|
@ -225,6 +225,9 @@ MODELS_VACUUM_WITH_MOP = [
|
|||
ROCKROBO_S6_PURE,
|
||||
ROCKROBO_S7,
|
||||
]
|
||||
MODELS_VACUUM_WITH_SEPARATE_MOP = [
|
||||
ROCKROBO_S7,
|
||||
]
|
||||
|
||||
MODELS_AIR_MONITOR = [
|
||||
MODEL_AIRQUALITYMONITOR_V1,
|
||||
|
|
Loading…
Add table
Reference in a new issue