3.0.0 • Published 10 years ago
eddystone-beacon-scanner v3.0.0
node-eddystone-beacon-scanner
Scan for Eddystone beacon's using Node.js
Use's noble for BLE peripheral scanning, then attempts to parse discovered peripherals using the Eddystone Protocol Specification
Setup
npm install eddystone-beacon-scannerExamples
See examples folder.
Usage
var EddystoneBeaconScanner = require('eddystone-beacon-scanner');Register event handlers
Found
Triggered when a beacon is first found.
EddystoneBeaconScanner.on('found', function(beacon) {
// ...
});Updated
Triggered when a beacon advertisement detected.
EddystoneBeaconScanner.on('updated', function(beacon) {
// ...
});Lost
Triggered when a beacon has not been detected for 5 seconds.
EddystoneBeaconScanner.on('lost', function(beacon) {
// ...
});The beacon object will have the following properties depending on the frame type:
URL
type- Eddystone typetxPower- Measured received power at 0 m in dBmurl- (expanded) URL the beacon is broadcastingtlm- TLM data, only present when interleaved broadcasts are used by the beaconrssi- RSSI of discovered beacondistance- Approximate distance from beacon
UID
type- Eddystone typetxPower- Measured received power at 0 m in dBmnamespace- 10-byte ID Namespaceinstance- 6-byte ID Instancetlm- TLM data, only present when interleaved broadcasts are used by the beaconrssi- RSSI of discovered beacondistance- Approximate distance from beacon
TLM
tlmversion- TLM versionvbatt- Battery voltagetemp- TemperatureadvCnt- Advertising PDU countsecCnt- Time since power-on or reboot
rssi- RSSI of discovered beacondistance- Approximate distance from beacon
Start scanning
Start scanning for Eddystone beacons, you can specify whether to allow duplicates (default is false).
EddystoneBeaconScanner.startScannning(allowDuplicates);Note: the lost event will only be triggered when allowDuplicates is set to true
Stop scanning
Stop scanning for Eddystone beacons.
EddystoneBeaconScanner.stopScannning();