Пример #1
0
    async def connect_retrieved(self, **kwargs) -> bool:
        #get_paired_taps returns a list of BLEdevices
        #########
        #TODO#add multiple tap support now that i can use more than just one
        #########
        paired_taps = await get_paired_taps()
        #print(paired_taps)
        #print("MARKER")
        #self.address = paired_taps[0]
        #TODO find a way to connect to that bad boi
        self.name = paired_taps[0].name
        self.address = paired_taps[0].address
        self.details = paired_taps[0].details
        self.metadata = paired_taps[0].metadata
        #self.device = paired_taps[0].device
        logger.debug("Connecting to Tap device @ {}".format(self.address))
        #connect to the bluetooth device with id in index 0
        #Currently if there is no tap straps it will crash
        await self.connect()

        # Now get services
        # this function is in the bleak client
        await self.get_services()
        chars = self.services.get_characteristic(
            str(TapUUID.tap_mode_characteristic))
        print("NOTICE ME")
        print(type(chars))

        return True
Пример #2
0
    async def connect_retrieved(self, **kwargs) -> bool:
        paired_taps = get_paired_taps()
        self._peripheral = paired_taps[0]
        self._central_manager_delegate = central_manager_delegate
        logger.debug("Connecting to Tap device @ {}".format(self._peripheral))
        await self.connect()

        # Now get services
        await self.get_services()

        return True
Пример #3
0
    async def connect_retrieved(self, **kwargs) -> bool:
        paired_taps = get_paired_taps()

        logger.debug("Connecting to Tap device @ {}".format(self.address))

        await cbapp.central_manager_delegate.connect_(paired_taps[0])

        # Now get services
        await self.get_services()

        return True
Пример #4
0
    async def connect_retrieved(self, **kwargs) -> bool:
        ####@TODO: Auto connect is not supported now.
        #### discover() dont show aleady paired devices so use fixed MAC address for connect.
        # paired_taps = get_paired_taps()
        ## devices = await discover(filters={"UUIDs":[TapUUID.tap_service]})
        ## devices = list(filter(lambda x: not x.details["props"]["Paired"], devices))
        ## logger.debug("Found connected Taps @ {}".format(devices))
        ## paired_taps = devices
        ## self.address = paired_taps[0].details["props"]["Address"]

        logger.debug("Connecting to Tap device @ {}".format(self.address))

        await self.connect()

        # Now get services
        await self.get_services()

        return True
Пример #5
0
def get_paired_taps():
    paired_taps = central_manager_delegate.central_manager.retrieveConnectedPeripheralsWithServices_(
        [string2uuid(TapUUID.tap_service)])
    logger.debug("Found connected Taps @ {}".format(paired_taps))
    return paired_taps
Пример #6
0
 async def stop(self):
     if self.is_running == True:
         self.wd_task.cancel()
         self.is_running = False
         logger.debug("Input Mode Auto Refresh Stopped")
Пример #7
0
 async def start(self):
     if self.is_running == False:
         self.wd_task = asyncio.create_task(self.periodic())
         self.is_running = True
         logger.debug("Input Mode Auto Refresh Started")
Пример #8
0
 async def _refresh_input_mode(self):
     await self.set_input_mode(self.input_mode)
     logger.debug("Input Mode Refreshed: " + self.input_mode.get_name())