Re: [web-bluetooth] Treat sites as not bonded to their devices.

Yes, folks will need to write a custom `connect()` function that 
discovers the attributes they need on each connection. Something like:

```js
let device;
let characteristic;

function reconnect() {
  if (device.gatt.connected) return Promise.resolve();
  return device.gatt.connect()
      .then(server => server.getPrimaryService('battery_service'))
      .then(service => service.getCharacteristic('battery_level'))
      .then(char => { characteristic = char; });
}

function doSomething() {
  let dp = Promise.resolve();
  if (!device) {
    dp = navigator.bluetooth.requestDevice({
        filters: [{
          services: ['battery_service']
        }]
      })
      .then(d => device = d.gatt.connect());
  }
  return dp.then(() => reconnect())
    .then(_ => characteristic.readValue());
}
```

-- 
GitHub Notification of comment by jyasskin
Please view or discuss this issue at 
https://github.com/WebBluetoothCG/web-bluetooth/pull/273#issuecomment-239571741
 using your GitHub account

Received on Friday, 12 August 2016 22:09:35 UTC