mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2025-03-09 15:40:18 +00:00
Added Intel Standard Manageability (ISM) support, improved MeshCMD activation.
This commit is contained in:
parent
b19cf48adc
commit
414494421b
13 changed files with 136 additions and 55 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1918,7 +1918,13 @@
|
|||
str += '<img src=images/link4.png height=10 width=10 title="Edit Intel® AMT credentials" style=cursor:pointer onclick=editDeviceAmtSettings("' + node._id + '")>';
|
||||
}
|
||||
}
|
||||
x += addDeviceAttribute('Intel® AMT', str);
|
||||
|
||||
var meName = 'Intel® ME';
|
||||
if (typeof node.intelamt.sku == 'number') {
|
||||
if ((node.intelamt.sku & 8) != 0) { meName = 'Intel® AMT'; }
|
||||
else if ((node.intelamt.sku & 16) != 0) { meName = 'Intel® SM'; }
|
||||
}
|
||||
x += addDeviceAttribute(meName, str);
|
||||
}
|
||||
|
||||
// Attribute: Mesh Agent Tag
|
||||
|
@ -2012,7 +2018,11 @@
|
|||
QV('p10files', currentDevicePanel == 2);
|
||||
var menus = [];
|
||||
if (currentDevicePanel != 0) { menus.push({ n: 'General', f: 'setupDeviceMenu(0)' }); }
|
||||
if ((currentDevicePanel != 1) && (currentNode != null) && ((meshrights & 8) || (meshrights & 256)) && ((currentNode.mtype == 1) || (currentNode.agent.caps & 1))) { menus.push({ n: 'Desktop', f: 'setupDeviceMenu(1)' }); }
|
||||
if ((currentDevicePanel != 1) &&
|
||||
(currentNode != null) &&
|
||||
((meshrights & 8) || (meshrights & 256)) &&
|
||||
(((meshes[currentNode.meshid].mtype == 1) && ((typeof currentNode.intelamt.sku !== 'number') || ((currentNode.intelamt.sku & 8) != 0))) || (currentNode.agent && (currentNode.agent.caps & 1)))
|
||||
) { menus.push({ n: 'Desktop', f: 'setupDeviceMenu(1)' }); }
|
||||
if ((currentDevicePanel != 2) && (currentNode != null) && (meshrights & 8) && ((meshrights == 0xFFFFFFFF) || ((meshrights & 1024) == 0)) && ((currentNode.mtype == 2) && (currentNode.agent.caps & 4))) { menus.push({ n: 'Files', f: 'setupDeviceMenu(2)' }); }
|
||||
updateFooterMenu(menus);
|
||||
}
|
||||
|
@ -2245,7 +2255,17 @@
|
|||
// Show the right buttons
|
||||
QV('disconnectbutton1', (deskState != 0));
|
||||
QV('connectbutton1', (deskState == 0) && (mesh.mtype == 2) && ((meshrights & 8) || (meshrights & 256)));
|
||||
QV('connectbutton1h', (deskState == 0) && ((currentNode.intelamt != null) && (meshrights & 8) && (mesh.mtype == 1 || currentNode.intelamt.state == 2) && ((currentNode.intelamt.ver != null) || (mesh.mtype == 1))));
|
||||
QV('connectbutton1h',
|
||||
(deskState == 0) &&
|
||||
(meshrights & 8) &&
|
||||
((mesh.mtype == 1) ||
|
||||
((currentNode.intelamt.state == 2) &&
|
||||
(currentNode.intelamt.ver != null) &&
|
||||
(currentNode.intelamt != null) &&
|
||||
(typeof currentNode.intelamt.sku == 'number') &&
|
||||
((currentNode.intelamt.sku & 8) != 0))
|
||||
)
|
||||
);
|
||||
|
||||
// Show the right settings
|
||||
QV('d7amtkvm', (currentNode.intelamt != null && ((currentNode.intelamt.ver != null) || (mesh.mtype == 1))) && ((deskState == 0) || (desktop.contype == 2)));
|
||||
|
|
|
@ -4174,7 +4174,13 @@
|
|||
str += '<img src=images/link4.png height=10 width=10 title="Edit Intel® AMT credentials" style=cursor:pointer onclick=editDeviceAmtSettings("' + node._id + '")>';
|
||||
}
|
||||
}
|
||||
x += addDeviceAttribute('Intel® AMT', str);
|
||||
|
||||
var meName = '<span title="Intel® Manageability Engine">Intel® ME<span>';
|
||||
if (typeof node.intelamt.sku == 'number') {
|
||||
if ((node.intelamt.sku & 8) != 0) { meName = '<span title="Intel® Active Management Technology">Intel® AMT<span>'; }
|
||||
else if ((node.intelamt.sku & 16) != 0) { meName = '<span title="Intel® Standard Manageability">Intel® SM<span>'; }
|
||||
}
|
||||
x += addDeviceAttribute(meName, str);
|
||||
}
|
||||
|
||||
if (mesh.mtype == 2) {
|
||||
|
@ -4298,7 +4304,10 @@
|
|||
// Show or hide the tabs
|
||||
// mesh.mtype: 1 = Intel AMT only, 2 = Mesh Agent
|
||||
// node.agent.caps (bitmask): 1 = Desktop, 2 = Terminal, 4 = Files, 8 = Console
|
||||
QV('MainDevDesktop', ((mesh.mtype == 1) || (node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 1) != 0) || (node.intelamt && (node.intelamt.state == 2))) && ((meshrights & 8) || (meshrights & 256)));
|
||||
QV('MainDevDesktop', (((mesh.mtype == 1) && ((typeof node.intelamt.sku !== 'number') || ((node.intelamt.sku & 8) != 0)))
|
||||
|| ((mesh.mtype == 2) && ((node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 1) != 0) || (node.intelamt && (node.intelamt.state == 2)))))
|
||||
&& ((meshrights & 8) || (meshrights & 256))
|
||||
);
|
||||
QV('MainDevTerminal', ((mesh.mtype == 1) || (node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 2) != 0) || (node.intelamt && (node.intelamt.state == 2))) && (meshrights & 8) && terminalAccess);
|
||||
QV('MainDevFiles', ((mesh.mtype == 2) && ((node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 4) != 0))) && (meshrights & 8) && fileAccess);
|
||||
QV('MainDevAmt', (node.intelamt != null) && ((node.intelamt.state == 2) || (node.conn & 2)) && (meshrights & 8) && amtAccess);
|
||||
|
@ -4788,7 +4797,17 @@
|
|||
// Show the right buttons
|
||||
QV('disconnectbutton1span', (deskState != 0));
|
||||
QV('connectbutton1span', (deskState == 0) && ((meshrights & 8) || (meshrights & 256)) && (mesh.mtype == 2) && (currentNode.agent.caps & 1));
|
||||
QV('connectbutton1hspan', (deskState == 0) && (meshrights & 8) && ((currentNode.intelamt != null) && (mesh.mtype == 1 || currentNode.intelamt.state == 2) && ((currentNode.intelamt.ver != null) || (mesh.mtype == 1))));
|
||||
QV('connectbutton1hspan',
|
||||
(deskState == 0) &&
|
||||
(meshrights & 8) &&
|
||||
((mesh.mtype == 1) ||
|
||||
((currentNode.intelamt != null) &&
|
||||
(currentNode.intelamt.state == 2) &&
|
||||
(currentNode.intelamt.ver != null) &&
|
||||
(typeof currentNode.intelamt.sku == 'number') &&
|
||||
((currentNode.intelamt.sku & 8) != 0))
|
||||
)
|
||||
);
|
||||
|
||||
// Show the right settings
|
||||
QV('d7amtkvm', (currentNode.intelamt != null && ((currentNode.intelamt.ver != null) || (mesh.mtype == 1))) && ((deskState == 0) || (desktop.contype == 2)));
|
||||
|
@ -5423,7 +5442,11 @@
|
|||
if (services != null) {
|
||||
for (var i in services) {
|
||||
if (services[i].status) {
|
||||
// Windows
|
||||
s.push({ p: capitalizeFirstLetter(services[i].status.state.toLowerCase()), d: services[i].displayName, i: i });
|
||||
} else if (services[i].serviceType) {
|
||||
// Linux (TODO: This the service status is not displayed, not sure start/stop/restart will work).
|
||||
s.push({ p: services[i].serviceType, d: services[i].name, i: i });
|
||||
}
|
||||
}
|
||||
if (deskTools.ssort == 0) { s.sort(sortProcessPid); } else if (deskTools.ssort == 1) { s.sort(sortProcessName); }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue