扫描BLE设备
通过API扫描BLE设备,支持自定义扫描参数。
示例
1import asyncio
2import cassiablue
3
4
5async def main():
6 print("start scan")
7 ok, _ = await cassiablue.start_scan("active=1&filter_duplicates=1000")
8 print(type(ok), ok)
9 if not ok:
10 return
11
12 async for dev in cassiablue.scan_result():
13 print(type(dev), dev)
14 await asyncio.sleep_ms(5)
15
16
17asyncio.run(main())
API
- async cassiablue.start_scan(query: str | None = None) tuple[ok: bool, result: str]
开启扫描,用于扫描周围的BLE设备,目前支持同时开启1个
- Parameters:
query: 扫描参数,参考 Scan bluetooth devices
- 返回:
ok: 是否执行成功
result: 执行结果,扫描数据请参考
BLEScanResult
- async cassiablue.scan_result() BLEScanResult
获取扫描数据
- 返回:
class BLEScanResult
- class BLEScanResult
异步可迭代对象,用于流式接收 BLE 扫描数据。
- async __aiter__() BLEScanResult
返回自身,使实例可直接用于
async for
循环。