Compare commits

..

2 Commits

Author SHA1 Message Date
112cf68542 Fix update method on coordinator 2022-03-04 19:34:00 +01:00
9f70dc220f Fix 'Device' object has no attribute 'beacon' 2022-03-04 19:24:47 +01:00
2 changed files with 10 additions and 2 deletions

View File

@@ -239,6 +239,10 @@ class GeoRideContext:
if tracker.is_siren_on: if tracker.is_siren_on:
if time.time() - SIREN_ACTIVATION_DELAY > tracker.siren_last_on_date: if time.time() - SIREN_ACTIVATION_DELAY > tracker.siren_last_on_date:
tracker.is_siren_on = False tracker.is_siren_on = False
async def refresh_trackers_beacon(self):
""" here we return last tracker by id"""
_LOGGER.debug("Do nothing, updated by another way")
async def force_refresh_trackers(self): async def force_refresh_trackers(self):
"""Used to refresh the tracker list""" """Used to refresh the tracker list"""
@@ -282,6 +286,8 @@ class GeoRideContext:
self._thread_started = True self._thread_started = True
await self.connect_socket() await self.connect_socket()
async def init_context(self, hass): async def init_context(self, hass):
"""Used to refresh the tracker list""" """Used to refresh the tracker list"""
_LOGGER.info("Init_context") _LOGGER.info("Init_context")
@@ -307,7 +313,9 @@ class GeoRideContext:
beacon_coordinator = DataUpdateCoordinator[Mapping[str, Any]]( beacon_coordinator = DataUpdateCoordinator[Mapping[str, Any]](
hass, hass,
_LOGGER, _LOGGER,
name= tracker_beacon.name name=tracker_beacon.name
update_method=self.refresh_trackers_beacon,
update_interval=update_interval
) )
coordoned_beacon = { coordoned_beacon = {
"tracker_beacon": DeviceBeacon(tracker_beacon), "tracker_beacon": DeviceBeacon(tracker_beacon),

View File

@@ -41,7 +41,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities): # pylint: d
tracker_beacon = coordoned_beacon['tracker_beacon'] tracker_beacon = coordoned_beacon['tracker_beacon']
coordinator = coordoned_beacon['coordinator'] coordinator = coordoned_beacon['coordinator']
entities.append(GeoRideBeaconUpdatedBinarySensorEntity(coordinator, tracker_beacon)) entities.append(GeoRideBeaconUpdatedBinarySensorEntity(coordinator, tracker_beacon))
hass.data[GEORIDE_DOMAIN]["devices"][tracker_device.beacon.beacon_id] = coordinator hass.data[GEORIDE_DOMAIN]["devices"][tracker_beacon.beacon.beacon_id] = coordinator
async_add_entities(entities, True) async_add_entities(entities, True)