bluetoothservice.py 文件源码

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

项目:bitpay-brick 作者: javgh 项目源码 文件源码
def _init_server(self):
        # find our Bluetooth address
        self.bt_addr = self._find_local_bdaddr()
        self.bt_addr_queue.put(None)

        # find a free port; PORT_ANY does not seem to work correctly
        port_available = False
        server_sock = BluetoothSocket(RFCOMM)
        for port in range(1, 10):
            try:
                server_sock.bind((self.bt_addr, port))
                port_available = True
                break
            except Exception as e:  # IOError does not seem to catch the right exception
                if e[0] == errno.EADDRINUSE:
                    pass
                else:
                    raise e

        if not port_available:
            print 'No free bluetooth port found'
            return None

        server_sock.listen(1)
        port = server_sock.getsockname()[1]

        advertise_service( server_sock, self.service_desc
                         , service_id = self.service_uuid
                         , service_classes = [ self.service_uuid ]
                         , profiles = [ ]
                         )

        return server_sock
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号