change local recording for amt from 200 to 102 to avoid messenger conflict

Signed-off-by: si458 <simonsmith5521@gmail.com>
This commit is contained in:
si458 2025-04-12 22:53:40 +01:00
parent 440cad5b50
commit def7d737e0
3 changed files with 2466 additions and 2436 deletions

View File

@ -735,7 +735,7 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) {
} }
/* /*
Intel AMT only recognizes a small subset of keysym characters defined in the keysymdef.h so you dont need to Intel AMT only recognizes a small subset of keysym characters defined in the keysymdef.h so you don<EFBFBD>t need to
implement all the languages (this is taken care by the USB Scancode Extension in RFB4.0 protocol). implement all the languages (this is taken care by the USB Scancode Extension in RFB4.0 protocol).
The only subset recognized by the FW is the defined by the following sets : XK_LATIN1 , XK_MISCELLANY, XK_3270, XK_XKB_KEYS, XK_KATAKANA. The only subset recognized by the FW is the defined by the following sets : XK_LATIN1 , XK_MISCELLANY, XK_3270, XK_XKB_KEYS, XK_KATAKANA.
In addition to keysymdef.h symbols there are 6 japanese extra keys that we do support: In addition to keysymdef.h symbols there are 6 japanese extra keys that we do support:
@ -1018,7 +1018,7 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) {
obj.recordedData = []; obj.recordedData = [];
obj.recordedStart = Date.now(); obj.recordedStart = Date.now();
obj.recordedSize = 0; obj.recordedSize = 0;
obj.recordedData.push(recordingEntry(1, 0, JSON.stringify({ magic: 'MeshCentralRelaySession', ver: 1, time: new Date().toLocaleString(), protocol: 200, bpp: obj.bpp, graymode: obj.graymode, lowcolor: obj.lowcolor, screenSize: [obj.width, obj.height] }))); // Metadata, 200 = Midstream Intel AMT KVM obj.recordedData.push(recordingEntry(1, 0, JSON.stringify({ magic: 'MeshCentralRelaySession', ver: 1, time: new Date().toLocaleString(), protocol: 102, bpp: obj.bpp, graymode: obj.graymode, lowcolor: obj.lowcolor, screenSize: [obj.width, obj.height] }))); // Metadata, 102 = Midstream Intel AMT KVM
obj.DeskRecordServerInit = String.fromCharCode((obj.width >> 8), (obj.width & 0xFF), (obj.height >> 8), (obj.height & 0xFF)) + obj.DeskRecordServerInit.substring(4); obj.DeskRecordServerInit = String.fromCharCode((obj.width >> 8), (obj.width & 0xFF), (obj.height >> 8), (obj.height & 0xFF)) + obj.DeskRecordServerInit.substring(4);
obj.recordedData.push(recordingEntry(2, 1, obj.DeskRecordServerInit)); // This is the server init command obj.recordedData.push(recordingEntry(2, 1, obj.DeskRecordServerInit)); // This is the server init command
obj.recordedData.push(recordingEntry(3, 0, atob(obj.CanvasId.toDataURL('image/png').split(',')[1]))); // Take a screen shot obj.recordedData.push(recordingEntry(3, 0, atob(obj.CanvasId.toDataURL('image/png').split(',')[1]))); // Take a screen shot

File diff suppressed because it is too large Load Diff

View File

@ -403,7 +403,8 @@
else if (p == 2) { p = "MeshCentral Desktop"; } else if (p == 2) { p = "MeshCentral Desktop"; }
else if (p == 100) { p = "Intel&reg; AMT WSMAN"; } else if (p == 100) { p = "Intel&reg; AMT WSMAN"; }
else if (p == 101) { p = "Intel&reg; AMT Redirection"; } else if (p == 101) { p = "Intel&reg; AMT Redirection"; }
else if (p == 200) { p = "Intel&reg; AMT KVM"; } else if ((p == 102) || (p == 200 && recFileMetadata.bpp != null)) { p = "Intel&reg; AMT KVM"; }
else if (p == 200) { p = "MeshMessenger"; }
x += addInfoNoEsc("Protocol", p); x += addInfoNoEsc("Protocol", p);
} }
var encQualityStr = "2 byte-per-pixel"; var encQualityStr = "2 byte-per-pixel";
@ -469,9 +470,9 @@
amtDesktop.Start(); amtDesktop.Start();
deskAdjust(); deskAdjust();
} }
else if (recFileMetadata.protocol == 200) { else if (recFileMetadata.protocol == 102 || (recFileMetadata.protocol == 200 && recFileMetadata.bpp != null)) {
// Intel AMT Midstream KVM // Intel AMT Midstream KVM
recFileProtocol = 200; recFileProtocol = 102;
x += '<br /><br /><span style=color:gray>' + "Press [space] to play/pause." + '</span>'; x += '<br /><br /><span style=color:gray>' + "Press [space] to play/pause." + '</span>';
QE('PlayButton', true); QE('PlayButton', true);
QE('PauseButton', false); QE('PauseButton', false);
@ -583,7 +584,7 @@
} else if (readState == 1) { } else if (readState == 1) {
amtDesktop.ProcessBinaryData(view.buffer); amtDesktop.ProcessBinaryData(view.buffer);
} }
} else if (recFileProtocol == 200) { } else if (recFileProtocol == 102) {
// Intel AMT midstream KVM // Intel AMT midstream KVM
var view = new Uint8Array(data.length); var view = new Uint8Array(data.length);
for (var i = 0; i < data.length; i++) { view[i] = data.charCodeAt(i); } for (var i = 0; i < data.length; i++) { view[i] = data.charCodeAt(i); }
@ -600,7 +601,7 @@
} }
// This is a PNG screenshot of the display, load it and render it. // This is a PNG screenshot of the display, load it and render it.
if ((type == 3) && (recFileProtocol == 200)) { if ((type == 3) && (recFileProtocol == 102)) {
var tile = new Image(); var tile = new Image();
tile.src = "data:image/png;base64," + btoa(data); tile.src = "data:image/png;base64," + btoa(data);
tile.onload = function () { amtDesktop.canvas.drawImage(tile, 0, 0); } tile.onload = function () { amtDesktop.canvas.drawImage(tile, 0, 0); }
@ -836,7 +837,7 @@
amtDesktop.onScreenSizeChange = deskAdjust; amtDesktop.onScreenSizeChange = deskAdjust;
amtDesktop.State = 3; amtDesktop.State = 3;
amtDesktop.Start(); amtDesktop.Start();
if (recFileMetadata.protocol == 200) { if (recFileMetadata.protocol == 102) {
if (recFileMetadata.screenSize) { amtDesktop.width = recFileMetadata.screenSize[0]; amtDesktop.height = recFileMetadata.screenSize[1]; } if (recFileMetadata.screenSize) { amtDesktop.width = recFileMetadata.screenSize[0]; amtDesktop.height = recFileMetadata.screenSize[1]; }
if (recFileMetadata.bpp) { amtDesktop.bpp = recFileMetadata.bpp; } if (recFileMetadata.bpp) { amtDesktop.bpp = recFileMetadata.bpp; }
if (recFileMetadata.graymode) { amtDesktop.graymode = recFileMetadata.graymode; } if (recFileMetadata.graymode) { amtDesktop.graymode = recFileMetadata.graymode; }