This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The BluetoothRemoteGattCharacteristic
interface of the Web Bluetooth API represents a GATT Characteristic, which is a basic data element that provides further information about a peripheral’s service.
Interface
interface BluetoothRemoteGATTCharacteristic { readonly attribute BluetoothRemoteGATTService service; readonly attribute UUID uuid; readonly attribute BluetoothCharacteristicProperties properties; readonly attribute DataView? value; Promise<BluetoothRemoteGATTDescriptor> getDescriptor(BluetoothDescriptorUUID descriptor); Promise<sequence<BluetoothRemoteGATTDescriptor>> getDescriptors(optional BluetoothDescriptorUUID descriptor); Promise<DataView> readValue(); Promise<void> writeValue(BufferSource value); Promise<void> startNotifications(); Promise<void> stopNotifications(); }; BluetoothRemoteGATTCharacteristic implements EventTarget; BluetoothRemoteGATTCharacteristic implements CharacteristicEventHandlers;
Properties
BluetoothRemoteGATTCharacteristic.service
Read only- Returns the
BluetoothGATTService
this characteristic belongs to. BluetoothRemoteGATTCharacteristic.uuid
Read only- Returns a
DOMString
containing the UUID of the characteristic, for example'00002a37-0000-1000-8000-00805f9b34fb'
for the Heart Rate Measurement characteristic. BluetoothRemoteGATTCharacteristic.properties
Read only- Returns the properties of this characteristic.
BluetoothRemoteGATTCharacteristic.value
Read only- The currently cached characteristic value. This value gets updated when the value of the characteristic is read or updated via a notification or indication.
Methods
BluetoothRemoteGATTCharacteristic.getDescriptor()
- Returns a
Promise
that resolves to the firstBluetoothGATTDescriptor
for a given descriptor UUID. BluetoothRemoteGATTCharacteristic.getDescriptors()
- Returns a
Promise
that resolves to anArray
of allBluetoothGATTDescriptor
objects for a given descriptor UUID. BluetoothRemoteGATTCharacteristic.readValue()
- Returns a
Promise
that resolves to anArrayBuffer
holding a duplicate of thevalue
property if it is available and supported. Otherwise it throws an error. BluetoothRemoteGATTCharacteristic.writeValue()
- Sets the value property to the bytes contained in an
ArrayBuffer
and returns aPromise
. BluetoothRemoteGATTCharacteristic.startNotifications()
- Returns a
Promise
whennavigator.bluetooth
is added to the active notification context. BluetoothRemoteGATTCharacteristic.stopNotifications()
- Returns a
Promise
whennavigator.bluetooth
is removed from the active notification context.
Specifications
Specification | Status | Comment |
---|---|---|
Web Bluetooth The definition of 'BluetoothRemoteGATTCharacteristic' in that specification. |
Draft | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
BluetoothRemoteGATTCharacteristic | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
getDescriptor | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
getDescriptors | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
properties | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
readValue | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
service | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
startNotifications | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
stopNotifications | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
uuid | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
value | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
writeValue | Chrome
Full support
56
| Edge
Full support
≤79
| Firefox No support No | IE No support No | Opera
Full support
43
| Safari No support No | WebView Android No support No | Chrome Android Full support 56 | Firefox Android No support No | Opera Android Full support 43 | Safari iOS No support No | Samsung Internet Android Full support 6.0 |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- See implementation notes.
- See implementation notes.
- User must explicitly enable this feature.
- User must explicitly enable this feature.