fix amt powerstate and timer (#5691)
Signed-off-by: si458 <simonsmith5521@gmail.com>
Simon Smith committed
Jan 13, 2024 at 18:53 UTC
a822b88756dee120d354ab7e897cfc1c0a2784f5
2 files changed
+6
-5
amtmanager.js
+4
-3
@@ -750,7 +750,8 @@ module.exports.CreateAmtManager = function (parent) {
750
// Start power polling if not connected to LMS
751
var ppfunc = function powerPoleFunction() { fetchPowerState(powerPoleFunction.dev); }
752
ppfunc.dev = dev;
753
- dev.polltimer = new setTimeout(ppfunc, 290000); // Poll for power state every 4 minutes 50 seconds.
753
+ if(dev.polltimer){ clearInterval(dev.polltimer); delete dev.polltimer; }
754
+ dev.polltimer = new setInterval(ppfunc, 290000); // Poll for power state every 4 minutes 50 seconds.
755
fetchPowerState(dev);
756
} else {
757
// For LMS connections, close now.
@@ -931,7 +932,7 @@ module.exports.CreateAmtManager = function (parent) {
932
else if (response.Body.OSPowerSavingState == 3) { meshPowerState = 2; } // Modern standby (We are going to call this S1);
933
934
// Set OS power state
934
- if (meshPowerState >= 0) { parent.SetConnectivityState(dev.meshid, dev.nodeid, Date.now(), 4, meshPowerState, null, { name: dev.name }); }
935
+ if (meshPowerState >= 0) { parent.SetConnectivityState(dev.meshid, dev.nodeid, Date.now(), 2, meshPowerState, null, { name: dev.name }); }
936
});
937
} else {
938
// Convert the power state
@@ -941,7 +942,7 @@ module.exports.CreateAmtManager = function (parent) {
942
if (powerstate < powerConversionTable.length) { meshPowerState = powerConversionTable[powerstate]; } else { powerstate = 6; }
943
944
// Set power state
944
- if (meshPowerState >= 0) { parent.SetConnectivityState(dev.meshid, dev.nodeid, Date.now(), 4, meshPowerState, null, { name: dev.name }); }
945
+ if (meshPowerState >= 0) { parent.SetConnectivityState(dev.meshid, dev.nodeid, Date.now(), 2, meshPowerState, null, { name: dev.name }); }
946
}
947
});
948
}
meshcentral.js
+2
-2
@@ -2477,7 +2477,7 @@ function CreateMeshCentralServer(config, args) {
2477
if (connectType == 1) { state.agentPower = powerState; } else if (connectType == 2) { state.ciraPower = powerState; } else if (connectType == 4) { state.amtPower = powerState; }
2478
var powerState = 0, oldPowerState = state.powerState;
2479
if ((state.connectivity & 1) != 0) { powerState = state.agentPower; } else if ((state.connectivity & 2) != 0) { powerState = state.ciraPower; } else if ((state.connectivity & 4) != 0) { powerState = state.amtPower; }
2480
- if ((state.powerState == null) || (state.powerState != powerState)) {
2480
+ if ((state.powerState == null)|| (state.powerState == undefined) || (state.powerState != powerState)) {
2481
state.powerState = powerState;
2482
eventConnectChange = 1;
2483
@@ -2521,7 +2521,7 @@ function CreateMeshCentralServer(config, args) {
2521
if (connectType == 1) { state.agentPower = powerState; } else if (connectType == 2) { state.ciraPower = powerState; } else if (connectType == 4) { state.amtPower = powerState; }
2522
var powerState = 0, oldPowerState = state.powerState;
2523
if ((state.connectivity & 1) != 0) { powerState = state.agentPower; } else if ((state.connectivity & 2) != 0) { powerState = state.ciraPower; } else if ((state.connectivity & 4) != 0) { powerState = state.amtPower; }
2524
- if ((state.powerState == null) || (state.powerState != powerState)) {
2524
+ if ((state.powerState == null)|| (state.powerState == undefined) || (state.powerState != powerState)) {
2525
state.powerState = powerState;
2526
eventConnectChange = 1;
2527