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