From c8d2fc1e04e15b4e61b1c78adebb1ff23fff5b30 Mon Sep 17 00:00:00 2001 From: Aidan Timson Date: Sun, 25 Jul 2021 11:31:16 +0100 Subject: [PATCH] Fix System Bridge unique key for filesystem sensors (#53446) --- .../components/system_bridge/sensor.py | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/homeassistant/components/system_bridge/sensor.py b/homeassistant/components/system_bridge/sensor.py index 71bb7030a11..ea7fc628e76 100644 --- a/homeassistant/components/system_bridge/sensor.py +++ b/homeassistant/components/system_bridge/sensor.py @@ -223,25 +223,26 @@ class BridgeFilesystemSensor(BridgeSensor): self, coordinator: DataUpdateCoordinator, bridge: Bridge, key: str ) -> None: """Initialize System Bridge sensor.""" + uid_key = key.replace(":", "") super().__init__( coordinator, bridge, - f"filesystem_{key}", + f"filesystem_{uid_key}", f"{key} Space Used", "mdi:harddisk", None, PERCENTAGE, True, ) - self._key = key + self._fs_key = key @property def state(self) -> float: """Return the state of the sensor.""" bridge: Bridge = self.coordinator.data return ( - round(bridge.filesystem.fsSize[self._key]["use"], 2) - if bridge.filesystem.fsSize[self._key]["use"] is not None + round(bridge.filesystem.fsSize[self._fs_key]["use"], 2) + if bridge.filesystem.fsSize[self._fs_key]["use"] is not None else None ) @@ -250,12 +251,12 @@ class BridgeFilesystemSensor(BridgeSensor): """Return the state attributes of the entity.""" bridge: Bridge = self.coordinator.data return { - ATTR_AVAILABLE: bridge.filesystem.fsSize[self._key]["available"], - ATTR_FILESYSTEM: bridge.filesystem.fsSize[self._key]["fs"], - ATTR_MOUNT: bridge.filesystem.fsSize[self._key]["mount"], - ATTR_SIZE: bridge.filesystem.fsSize[self._key]["size"], - ATTR_TYPE: bridge.filesystem.fsSize[self._key]["type"], - ATTR_USED: bridge.filesystem.fsSize[self._key]["used"], + ATTR_AVAILABLE: bridge.filesystem.fsSize[self._fs_key]["available"], + ATTR_FILESYSTEM: bridge.filesystem.fsSize[self._fs_key]["fs"], + ATTR_MOUNT: bridge.filesystem.fsSize[self._fs_key]["mount"], + ATTR_SIZE: bridge.filesystem.fsSize[self._fs_key]["size"], + ATTR_TYPE: bridge.filesystem.fsSize[self._fs_key]["type"], + ATTR_USED: bridge.filesystem.fsSize[self._fs_key]["used"], }