ble_logger.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:jumper-ble-logger 作者: Jumperr-labs 项目源码 文件源码
def __init__(self, hci_device_number=0, logger=None, events_config=None):
        self._logger = logger or logging.getLogger(__name__)

        self._event_parser = EventParser(config=events_config, logger=self._logger)
        self._agent_events_sender = AgentEventsSender(logger=self._logger)

        self._hci_device_number = hci_device_number
        try:
            subprocess.check_call(['hciconfig', self.hci_device_name, 'down'])
        except subprocess.CalledProcessError:
            self._logger.error('Could not run hciconfig down command for HCI device')
            raise
        self._hci_socket = create_bt_socket_hci_channel_user(hci_device_number)
        self._logger.info('bind to %s complete', self.hci_device_name)

        self._pty_master, pty_slave = pty.openpty()
        self._pty_fd = os.fdopen(self._pty_master, 'rwb')
        hci_tty = os.ttyname(pty_slave)
        self._logger.debug('TTY slave for the virtual HCI: %s', hci_tty)
        try:
            subprocess.check_call(['hciattach', hci_tty, 'any'])
        except subprocess.CalledProcessError:
            self._logger.error('Could not run hciattach on PTY device')
            raise

        self._inputs = [self._pty_fd, self._hci_socket]

        self._pty_buffer = StringIO()  # Used as a seekable stream
        self._gatt_logger = GattLogger(self._logger)
        self._should_stop = False
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号