Non-standard
This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.
The BluetoothDevice interface of the Web Bluetooth API represents a Bluetooth device inside a particular script execution environment.
Interface
// Allocation authorities for Vendor IDs:
enum VendorIDSource {
"bluetooth",
"usb"
};
interface BluetoothDevice {
readonly attribute DOMString id;
readonly attribute DOMString? name;
readonly attribute BluetoothAdvertisingData adData;
readonly attribute unsigned long? deviceClass;
readonly attribute VendorIDSource? vendorIDSource;
readonly attribute unsigned long? vendorID;
readonly attribute unsigned long? productID;
readonly attribute unsigned long? productVersion;
readonly attribute boolean paired;
readonly attribute BluetoothGATTRemoteServer? gattServer;
readonly attribute UUID[] uuids;
Promise connectGATT();
};
BluetoothDevice implements EventTarget;
BluetoothDevice implements CharacteristicEventHandlers;
BluetoothDevice implements ServiceEventHandlers;
Properties
BluetoothDevice.idRead only- A
DOMStringthat uniquely identifies a device. BluetoothDevice.nameRead only- A
DOMStringthat provices a human-readable name for the device. BluetoothDevice.adDataRead only- An instance of
BluetoothAdvertisingDatacontaining the most recent advertising data received for the device. BluetoothDevice.deviceClassRead only- A number representing the Bluetooth devices "Class of Device".
BluetoothDevice.vendorIDSourceRead only- The Vendor ID Source field in the
pnp_idcharacteristic in thedevice_informationservice. BluetoothDevice.vendorIDRead only- The 16-bit Vendor ID field in the
pnp_idcharacteristic in thedevice_informationservice. BluetoothDevice.productIDRead only- The 16-bit Product ID field in the
pnp_idcharacteristic in thedevice_informationservice. BluetoothDevice.productVersionRead only- The 16-bit Product Version field in the
pnp_idcharacteristic in thedevice_informationservice. BluetoothDevice.pairedRead only- A
Booleanvalue indicating whether the device is paired with the system. BluetoothDevice.gattServerRead only- A reference to the device's GATT server or null if the device is disconnected.
BluetoothDevice.uuidsRead only- Lists the UUID's of GATT services provided by the device, that the current origin is allowed to access.
Methods
BluetoothDevice.connectGATT()- A
Promisethat resolves to an instance ofBluetoothGATTRemoteServer.
Specifications
| Specification | Status | Comment |
|---|---|---|
| Web Bluetooth The definition of 'BluetoothDevice' in that specification. |
Draft | Initial definition. |
Browser Compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| Basic support | 45.0 [1] |
| Feature | Android | Android Webview | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|---|
| Basic support | Not supported | Not supported | Not supported |
[1] Behind a flag. Chrome OS only.
Document Tags and Contributors
Tags:
Contributors to this page:
jpmedley,
chrisdavidmills
Last updated by:
jpmedley,