Skip to content

Commit ebf3311

Browse files
Tidy
1 parent 1a8320b commit ebf3311

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

custom_components/label_state/binary_sensor.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -115,31 +115,34 @@ async def async_added_to_hass(self) -> None:
115115

116116
ent_reg = er.async_get(self.hass)
117117
entries = er.async_entries_for_label(ent_reg, self._label)
118-
for entry in entries:
119-
for label in entry.labels:
118+
for entity_entry in entries:
119+
for label in entity_entry.labels:
120120
if label == self._label:
121121
LOGGER.debug(
122122
"Found label %s in entity %s",
123123
self._label,
124-
entry.entity_id,
124+
entity_entry.entity_id,
125125
)
126126

127127
# Replay current state of the labelled entitiy
128-
state = self.hass.states.get(entry.entity_id)
128+
state = self.hass.states.get(entity_entry.entity_id)
129129
state_event: Event[EventStateChangedData] = Event(
130130
"",
131131
{
132-
"entity_id": entry.entity_id,
132+
"entity_id": entity_entry.entity_id,
133133
"new_state": state,
134134
"old_state": None,
135135
},
136136
)
137137

138-
self._async_state_listener(state_event, update_state=False)
138+
if entity_entry and self._label in entity_entry.labels:
139+
self._async_state_listener(state_event, update_state=False)
139140

140141
self.async_on_remove(
141142
async_track_state_change_event(
142-
self.hass, entry.entity_id, self._async_state_listener
143+
self.hass,
144+
entity_entry.entity_id,
145+
self._async_state_listener,
143146
)
144147
)
145148

@@ -198,11 +201,10 @@ def _async_state_listener(
198201
new_state.state if new_state is not None else STATE_UNKNOWN
199202
)
200203

201-
if not update_state:
202-
return
203-
204204
self._calc_state()
205-
self.async_write_ha_state()
205+
206+
if update_state:
207+
self.async_write_ha_state()
206208

207209
@callback
208210
def _calc_state(self) -> None:

0 commit comments

Comments
 (0)