from textual.message import Message from bleak.backends.device import BLEDevice from bleak.backends.scanner import AdvertisementData class DeviceDiscovered(Message): def __init__(self, device: BLEDevice, adverisement_data: AdvertisementData) -> None: self.device = device self.adverisement_data = adverisement_data super().__init__() def has_services(self) -> bool: return len(self.advertising_data.service_uuids) > 0 def repr(self) -> str: return f"{self.device.address} - {self.device.name}"