Polish tplink vacuum sensors (#137355)

This commit is contained in:
Teemu R. 2025-02-04 21:03:28 +01:00 committed by GitHub
parent 3984706459
commit 0e1ae89f12
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 39 additions and 21 deletions

View File

@ -135,13 +135,17 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
key="clean_area", key="clean_area",
device_class=SensorDeviceClass.AREA, device_class=SensorDeviceClass.AREA,
state_class=SensorStateClass.MEASUREMENT,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="clean_progress", key="clean_progress",
state_class=SensorStateClass.MEASUREMENT,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
key="last_clean_time", key="last_clean_time",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
state_class=SensorStateClass.MEASUREMENT,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
suggested_unit_of_measurement=UnitOfTime.MINUTES, suggested_unit_of_measurement=UnitOfTime.MINUTES,
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
@ -155,20 +159,26 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
device_class=SensorDeviceClass.TIMESTAMP, device_class=SensorDeviceClass.TIMESTAMP,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="total_clean_time", key="total_clean_time",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
state_class=SensorStateClass.TOTAL_INCREASING,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
suggested_unit_of_measurement=UnitOfTime.MINUTES, suggested_unit_of_measurement=UnitOfTime.MINUTES,
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="total_clean_area", key="total_clean_area",
device_class=SensorDeviceClass.AREA, device_class=SensorDeviceClass.AREA,
state_class=SensorStateClass.TOTAL_INCREASING,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
key="total_clean_count", key="total_clean_count",
state_class=SensorStateClass.TOTAL_INCREASING,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="main_brush_remaining", key="main_brush_remaining",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -176,6 +186,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="main_brush_used", key="main_brush_used",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -183,6 +194,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="side_brush_remaining", key="side_brush_remaining",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -190,6 +202,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="side_brush_used", key="side_brush_used",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -197,6 +210,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="filter_remaining", key="filter_remaining",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -204,6 +218,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="filter_used", key="filter_used",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -211,6 +226,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="sensor_remaining", key="sensor_remaining",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -218,6 +234,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="sensor_used", key="sensor_used",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -225,6 +242,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="charging_contacts_remaining", key="charging_contacts_remaining",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
@ -232,6 +250,7 @@ SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...] = (
convert_fn=_TOTAL_SECONDS_METHOD_CALLER, convert_fn=_TOTAL_SECONDS_METHOD_CALLER,
), ),
TPLinkSensorEntityDescription( TPLinkSensorEntityDescription(
entity_registry_enabled_default=False,
key="charging_contacts_used", key="charging_contacts_used",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,

View File

@ -243,7 +243,9 @@
'aliases': set({ 'aliases': set({
}), }),
'area_id': None, 'area_id': None,
'capabilities': None, 'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>, 'config_entry_id': <ANY>,
'device_class': None, 'device_class': None,
'device_id': <ANY>, 'device_id': <ANY>,
@ -279,6 +281,7 @@
'attributes': ReadOnlyDict({ 'attributes': ReadOnlyDict({
'device_class': 'area', 'device_class': 'area',
'friendly_name': 'my_device Cleaning area', 'friendly_name': 'my_device Cleaning area',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfArea.SQUARE_METERS: 'm²'>, 'unit_of_measurement': <UnitOfArea.SQUARE_METERS: 'm²'>,
}), }),
'context': <ANY>, 'context': <ANY>,
@ -294,11 +297,13 @@
'aliases': set({ 'aliases': set({
}), }),
'area_id': None, 'area_id': None,
'capabilities': None, 'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>, 'config_entry_id': <ANY>,
'device_class': None, 'device_class': None,
'device_id': <ANY>, 'device_id': <ANY>,
'disabled_by': None, 'disabled_by': <RegistryEntryDisabler.INTEGRATION: 'integration'>,
'domain': 'sensor', 'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>, 'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.my_device_cleaning_progress', 'entity_id': 'sensor.my_device_cleaning_progress',
@ -322,20 +327,6 @@
'unit_of_measurement': '%', 'unit_of_measurement': '%',
}) })
# --- # ---
# name: test_states[sensor.my_device_cleaning_progress-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'my_device Cleaning progress',
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.my_device_cleaning_progress',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '30',
})
# ---
# name: test_states[sensor.my_device_cleaning_time-entry] # name: test_states[sensor.my_device_cleaning_time-entry]
EntityRegistryEntrySnapshot({ EntityRegistryEntrySnapshot({
'aliases': set({ 'aliases': set({
@ -801,7 +792,9 @@
'aliases': set({ 'aliases': set({
}), }),
'area_id': None, 'area_id': None,
'capabilities': None, 'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>, 'config_entry_id': <ANY>,
'device_class': None, 'device_class': None,
'device_id': <ANY>, 'device_id': <ANY>,
@ -1426,7 +1419,9 @@
'aliases': set({ 'aliases': set({
}), }),
'area_id': None, 'area_id': None,
'capabilities': None, 'capabilities': dict({
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
}),
'config_entry_id': <ANY>, 'config_entry_id': <ANY>,
'device_class': None, 'device_class': None,
'device_id': <ANY>, 'device_id': <ANY>,
@ -1462,7 +1457,9 @@
'aliases': set({ 'aliases': set({
}), }),
'area_id': None, 'area_id': None,
'capabilities': None, 'capabilities': dict({
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
}),
'config_entry_id': <ANY>, 'config_entry_id': <ANY>,
'device_class': None, 'device_class': None,
'device_id': <ANY>, 'device_id': <ANY>,
@ -1495,7 +1492,9 @@
'aliases': set({ 'aliases': set({
}), }),
'area_id': None, 'area_id': None,
'capabilities': None, 'capabilities': dict({
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
}),
'config_entry_id': <ANY>, 'config_entry_id': <ANY>,
'device_class': None, 'device_class': None,
'device_id': <ANY>, 'device_id': <ANY>,