B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 15: Line 15:
   readonly attribute boolean                              [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#isPrimary|isPrimary]];
   readonly attribute boolean                              [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#isPrimary|isPrimary]];
   readonly attribute DOMString                            [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#uuid|uuid]];
   readonly attribute DOMString                            [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#uuid|uuid]];
   readonly attribute int                                  [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#instanceId|instanceId]];
   readonly attribute unsigned short                        [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#instanceId|instanceId]];
   
   
   [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic|BluetoothGattCharacteristic]]? [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#findCharacteristic.28DOMString uuid.29|findCharacteristic(DOMString uuid)]];
   [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattCharacteristic|BluetoothGattCharacteristic]]? [[B2G/Bluetooth/WebBluetooth-v2/BluetoothGattService#findCharacteristic.28DOMString uuid.29|findCharacteristic(DOMString uuid)]];

Revision as of 02:23, 25 August 2014

Overview

BluetoothGattService represents the service provided by GATT server. BluetoothGattService is consisted of its service definition, a list of included services which are referenced by this service, and a list of characteristics in this service.

Interfaces

BluetoothGattService

BluetoothGattService

[CheckPermissions="bluetooth"]
interface BluetoothGattService
{
  [Cached, Pure]
  readonly attribute sequence<BluetoothGattCharacteristic> characteristics;
  [Cached, Pure]
  readonly attribute sequence<BluetoothGattService>        includedServices;
  readonly attribute boolean                               isPrimary;
  readonly attribute DOMString                             uuid;
  readonly attribute unsigned short                        instanceId;

  BluetoothGattCharacteristic? findCharacteristic(DOMString uuid);
};

Properties

characteristics

Description
A cached array of charactertistics contained in this service.
Value Type
sequence<BluetoothGattCharacteristic>
Default Value
Empty array (array with length = 0)

includedServices

Description
A cached array of included services referenced by this service.
Value Type
sequence<BluetoothGattService>
Default Value
Empty array (array with length = 0)

isPrimary

Description
Indicate whether this is a primary or secondary service.
Value Type
boolean
Default Value
false

uuid

Description
This property stores the UUID of this service.
Value Type
DOMString
Default Value
Empty string ("")

instanceId

Description
This property stores the instance id of this service.
Value Type
integer
Default Value
0

Methods

findCharacteristic(DOMString uuid)

Description
The method finds a characteristic in this service from the characteristics property by the given UUID.
When there are multiple characteristics with the same UUID existed in the service, the first one will be returned.
Parameters
uuid
UUID DOMString of the characteristic to seek for.
Return
The first characteristic with the given uuid in characteristics property.
A null pointer is returned if no characteristic is found.
Sample
const HEART_RATE_SERVICE = "0000180d-0000-1000-8000-00805f9b34fb";
const HEART_RATE_MEASUREMENT = "00002a37-0000-1000-8000-00805f9b34fb";

if (device.gatt && device.gatt.findService(HEART_RATE_SERVICE)) { 
  heartRateMeasurement = heartRateService.findCharacteristic(HEART_RATE_MEASUREMENT);
}