def refresh_devices(self):
for a, d in self.adapter.devices.items():
try:
if a in self.ble_devices:
if not d.proxy.Connected:
del self.ble_devices[a]
else:
continue
if not d.proxy.Connected:
continue
for driver in self.drivers:
driver_devices = driver.probe(d)
for i, v in driver_devices.items():
da = self.ble_devices.setdefault(a, {})
da.setdefault(i, CompositeBleDevice()).extend(v)
except GLib.Error as e:
epart = e.message.split(':')
if epart[0] != "GDBus.Error":
raise
if not epart[1].startswith("org.bluez.Error"):
raise
emsg = ':'.join(epart[1:])
log.error("{}: {}".format(d, emsg))
评论列表
文章目录