BLEDevice<TRegistration extends BLEDeviceRegistration> class

A Bluetooth Low Energy (BLE) device configuration.

Holds high-level scan configuration for BLE devices.

Inheritance
  • Object
  • Serializable
  • DeviceConfiguration<TRegistration>
  • CamsDevice<TRegistration>
  • BLEDevice
Implementers
Annotations
  • @JsonSerializable.new(includeIfNull: false, explicitToJson: true)

Constructors

BLEDevice({required String roleName, bool? isOptional = true, List<String>? serviceUuids, String? namePrefix, int? minRssi, bool allowDuplicates = true, Duration? timeout})
BLEDevice.fromJson(Map<String, dynamic> json)
factory

Properties

$type ↔ String?
The runtime class name (type) of this object. Used for deserialization from JSON objects.
getter/setter pairinherited
allowDuplicates ↔ bool
Whether to receive repeated scan results for the same device. Useful for RSSI updates.
getter/setter pair
dataTypeSamplingSchemes → DataTypeSamplingSchemeMap?
Sampling schemes for all the sensors available on this device.
no setterinherited
defaultSamplingConfiguration ↔ Map<String, SamplingConfiguration>?
Sampling configurations which override the default configurations for data types available on this device.
getter/setter pairinherited
fromJsonFunction → Function
The function which can convert a JSON string to an object of this type.
no setteroverride
hashCode → int
The hash code for this object.
no setterinherited
isOptional ↔ bool?
Determines whether device registration for this device is optional prior to starting a study, i.e., whether the study can run without this device or not.
getter/setter pairinherited
jsonType → String
Return the __type to be used for JSON serialization of this class. Default is runtimeType. Only specify this if you need another type.
no setterinherited
minRssi ↔ int?
Minimum RSSI (dBm) to accept, for example: -80.
getter/setter pair
namePrefix ↔ String?
Optional device name filter (substring match, case-insensitive). Applied AFTER discovery, not at the BLE controller level.
getter/setter pair
roleName ↔ String
A name which describes how the device participates within the study protocol; it's 'role'. For example, 'Parent's phone' or 'Child phone'.
getter/setter pairinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
serviceUuids ↔ List<String>
Advertised service UUIDs to filter for. String representation of UUIDs, for example: "0000180D-0000-1000-8000-00805f9b34fb"
getter/setter pair
supportedDataTypes → Set<String>?
The set of data types which can be collected on this device.
no setterinherited
timeout ↔ Duration?
Scan timeout.
getter/setter pair
type → String
The device type identifier
no setterinherited

Methods

createRegistration({String? deviceId, String? deviceDisplayName}) → TRegistration
Create a DeviceRegistration which can be used to configure this device for deployment.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
Return a JSON encoding of this object.
override
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited