B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic: Difference between revisions
< B2G | Bluetooth | WebBluetooth-v2
Jump to navigation
Jump to search
Line 8: | Line 8: | ||
[CheckPermissions="bluetooth"] | [CheckPermissions="bluetooth"] | ||
interface BluetoothGattCharacteristic | interface BluetoothGattCharacteristic | ||
{ | { | ||
// Write Type | // Write Type | ||
const unsigned short WRITE_TYPE_NO_RESPONSE = 0x0001; | const unsigned short WRITE_TYPE_NO_RESPONSE = 0x0001; | ||
Line 29: | Line 19: | ||
readonly attribute DOMString [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#uuid|uuid]]; | readonly attribute DOMString [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#uuid|uuid]]; | ||
readonly attribute unsigned short [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#instanceId|instanceId]]; | readonly attribute unsigned short [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#instanceId|instanceId]]; | ||
readonly attribute | readonly attribute CharacteristicProperties [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#properties_2|properties]]; | ||
attribute unsigned short [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#writeType|writeType]]; | attribute unsigned short [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#writeType|writeType]]; | ||
readonly attribute ArrayBuffer? [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#value|value]]; | readonly attribute ArrayBuffer? [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#value|value]]; | ||
Line 38: | Line 28: | ||
[NewObject, Throws] Promise<void> [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#stopNotification.28.29|stopNotifications()]]; | [NewObject, Throws] Promise<void> [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic#stopNotification.28.29|stopNotifications()]]; | ||
}; | }; | ||
=== CharacteristicProperties === | |||
dictionary CharacteristicProperties | |||
{ | |||
required boolean broadcast; | |||
required boolean read; | |||
required boolean writeNoResponse; | |||
required boolean write; | |||
required boolean notify; | |||
required boolean indicate; | |||
required boolean signedWrite; | |||
required boolean extendedProps; | |||
}; | |||
=== CharacteristicWriteType === | |||
dictionary CharacteristicWriteType | |||
{ | |||
required boolean noResponse; | |||
required boolean default; | |||
required boolean signed; | |||
}; | |||
== Properties == | == Properties == |
Revision as of 08:39, 18 September 2014
Overview
BluetoothGattCharacteristic represents the characteristic of services. BluetoothGattCharacteristic consists of the characteristic definition, a characteristic value along with properties and configurations which indicate how to access the value, and a list of descriptors which provides related information of this characteristic value.
Interfaces
BluetoothGattCharacteristic
[CheckPermissions="bluetooth"] interface BluetoothGattCharacteristic { // Write Type const unsigned short WRITE_TYPE_NO_RESPONSE = 0x0001; const unsigned short WRITE_TYPE_DEFAULT = 0x0002; const unsigned short WRITE_TYPE_SIGNED = 0x0004; readonly attribute BluetoothGattService service; [Cached, Pure] readonly attribute sequence<BluetoothGattDescriptor> descriptors; readonly attribute DOMString uuid; readonly attribute unsigned short instanceId; readonly attribute CharacteristicProperties properties; attribute unsigned short writeType; readonly attribute ArrayBuffer? value; [NewObject, Throws] Promise<ArrayBuffer> readValue(); [NewObject, Throws] Promise<ArrayBuffer> writeValue(ArrayBuffer value); [NewObject, Throws] Promise<void> startNotifications(); [NewObject, Throws] Promise<void> stopNotifications(); };
CharacteristicProperties
dictionary CharacteristicProperties {
required boolean broadcast; required boolean read; required boolean writeNoResponse; required boolean write; required boolean notify; required boolean indicate; required boolean signedWrite; required boolean extendedProps;
};
CharacteristicWriteType
dictionary CharacteristicWriteType {
required boolean noResponse; required boolean default; required boolean signed;
};
Properties
- BluetoothGattCharacteristic.service
- BluetoothGattCharacteristic.descriptors
- BluetoothGattCharacteristic.uuid
- BluetoothGattCharacteristic.instanceId
- BluetoothGattCharacteristic.properties
- BluetoothGattCharacteristic.writeType
- BluetoothGattCharacteristic.value
service
- Description
- The service which this characteristic belongs to.
- Value Type
- BluetoothGattService
- Default Value
- null pointer
descriptors
- Description
- A cached descriptor array of this characteristic.
- Value Type
- sequence<BluetoothGattDescriptor>
- Default Value
- Empty array (array with length = 0)
uuid
- Description
- This property stores the UUID of this characteristic.
- Value Type
- DOMString
- Default Value
- Empty string ("")
instanceId
- Description
- This property stores the instance id of this characteristic.
- Value Type
- unsigned short
- Default Value
- 0
properties
- Description
- A bit mask which describes how the characteristic value can be used.
- Value Type
- unsigned short
- Default Value
- 0
writeType
- Description
- The type of write operation.
- Value Type
- unsigned short
- Default Value
- 0
value
- Description
- The cached value of this characteristic.
- This value can be updated via readValue() method or via characteristic notification or indication from the remote device.
- Value Type
- ArrayBuffer or null
- Default Value
- null pointer
Methods
- BluetoothGattCharacteristic.readValue()
- BluetoothGattCharacteristic.writeValue(ArrayBuffer value)
- BluetoothGattCharacteristic.startNotifications()
- BluetoothGattCharacteristic.stopNotifications()
readValue()
- Description
- Read the characteristic value from the remote device. The cached value property will also be updated after retrieving the value.
- Return
- A Promise to indicate whether the operation is resolved or rejected. The Promise is resolved along with the value retrieved from the remote device.
writeValue(ArrayBuffer value)
- Description
- Write the characteristic value to the remote device.
- Parameter
- value
- Desired value to be written to the remote device.
- Return
- A Promise to indicate whether the operation is resolved or rejected. The Promise is resolved along with the characteristic value after this write operation.
startNotifications()
- Description
- Register notification/indication of this characteristic.
- Return
- A Promise to indicate whether the operation is resolved or rejected. The Promise is rejected if there is no Client Characteristic Configuration descriptor (CCCD) for this characteristic.
stopNotifications()
- Description
- Unregister notification/indication of this characteristic.
- Return
- A Promise to indicate whether the operation is resolved or rejected. The Promise is rejected if there is no Client Characteristic Configuration descriptor (CCCD) for this characteristic.