Risolizione di un bug che causava il riavvio della porta
This commit is contained in:
18
index.js
18
index.js
@@ -97,10 +97,26 @@ module.exports = function (app) {
|
||||
|
||||
try {
|
||||
await bms.open();
|
||||
await bms.getStatus(); // necessario per cell/temp
|
||||
|
||||
let lastErr = null;
|
||||
for (let i=0; i<3; i++) {
|
||||
try {
|
||||
await bms.getStatus();
|
||||
lastErr = null;
|
||||
break;
|
||||
} catch (error) {
|
||||
lastErr = error;
|
||||
await new Promise(r => setTimeout(r, 500));
|
||||
}
|
||||
if (lastErr) throw lastErr;
|
||||
}
|
||||
app.setPluginStatus(`Connesso a ${opts.device}`);
|
||||
} catch (e) {
|
||||
app.setPluginError(`init failed: ${e.message}`);
|
||||
if (bms) {
|
||||
await bms.close().catch(()=>{});
|
||||
bms = null;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user