Peripheral Class
Representation of a remote peripheral.
You can't directly create Peripheral objects. Knowing the name
and/or UUID of a peripheral is not sufficient to create a connection,
especially because the UUID is a locally assigned artificial identifier,
not something that globally identifies a peripheral (like for example a
MAC address would).
You can use the
retrievePeripheralsWithIdentifiers
function to retrieve Peripheral objects that were previously
created on the device. It is important to understand, however, that this
function really just retrieves already existing objects, doesn't create new
ones. So, for example, if you execute this function right after you reboot the
phone then chances are you won't get anything back.
Item Index
Methods
Events
- discoveredCharacteristics
- discoveredDescriptionForCharacteristics
- discoveredIncludedServices
- discoveredServices
- invalidatedServices
- updatedName
- updatedNotificationStateForCharacteristics
- updatedRSSI
- updatedValueForCharacteristic
- updatedValueForDescriptor
- wroteValueForCharacteristic
- wroteValueForDescriptor
Methods
discoverCharacteristics
-
params -
[param.UUIDs]
Discovers the specified characteristic(s) of a service.
The result of this operation is returned via the discoveredCharacteristics event.
Parameters:
-
paramsObjectAn object with the following properties:
-
serviceService
-
-
[param.UUIDs]Array of Strings optionalAn array of UUID strings, representing the characteristic types to be discovered. If not specified all characteristics of the service will be discovered, which is considerably slower and not recommended.
Returns:
discoverDescriptorsForCharacteristic
-
characteristic
Discovers the descriptor(s) of a characteristic.
The result of this operation is returned via the Peripheral/discoveredDescriptorsForCharacteristics:event event.
Parameters:
-
characteristicCharacteristic
Returns:
discoverIncludedServices
-
params
Discovers the specified included service(s) of a service.
The result of this operation is returned via the discoveredIncludedServices event.
Parameters:
-
paramsObjectAn object with the following properties:
-
serviceServiceA GATT service.
-
[serviceUUIDs]Array of Strings optionalAn array of UUID strings, representing the included service types to be discovered. If not specified, all included services will be discovered, which is considerably slower and not recommended.
-
Returns:
discoverServices
-
serviceUUIDStrings
Discovers available service(s) on the peripheral.
The result of this operation is returned via the discoveredServices event.
Parameters:
-
serviceUUIDStringsArray of Strings
Returns:
readRSSI
()
Void
Retrieves the current RSSI of the link.
The result of this operation is returned via the updatedRSSI event.
Returns:
readValueForCharacteristic
-
characteristic
Reads the value of a characteristic.
The result of this operation is returned via the updatedValueForCharacteristic event.
Parameters:
-
characteristicCharacteristic
Returns:
readValueForDescriptor
-
descriptor
Reads the value of a descriptor.
The result of this operation is returned via the updatedValueForDescriptor event.
Parameters:
-
descriptorDescriptor
Returns:
subscribeToCharacteristic
-
characteristic
Enables notifications/indications for a characteristic. If the characteristic allows both, notifications will be used.
Parameters:
-
characteristicCharacteristic
Returns:
unsubscribeFromCharacteristic
-
characteristic
Disables notifications/indications for a characteristic.
Parameters:
-
characteristicCharacteristic
Returns:
writeValueForCharacteristic
-
params
Writes a value to a characteristic.
Parameters:
-
paramsObjectAn object with the following properties:
-
characteristicCharacteristicThe characteristic to change.
-
dataTiBufferThe new value of the characteristic.
-
[type=CHARACTERISTIC_TYPE_WRITE_WITH_RESPONSE]Number optionalThe type of write to be executed. See CHARACTERISTIC_TYPE_WRITE_WITH_RESPONSE and CHARACTERISTIC_TYPE_WRITE_WITHOUT_RESPONSE.
-
Returns:
writeValueForDescriptor
-
params
Writes the value of a descriptor.
The result of this operation is returned via the wroteValueForCharacteristic event.
Parameters:
-
paramsObject-
descriptorDescriptor -
dataTiBuffer
-
Returns:
Properties
isConnected
Boolean
read-only
Whether or not the peripheral is currently connected.
name
String
read-only
The name of the peripheral.
RSSI
Number
read-only
The most recently read RSSI, in decibels. Note that you need to call the readRSSI method to update this value, and the result of that operation is returned via the updatedRSSI event.
services
Array of Service objects
read-only
A list of Service objects that have been discovered on the peripheral.
state
Number
read-only
The current connection state of the peripheral. Possible values are PERIPHERAL_STATE_DISCONNECTED, PERIPHERAL_STATE_CONNECTING, and PERIPHERAL_STATE_CONNECTED.
UUID
String
read-only
Once a peripheral has been connected at least once by the system, it is assigned a UUID. This UUID can be stored and later provided to the retrievePeripherals method.
Events
discoveredCharacteristics
This event returns the result of a call to the
discoverCharacteristics method. If the characteristic(s) were read successfully,
they can be retrieved via the service property's
characteristics property.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
serviceServiceThe service for which the characteristics were discovered.
-
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
discoveredDescriptionForCharacteristics
This event returns the result of a call to the discoverDescriptorsForCharacteristic method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
characteristicCharacteristic -
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
discoveredIncludedServices
This event returns the result of a call to the discoverIncludedServices method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
discoveredServices
This event returns the result of a call to the discoverServices method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
invalidatedServices
This event is fired when the services of the peripheral change.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
servicesArray of Service objectsThe services that have been invalidated.
updatedName
This event is fired when the name of the peripheral changes.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
updatedNotificationStateForCharacteristics
This event returns the result of a call to the subscribeToCharacteristic or unsubscribeFromCharacteristic method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
characteristicCharacteristic -
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
updatedRSSI
This event returns the result of a call to the
readRSSI method. The event handler function for this event can
query the RSSI property of the peripheral object provided in the
source property of the event object.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
updatedValueForCharacteristic
This event is fired after a call to the readValueForCharacteristic method, or upon receipt of a notification/indication.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
characteristicCharacteristic -
valueTiBufferThe characteristic's value at the time the update was received. Note that due to the asynchronous nature of the Titanium messaging facility, the value of the characteristic may have been already updated again by the time the JavaScript code receives this event and consequently
valueandcharacteristic.valuemay be different! -
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
updatedValueForDescriptor
This event returns the result of a call to the readValueForDescriptor method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
descriptorDescriptorThe Descriptor object corresponding to the descriptor parameter of the delegate method.
-
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
wroteValueForCharacteristic
This event returns the result of a call to the writeValueForCharacteristic method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
characteristicCharacteristic -
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
wroteValueForDescriptor
This event returns the result of a call to the writeValueForDescriptor method.
Event Payload:
-
sourcePeripheralThe peripheral sending the event.
-
descriptorDescriptorThe object representing the descriptor that was changed.
-
errorCodeNumberThe error code; only present if an error occurred.
-
errorDomainStringThe error domain; only present if an error occurred.
-
errorDescriptionStringThe error description; only present if an error occurred.
