Skip to content

Commit 32d0f0e

Browse files
Improve entity naming fallback (#3083)
* Better entity naming * Add check
1 parent 29d573e commit 32d0f0e

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

custom_components/battery_notes/coordinator.py

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
STATE_UNAVAILABLE,
1111
STATE_UNKNOWN,
1212
)
13+
from homeassistant.helpers import device_registry as dr
1314
from homeassistant.helpers import entity_registry as er
1415
from homeassistant.helpers.entity_registry import RegistryEntry
1516
from homeassistant.helpers.update_coordinator import (
@@ -103,11 +104,21 @@ def source_entity_name(self):
103104

104105
if self.source_entity_id:
105106
entity_registry = er.async_get(self.hass)
107+
device_registry = dr.async_get(self.hass)
106108
registry_entry = entity_registry.async_get(self.source_entity_id)
109+
device_entry = device_registry.async_get(self.device_id) if self.device_id else None
107110
assert(registry_entry)
108-
self._source_entity_name = (
109-
registry_entry.name or registry_entry.original_name
110-
)
111+
112+
if registry_entry.name is None and registry_entry.has_entity_name and device_entry:
113+
self._source_entity_name = (
114+
registry_entry.name or registry_entry.original_name or device_entry.name_by_user or device_entry.name or self.source_entity_id
115+
)
116+
else:
117+
self._source_entity_name = (
118+
registry_entry.name or registry_entry.original_name or self.source_entity_id
119+
)
120+
121+
assert(self._source_entity_name)
111122

112123
return self._source_entity_name
113124

0 commit comments

Comments
 (0)