- From: Vincent Scheib via GitHub <sysbot+gh@w3.org>
- Date: Mon, 02 May 2016 17:19:26 +0000
- To: public-web-bluetooth-log@w3.org
scheib has just created a new issue for https://github.com/WebBluetoothCG/web-bluetooth: == Allow requestDevice for all devices == Initially the Web Bluetooth specification has required requestDevice options to filter the set of devices that will be displayed for the user to select from. One argument against allowing developers to request all devices be shown is that out of laziness they may often do so to the detriment of the user's experience. When devices do not advertise their services and do not have a reliable name that can be used as a filter then there is no way to select devices. One concrete example is this [Bluetooth Rename Tool](https://rawgit.com/scheib/webbluetoothcg-demos/bluetooth-rename/bluetooth-rename/index.html) I made recently (link will break eventually, maybe it will appear on [demos](https://github.com/WebBluetoothCG/demos) page eventually). This tool uses `generic_access`'s `gap.device_name`, however `generic_access` is prohibited from being advertized. It is unknown what device names may be already that the user wishes to edit. I believe other developers will eventually encounter this for devices that don't advertise services and have a multitude of names. Though this should be a small fraction of use. This demo currently works in Chrome due to a bug allowing a filter of `name: ""` to return all devices. That isn't the right way to solve this. I'm not clear on how it should be solved, but would like to communicate to developers that they should only ask for all devices when they really need to. Only half jokingly: ``` navigator.bluetooth.requestDevice({ filters: [{ 'listAllDevicesEvenThoughItIsAPoorUserExperience': true }], optionalServices: ['generic_access'] })) ``` Please view or discuss this issue at https://github.com/WebBluetoothCG/web-bluetooth/issues/234 using your GitHub account
Received on Monday, 2 May 2016 17:19:27 UTC