Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function stateCB() {
if (this.state === true) {
// Noble doesn't correctly match short and canonical UUIDs on Linux, so we need to check ourselves
// Continually scan to pick up all advertised UUIDs
noble.startScanning([], true, this.checkForError(errorFn, completeFn));
} else {
errorFn("adapter not enabled");
}
}
async scan() {
const self = this;
this.isScanning = true;
noble.startScanning([PLEJD_SERVICE]);
setTimeout(() => {
noble.stopScanning();
this.isScanning = false;
self.peripherals.sort((a, b) => a.rssi > b.rssi);
this.emit('scanComplete', self.peripherals);
}, 5000);
}
function scanButton() {
console.log('Scanning...');
noble.startScanning([buttonService], true);
}
handleStateChange(state) {
if (state === 'poweredOn') {
noble.startScanning([], true);
} else {
noble.stopScanning();
}
},
function startBLEScanning(RED) {
RED.log.info(`[GenericBLE] Start BLE scanning`);
if (!onDiscover) {
onDiscover = onDiscoverFunc(RED);
}
noble.removeListener('stateChange', onStateChange);
noble.removeListener('discover', onDiscover);
noble.addListener('stateChange', onStateChange);
noble.addListener('discover', onDiscover);
if (noble.state === 'poweredOn') {
noble.startScanning([], true);
}
}
handleScanStateChange(state) {
if (this.shouldScanLE && state === 'poweredOn') {
if (!this.isScanning) {
noble.startScanning([], true);
this.isScanning = true;
}
} else {
if (this.isScanning) {
noble.stopScanning();
this.isScanning = false;
}
}
},
const { uuid: id } = peripheral;
const { localName } = peripheral.advertisement;
const name =
localName ||
(discoveredDevices[id] ? discoveredDevices[id].name : null);
discoveredDevices[id] = { peripheral, name };
log("ble-advertisement", id + " (" + String(name) + ")");
observer.next({
type: "add",
descriptor: peripheral,
device: { id, name }
});
};
noble.addListener("discover", onDiscover);
noble.startScanning(getBluetoothServiceUuids(), true);
return () => {
noble.removeListener("discover", onDiscover);
noble.stopScanning();
};
});