make blu gw script more rebust on startup (#16304)

Signed-off-by: Markus Michels <markus7017@gmail.com>
Co-authored-by: markus7017 <markus7017@gmail..com>
Signed-off-by: Ciprian Pascu <contact@ciprianpascu.ro>
This commit is contained in:
Markus Michels 2024-01-19 04:53:46 -05:00 committed by Ciprian Pascu
parent d8053a8104
commit 966281d33c

View File

@ -150,11 +150,22 @@ function scanCB(ev, res) {
}
}
// retry several times to start the scanner if script was started before
// BLE infrastructure was up in the Shelly
function startBLEScan() {
let bleScanSuccess = BLE.Scanner.Start({ duration_ms: SCAN_DURATION, active: true }, scanCB);
if( bleScanSuccess === null ) {
console.log('Unable to start OH-BLU Scanner, make sure Shelly Gateway Support is disabled in device config.');
Timer.set(3000, false, startBLEScan);
} else {
console.log('Success: OH-BLU Event Gateway running');
}
}
let BLEConfig = Shelly.getComponentConfig('ble');
if(BLEConfig.enable === false) {
console.log('Error: BLE not enabled, unable to start OH-BLU Scanner');
} else {
BLE.Scanner.Start({ duration_ms: SCAN_DURATION, active: true }, scanCB);
console.log('OH-BLU Event Gateway running');
Timer.set(1000, false, startBLEScan);
}