- From: Giovanni Ortuno via GitHub <sysbot+gh@w3.org>
- Date: Thu, 10 Nov 2016 06:06:38 +0000
- To: public-web-bluetooth-log@w3.org
g-ortuno has just created a new issue for https://github.com/WebBluetoothCG/web-bluetooth: == Scanning algorithm misses devices if there is a filter with no services. == Consider the following devices: | Device Name | Advertised Services | |--------|---------------------| | D1 | A, B | | D2 | C | And the following request: ```js navigator.bluetooth.requestDevice({filters: [{services: 'A'}, {namePrefix: 'D2'}]}); ``` For this request, Step 2 of [request Bluetooth devices](https://webbluetoothcg.github.io/web-bluetooth/#scan-for-devices) would result in `requiredServiceUUIDs` being `{'A'}` which is then used in step 7 as an argument for [scan for devices](https://webbluetoothcg.github.io/web-bluetooth/#scan-for-devices). In Step 6.2 of [scan for devices](https://webbluetoothcg.github.io/web-bluetooth/#scan-for-devices) a device is added if the intersection between the device's advertised services and the services passed to the algorithm is not empty. Because this intersection is empty for `D2` the device would not be added to the result. We need to change the algorithm so that we don't pass `requiredServiceUUIDs` to [scan for devices](https://webbluetoothcg.github.io/web-bluetooth/#scan-for-devices) if there is a filter with no services. Please view or discuss this issue at https://github.com/WebBluetoothCG/web-bluetooth/issues/334 using your GitHub account
Received on Thursday, 10 November 2016 06:06:44 UTC