def on_device_disconnect(self, device): self.terminate_all_scripts(device['Address']) serial_services = [service for service in get_services(device) if service.group == 'serial'] if not serial_services: return ports = rfcomm_list() def flt(dev): if dev["dst"] == device['Address'] and dev["state"] == "connected": return dev["id"] active_ports = map(flt, ports) for port in active_ports: if not port: continue name = "/dev/rfcomm%d" % port try: dprint("Disconnecting", name) serial_services[0].disconnect(port) except Exception as e: dprint("Failed to disconnect", name) dprint(e)
def on_device_disconnect(self, device): self.terminate_all_scripts(device['Address']) serial_services = [service for service in get_services(device) if service.group == 'serial'] if not serial_services: return ports = rfcomm_list() def flt(dev): if dev["dst"] == device['Address'] and dev["state"] == "connected": return dev["id"] active_ports = map(flt, ports) for port in active_ports: if port is None: continue name = "/dev/rfcomm%d" % port try: logging.info("Disconnecting %s" % name) serial_services[0].disconnect(port) except Exception: logging.error("Failed to disconnect %s" % name, exc_info=True)
def on_device_disconnect(self, device): self.terminate_all_scripts(device['Address']) serial_services = [ service for service in get_services(device) if service.group == 'serial' ] if not serial_services: return ports = rfcomm_list() def flt(dev): if dev["dst"] == device['Address'] and dev["state"] == "connected": return dev["id"] active_ports = map(flt, ports) for port in active_ports: if port is None: continue name = "/dev/rfcomm%d" % port try: logging.info("Disconnecting %s" % name) serial_services[0].disconnect(port) except Exception: logging.error("Failed to disconnect %s" % name, exc_info=True)
def is_connected(self, device): for audio_service in [ service for service in get_services(device) if service.group == 'audio' ]: if audio_service.connected: return True return False
def on_device_disconnect(self, device): serial_services = [service for service in get_services(device) if service.group == 'serial'] if not serial_services: return active_ports = [rfcomm['id'] for rfcomm in rfcomm_list() if rfcomm['dst'] == device['Address']] for port in active_ports: name = "/dev/rfcomm%d" % port try: logging.info("Disconnecting %s" % name) serial_services[0].disconnect(port) except GLib.Error: logging.error("Failed to disconnect %s" % name, exc_info=True)
def on_device_disconnect(self, device): serial_services = [service for service in get_services(device) if isinstance(service, SerialService)] if not serial_services: return active_ports = [rfcomm['id'] for rfcomm in rfcomm_list() if rfcomm['dst'] == device['Address']] for port in active_ports: name = "/dev/rfcomm%d" % port try: logging.info(f"Disconnecting {name}") serial_services[0].disconnect(port) except GLib.Error: logging.error(f"Failed to disconnect {name}", exc_info=True)