从 React PWA 中读取 BLE Beacons

Read BLE Beacons from react PWA

我正在为客户支持设计一个 PWA。 其中一项功能需要精确(5 米误差范围)定位用户的 phone。 我正在考虑使用信标,因为它们的范围和精度都符合我的需要。

问题是:如何从 react.js(非本机)PWA 读取信标?当然对于三角测量,这将需要读取多个信标。

抱歉,由于浏览器不支持绑定到原始蓝牙扫描,因此没有实用的方法来制作扫描蓝牙信标的 Web 应用程序。

Google Chrome 通过 JavaScript 通过 Web Bluetooth API 支持 BLE 交互。但是,它仅支持发现和连接到 GATT 服务,不支持查找信标所需的任意 BLE 扫描。这意味着您找不到 iBeacon、Eddystone 或 AltBeacon 兼容设备。

您或许能够发现可连接的自定义 BLE 设备,它通过可连接的 GATT 服务模拟信标行为。但即使您这样做,它也只能在 Chrome 上运行,而不适用于 Safari、Microsoft 或 Firefox 浏览器,因为这些平台不支持网络蓝牙。

即使您使用自定义信标在 Chrome 上运行,蓝牙信标也只能提供非常粗略的距离估计。三角测量只能在 3 米或更小的非常近的范围内正常工作。更实用的信标室内定位技术使用 RSSI 指纹识别而不是三角测量。再一次,即使 Google Chrome 使用 Web Bluetooth 也不支持执行此操作所需的任意扫描。