| Index: third_party/WebKit/public/platform/modules/bluetooth/web_bluetooth.mojom
|
| diff --git a/third_party/WebKit/public/platform/modules/bluetooth/web_bluetooth.mojom b/third_party/WebKit/public/platform/modules/bluetooth/web_bluetooth.mojom
|
| index 3b2fa0a69bf2a3479449a6317d4ff12156d5f90a..0c8036caea29677ee3a03ec53531239860ca8611 100644
|
| --- a/third_party/WebKit/public/platform/modules/bluetooth/web_bluetooth.mojom
|
| +++ b/third_party/WebKit/public/platform/modules/bluetooth/web_bluetooth.mojom
|
| @@ -20,6 +20,7 @@ enum WebBluetoothResult {
|
| // InvalidStateError:
|
| SERVICE_NO_LONGER_EXISTS,
|
| CHARACTERISTIC_NO_LONGER_EXISTS,
|
| + DESCRIPTOR_NO_LONGER_EXISTS,
|
| // NetworkError:
|
| CONNECT_ALREADY_IN_PROGRESS,
|
| CONNECT_ATTRIBUTE_LENGTH_INVALID,
|
| @@ -51,6 +52,8 @@ enum WebBluetoothResult {
|
| NO_SERVICES_FOUND,
|
| CHARACTERISTIC_NOT_FOUND,
|
| NO_CHARACTERISTICS_FOUND,
|
| + DESCRIPTOR_NOT_FOUND,
|
| + NO_DESCRIPTORS_FOUND,
|
| WEB_BLUETOOTH_NOT_SUPPORTED,
|
| BLUETOOTH_LOW_ENERGY_NOT_AVAILABLE,
|
| // NotSupportedError:
|
| @@ -61,6 +64,7 @@ enum WebBluetoothResult {
|
| GATT_UNTRANSLATED_ERROR_CODE,
|
| // SecurityError:
|
| GATT_NOT_AUTHORIZED,
|
| + BLACKLISTED_DESCRIPTOR_UUID,
|
| BLACKLISTED_CHARACTERISTIC_UUID,
|
| BLACKLISTED_READ,
|
| BLACKLISTED_WRITE,
|
| @@ -109,6 +113,11 @@ struct WebBluetoothRemoteGATTCharacteristic {
|
| uint32 properties;
|
| };
|
|
|
| +struct WebBluetoothRemoteGATTDescriptor {
|
| + string instance_id;
|
| + string uuid;
|
| +};
|
| +
|
| // Web Bluetooth Interface that Blink can use to perform
|
| // Bluetooth GATT Operations on Bluetooth Devices.
|
| interface WebBluetoothService {
|
| @@ -178,6 +187,34 @@ interface WebBluetoothService {
|
| // |characteristic_instance_id|.
|
| RemoteCharacteristicStopNotifications(
|
| string characteristic_instance_id) => ();
|
| +
|
| + // Returns the Descriptors of a GATT Characteristics with |service_instance_id|.
|
| + // If |quantity| == WebBluetoothGATTQueryQuantity::SINGLE, only one
|
| + // descriptor will be returned.
|
| + RemoteCharacteristicGetDescriptors(
|
| + string characteristics_instance_id,
|
| + WebBluetoothGATTQueryQuantity quantity,
|
| + bluetooth.mojom.UUID? characteristics_uuid) => (
|
| + WebBluetoothResult result,
|
| + array<WebBluetoothRemoteGATTDescriptor>? descriptors);
|
| +
|
| + // Reads the value for descriptor with
|
| + // |descriptor_instance_id|. If the value is successfully read the
|
| + // callback will be run with WebBluetoothResult::SUCCESS and the
|
| + // descriptor's value. If the value is not successfully read the
|
| + // callback with be run with the corresponding error and nullptr for value.
|
| + RemoteDescriptorReadValue(
|
| + string descriptor_instance_id) => (
|
| + WebBluetoothResult result,
|
| + array<uint8>? value);
|
| +
|
| + // Writes a value to the descriptor with
|
| + // |descriptor_instance_id|. The callback is run with
|
| + // WebBluetoothResult::SUCCESS if the value was successfully
|
| + // written.
|
| + RemoteDescriptorWriteValue(
|
| + string descriptor_instance_id,
|
| + array<uint8> value) => (WebBluetoothResult result);
|
| };
|
|
|
| // Classes should implement this interface and pass an associated pointer
|
|
|