Skip to content

Commit e9285b5

Browse files
authored
Add coordinator device with correct status (#85)
Update last_seen for coordinator when we receive any incoming message.
1 parent a8d4f1d commit e9285b5

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

zigpy_xbee/zigbee/application.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
import asyncio
22
import binascii
33
import logging
4+
import time
45

56
import zigpy.application
6-
import zigpy.exceptions
77
import zigpy.device
8+
import zigpy.exceptions
89
import zigpy.quirks
910
import zigpy.types
1011
import zigpy.util
1112
from zigpy.zcl.clusters.general import Groups
1213
from zigpy.zdo.types import NodeDescriptor, ZDOCmd
1314

14-
from zigpy_xbee.types import EUI64, TXStatus, UNKNOWN_IEEE, UNKNOWN_NWK
15-
15+
from zigpy_xbee.types import EUI64, UNKNOWN_IEEE, UNKNOWN_NWK, TXStatus
1616

1717
# how long coordinator would hold message for an end device in 10ms units
1818
CONF_CYCLIC_SLEEP_PERIOD = 0x0300
@@ -97,6 +97,7 @@ async def startup(self, auto_form=False):
9797
LOGGER.debug("sending CE command: %s", exc)
9898

9999
dev = zigpy.device.Device(self, self.ieee, self.nwk)
100+
dev.status = zigpy.device.Status.ENDPOINTS_INIT
100101
dev.add_endpoint(XBEE_ENDPOINT_ID)
101102
self.listener_event("raw_device_initialized", dev)
102103
xbee_dev = XBeeCoordinator(self, self.ieee, self.nwk, dev)
@@ -283,6 +284,10 @@ def handle_rx(
283284
)
284285
self.handle_join(nwk, ieee, 0)
285286

287+
try:
288+
self.devices[self.ieee].last_seen = time.time()
289+
except KeyError:
290+
pass
286291
try:
287292
device = self.get_device(nwk=src_nwk)
288293
except KeyError:

0 commit comments

Comments
 (0)