Created
July 17, 2016 21:17
-
-
Save jacobrosenthal/7d0d78442318ba3d05dc8c918176116e to your computer and use it in GitHub Desktop.
Noble Bindings truths
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
peripheralUuidString is a lower case string no dashes | |
serviceUuidString is a lower case string no dashes | |
characteristicUuidString is a lower case string no dashes | |
serviceUuidString is a lower case string no dashes | |
serviceUuidsArray, array of serviceUuidString | |
descriptorHandle TODO | |
propertyString one of ['broadcast', 'read', 'writeWithoutResponse', 'write', 'notify', 'indicate', 'authenticatedSignedWrites', 'extendedProperties'] | |
propertiesArray containing one or more of propertyString | |
descriptorObject = { | |
uuid: characteristicUuidString, | |
handle: descriptorHandle | |
}; | |
characteristicObject = { | |
uuid: characteristicUuidString, | |
properties: propertiesArray | |
} | |
characteristicObjectArray, array of characteristicObject | |
descriptorsObjectArray, array of descriptorObject | |
dataBuffer node Buffer | |
stateString one of ['unknown', 'resetting', 'unsupported', 'unauthorized', 'poweredOff', 'poweredOn'] | |
addressString, mac address string with colons ex: '00:22:d0:2a:e4:a3' or 'unknown' for null/undefined | |
addressTypeString one of ['public', 'random', 'unknown'] | |
rssiNumber ex -41 | |
txPowerLevelNumber ex 0 | |
localNameString | |
advertisementObject, all required, ex: | |
{ localNameString: localNameString, | |
txPowerLevel: txPowerLevelNumber, | |
manufacturerData: dataBuffer, | |
serviceData: TODO, | |
serviceUuids: serviceUuidsArray } | |
Bindings must have emits, all arguments required unless otherwise specified | |
bindings.on('stateChange', callback(stateString)); | |
bindings.on('addressChange', callback(addressString)); | |
bindings.on('scanStart', callback()); | |
bindings.on('scanStop', callback()); | |
bindings.on('discover', callback(peripheralUuidString, addressString, addressTypeString, connectableBool, advertisementObject, rssiNumber)); | |
bindings.on('connect', callback(peripheralUuidString)); | |
bindings.on('disconnect', callback(peripheralUuidString)); | |
bindings.on('rssiUpdate', callback(peripheralUuidString, rssiNumber)); | |
bindings.on('servicesDiscover', callback(peripheralUuidString, serviceUuidsArray)); | |
bindings.on('includedServicesDiscover', callback(peripheralUuidString, serviceUuidString, serviceUuidsArray)); | |
bindings.on('characteristicsDiscover', callback(peripheralUuidString, serviceUuidString, characteristicObjectArray)); | |
bindings.on('read', callback(peripheralUuidString, serviceUuidString, characteristicUuidString, dataBuffer, isNotificationBoolean)); | |
bindings.on('write', callback(peripheralUuidString, serviceUuidString, characteristicUuidString)); | |
bindings.on('broadcast', callback(peripheralUuidString, serviceUuidString, characteristicUuidString, enableBoolean)); | |
bindings.on('notify', callback(peripheralUuidString, serviceUuidString, characteristicUuidString, enableBoolean)); | |
bindings.on('descriptorsDiscover', callback(peripheralUuidString, serviceUuidString, characteristicUuidString, descriptorObjectArray)); | |
bindings.on('valueRead', callback(peripheralUuidString, serviceUuidString, characteristicUuidString, descriptorUuidString, dataBuffer)); | |
bindings.on('valueWrite', callback(peripheralUuidString, serviceUuidString, characteristicUuidString, descriptorUuidString)); | |
not required? | |
bindings.on('handleRead', callback(peripheralUuidString, descriptorHandle, dataBuffer)); | |
bindings.on('handleWrite', callback(peripheralUuidString, descriptorHandle)); | |
bindings.on('handleNotify', callback(TODO)); | |
Bindings must have functions, all arguments required unless otherwise specified | |
bindings.init(); | |
bindings.startScanning(serviceUuidsArray, allowDuplicatesBoolean); //neither required | |
bindings.stopScanning(); | |
bindings.connect(peripheralUuidString); | |
bindings.disconnect(peripheralUuidString); | |
bindings.updateRssi(peripheralUuidString); | |
bindings.discoverServices(peripheralUuidString, serviceUuidsArray); | |
bindings.discoverIncludedServices(peripheralUuidString, serviceUuidString, serviceUuidsArray(empty allowed)); | |
bindings.discoverCharacteristics(peripheralUuidString, serviceUuidString, characteristicUuidsArray); | |
bindings.read(peripheralUuidString, serviceUuidString, characteristicUuidString); | |
bindings.write(peripheralUuidString, serviceUuidString, characteristicUuidString, dataBuffer, withoutResponseBool); | |
bindings.broadcast(peripheralUuidString, serviceUuidString, characteristicUuidString, broadcastBoolean); | |
bindings.notify(peripheralUuidString, serviceUuidString, characteristicUuidString, notifyBoolean); | |
bindings.discoverDescriptors(peripheralUuidString, serviceUuidString, characteristicUuidString); | |
bindings.readValue(peripheralUuidString, serviceUuidString, characteristicUuidString, descriptorUuidString); | |
bindings.writeValue(peripheralUuidString, serviceUuidString, characteristicUuidString, descriptorUuidString, dataBuffer); | |
bindings.readHandle(peripheralUuidString, descriptorHandle); | |
bindings.writeHandle(peripheralUuidString, descriptorHandle, dataBuffer, withoutResponseBoolean); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment