mirror of
https://github.com/home-assistant/core.git
synced 2025-07-19 19:27:45 +00:00
Add battery level sensor for ViCare zigbee devices (#137813)
* add battery level sensor * add uom * adapt test case
This commit is contained in:
parent
dafc331e85
commit
c8b4e62710
@ -883,6 +883,14 @@ GLOBAL_SENSORS: tuple[ViCareSensorEntityDescription, ...] = (
|
|||||||
entity_category=EntityCategory.DIAGNOSTIC,
|
entity_category=EntityCategory.DIAGNOSTIC,
|
||||||
value_getter=lambda api: api.getSeasonalPerformanceFactorHeating(),
|
value_getter=lambda api: api.getSeasonalPerformanceFactorHeating(),
|
||||||
),
|
),
|
||||||
|
ViCareSensorEntityDescription(
|
||||||
|
key="battery_level",
|
||||||
|
native_unit_of_measurement=PERCENTAGE,
|
||||||
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
|
device_class=SensorDeviceClass.BATTERY,
|
||||||
|
entity_category=EntityCategory.DIAGNOSTIC,
|
||||||
|
value_getter=lambda api: api.getBatteryLevel(),
|
||||||
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
CIRCUIT_SENSORS: tuple[ViCareSensorEntityDescription, ...] = (
|
CIRCUIT_SENSORS: tuple[ViCareSensorEntityDescription, ...] = (
|
||||||
|
@ -51,6 +51,24 @@
|
|||||||
"timestamp": "2024-03-01T04:40:59.911Z",
|
"timestamp": "2024-03-01T04:40:59.911Z",
|
||||||
"uri": "https://api.viessmann.com/iot/v1/features/installations/#######/gateways/################/devices/zigbee-d87a3bfffe5d844a/features/device.name"
|
"uri": "https://api.viessmann.com/iot/v1/features/installations/#######/gateways/################/devices/zigbee-d87a3bfffe5d844a/features/device.name"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"apiVersion": 1,
|
||||||
|
"commands": {},
|
||||||
|
"deviceId": "zigbee-d87a3bfffe5d844a",
|
||||||
|
"feature": "device.power.battery",
|
||||||
|
"gatewayId": "################",
|
||||||
|
"isEnabled": true,
|
||||||
|
"isReady": true,
|
||||||
|
"properties": {
|
||||||
|
"level": {
|
||||||
|
"type": "number",
|
||||||
|
"unit": "percent",
|
||||||
|
"value": 89
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"timestamp": "2025-02-03T02:30:52.279Z",
|
||||||
|
"uri": "https://api.viessmann.com/iot/v1/features/installations/#######/gateways/################/devices/zigbee-d87a3bfffe5d844a/features/device.power.battery"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"apiVersion": 1,
|
"apiVersion": 1,
|
||||||
"commands": {},
|
"commands": {},
|
||||||
|
@ -2585,6 +2585,57 @@
|
|||||||
'state': 'permanent',
|
'state': 'permanent',
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
|
# name: test_room_sensors[sensor.model0_battery-entry]
|
||||||
|
EntityRegistryEntrySnapshot({
|
||||||
|
'aliases': set({
|
||||||
|
}),
|
||||||
|
'area_id': None,
|
||||||
|
'capabilities': dict({
|
||||||
|
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||||
|
}),
|
||||||
|
'config_entry_id': <ANY>,
|
||||||
|
'device_class': None,
|
||||||
|
'device_id': <ANY>,
|
||||||
|
'disabled_by': None,
|
||||||
|
'domain': 'sensor',
|
||||||
|
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
|
||||||
|
'entity_id': 'sensor.model0_battery',
|
||||||
|
'has_entity_name': True,
|
||||||
|
'hidden_by': None,
|
||||||
|
'icon': None,
|
||||||
|
'id': <ANY>,
|
||||||
|
'labels': set({
|
||||||
|
}),
|
||||||
|
'name': None,
|
||||||
|
'options': dict({
|
||||||
|
}),
|
||||||
|
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
|
||||||
|
'original_icon': None,
|
||||||
|
'original_name': 'Battery',
|
||||||
|
'platform': 'vicare',
|
||||||
|
'previous_unique_id': None,
|
||||||
|
'supported_features': 0,
|
||||||
|
'translation_key': None,
|
||||||
|
'unique_id': 'gateway0_zigbee_d87a3bfffe5d844a-battery_level',
|
||||||
|
'unit_of_measurement': '%',
|
||||||
|
})
|
||||||
|
# ---
|
||||||
|
# name: test_room_sensors[sensor.model0_battery-state]
|
||||||
|
StateSnapshot({
|
||||||
|
'attributes': ReadOnlyDict({
|
||||||
|
'device_class': 'battery',
|
||||||
|
'friendly_name': 'model0 Battery',
|
||||||
|
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||||
|
'unit_of_measurement': '%',
|
||||||
|
}),
|
||||||
|
'context': <ANY>,
|
||||||
|
'entity_id': 'sensor.model0_battery',
|
||||||
|
'last_changed': <ANY>,
|
||||||
|
'last_reported': <ANY>,
|
||||||
|
'last_updated': <ANY>,
|
||||||
|
'state': '89',
|
||||||
|
})
|
||||||
|
# ---
|
||||||
# name: test_room_sensors[sensor.model0_humidity-entry]
|
# name: test_room_sensors[sensor.model0_humidity-entry]
|
||||||
EntityRegistryEntrySnapshot({
|
EntityRegistryEntrySnapshot({
|
||||||
'aliases': set({
|
'aliases': set({
|
||||||
|
Loading…
x
Reference in New Issue
Block a user