BluetoothCharacteristicProperties
Draft: This page is not complete.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The BluetoothCharacteristicProperties interface of the Web Bluetooth API provides the operations that are valid on the given BluetoothRemoteGATTCharacteristic.
This interface is returned by calling BluetoothRemoteGATTCharacteristic.properties.
Properties
-
authenticatedSignedWritesRead only -
Returns a
booleanthat istrueif signed writing to the characteristic value is permitted. -
broadcastRead only -
Returns a
booleanthat istrueif the broadcast of the characteristic value is permitted using the Server Characteristic Configuration Descriptor. -
indicateRead only -
Returns a
booleanthat istrueif indications of the characteristic value with acknowledgement is permitted. -
notifyRead only -
Returns a
booleanthat istrueif notifications of the characteristic value without acknowledgement is permitted. -
readRead only -
Returns a
booleanthat istrueif the reading of the characteristic value is permitted. -
reliableWriteRead only -
Returns a
booleanthat istrueif reliable writes to the characteristic is permitted. -
writableAuxiliariesRead only -
Returns a
booleanthat istrueif reliable writes to the characteristic descriptor is permitted. -
writeRead only -
Returns a
booleanthat istrueif the writing to the characteristic with response is permitted. -
writeWithoutResponseRead only -
Returns a
booleanthat istrueif the writing to the characteristic without response is permitted.
Examples
The following example shows how tell if a GATT characteristic supports value change notifications.
let device = await navigator.bluetooth.requestDevice({ filters: [{services: ['heart_rate']}] }); let gatt = await device.gatt.connect(); let service = await gatt.getPrimaryService('heart_rate'); let characteristic = await service.getCharacteristic('heart_rate_measurement'); if (characteristic.properties.notify) { characteristic.addEventListener('characteristicvaluechanged', function(event) { console.log(`Received heart rate measurement: ${event.target.value}`); } await characteristic.startNotifications(); }
Specifications
| Specification |
|---|
| Web Bluetooth # characteristicproperties-interface |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
BluetoothCharacteristicProperties |
56
Before Chrome 70, this feature was only supported in macOS. In Chrome 70, support was added for Windows 10. Linux support is not enabled by default.
56
In Linux and versions of Windows earlier than 10, this flag must be enabled.
|
79
Supported by default only on macOS and Windows 10. Linux support is not enabled by default.
79
In Linux and versions of Windows earlier than 10, this flag must be enabled.
|
No |
No |
43
Before Opera 57, this feature was only supported in macOS. In Opera 57, support was added for Windows 10. Linux support is not enabled by default.
43
In Linux and versions of Windows earlier than 10, this flag must be enabled.
|
No |
No
See bug 1100993.
|
56 |
No |
43 |
No |
6.0 |
authenticatedSignedWrites |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
broadcast |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
indicate |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
notify |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
read |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
reliableWrite |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
writableAuxiliaries |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
write |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
writeWithoutResponse |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
43 |
No |
6.0 |
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/BluetoothCharacteristicProperties