mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2025-04-18 09:49:58 -04:00
Added session identifier to desktop multiplex events, #3606
This commit is contained in:
parent
1f1a80739e
commit
15e494ef26
@ -58,10 +58,11 @@ MNG_ENCAPSULATE_AGENT_COMMAND = 70,
|
|||||||
MNG_KVM_DISPLAY_INFO = 82
|
MNG_KVM_DISPLAY_INFO = 82
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function CreateDesktopMultiplexor(parent, domain, nodeid, func) {
|
function CreateDesktopMultiplexor(parent, domain, nodeid, id, func) {
|
||||||
var obj = {};
|
var obj = {};
|
||||||
obj.nodeid = nodeid;
|
obj.id = id; // Unique identifier for this session
|
||||||
obj.parent = parent;
|
obj.nodeid = nodeid; // Remote device nodeid for this session
|
||||||
|
obj.parent = parent; // Parent web server instance
|
||||||
obj.agent = null; // Reference to the connection object that is the agent.
|
obj.agent = null; // Reference to the connection object that is the agent.
|
||||||
obj.viewers = []; // Array of references to all viewers.
|
obj.viewers = []; // Array of references to all viewers.
|
||||||
obj.viewersOverflowCount = 0; // Number of viewers currently in overflow state.
|
obj.viewersOverflowCount = 0; // Number of viewers currently in overflow state.
|
||||||
@ -180,7 +181,7 @@ function CreateDesktopMultiplexor(parent, domain, nodeid, func) {
|
|||||||
|
|
||||||
// Log joining the multiplex session
|
// Log joining the multiplex session
|
||||||
if (obj.startTime != null) {
|
if (obj.startTime != null) {
|
||||||
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, userid: peer.user ? peer.user._id : null, username: peer.user.name, msgid: 4, msg: "Joined desktop multiplex session", protocol: 2 };
|
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, userid: peer.user ? peer.user._id : null, username: peer.user.name, msgid: 143, msgArgs: [obj.id], msg: "Joined desktop multiplex session \"" + obj.id + "\"", protocol: 2 };
|
||||||
parent.parent.DispatchEvent(['*', obj.nodeid, peer.user._id, obj.meshid], obj, event);
|
parent.parent.DispatchEvent(['*', obj.nodeid, peer.user._id, obj.meshid], obj, event);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -208,7 +209,7 @@ function CreateDesktopMultiplexor(parent, domain, nodeid, func) {
|
|||||||
|
|
||||||
// Log multiplex session start
|
// Log multiplex session start
|
||||||
if ((obj.agent != null) && (obj.viewers.length > 0) && (obj.startTime == null)) {
|
if ((obj.agent != null) && (obj.viewers.length > 0) && (obj.startTime == null)) {
|
||||||
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, msgid: 6, msg: "Started desktop multiplex session", protocol: 2 };
|
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, msgid: 145, msgArgs: [obj.id], msg: "Started desktop multiplex session \"" + obj.id + "\"", protocol: 2 };
|
||||||
if (obj.viewers[0].user != null) { event.userid = obj.viewers[0].user._id; event.username = obj.viewers[0].user.name; }
|
if (obj.viewers[0].user != null) { event.userid = obj.viewers[0].user._id; event.username = obj.viewers[0].user.name; }
|
||||||
const targets = ['*', obj.nodeid, obj.meshid];
|
const targets = ['*', obj.nodeid, obj.meshid];
|
||||||
if (obj.viewers[0].user != null) { targets.push(obj.viewers[0].user._id); }
|
if (obj.viewers[0].user != null) { targets.push(obj.viewers[0].user._id); }
|
||||||
@ -288,7 +289,7 @@ function CreateDesktopMultiplexor(parent, domain, nodeid, func) {
|
|||||||
|
|
||||||
//var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, userid: peer.user._id, username: peer.user.name, msgid: 5, msg: "Left the desktop multiplex session", protocol: 2 };
|
//var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, userid: peer.user._id, username: peer.user.name, msgid: 5, msg: "Left the desktop multiplex session", protocol: 2 };
|
||||||
const sessionSeconds = Math.floor((Date.now() - peer.startTime) / 1000);
|
const sessionSeconds = Math.floor((Date.now() - peer.startTime) / 1000);
|
||||||
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, msgid: 122, msgArgs: [sessionSeconds], msg: "Left the desktop multiplex session after " + sessionSeconds + " second(s).", protocol: 2, bytesin: inTraffc, bytesout: outTraffc };
|
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, msgid: 144, msgArgs: [obj.id, sessionSeconds], msg: "Left the desktop multiplex session \"" + obj.id + "\" after " + sessionSeconds + " second(s).", protocol: 2, bytesin: inTraffc, bytesout: outTraffc };
|
||||||
if (peer.user != null) { event.userid = peer.user._id; event.username = peer.user.name; }
|
if (peer.user != null) { event.userid = peer.user._id; event.username = peer.user.name; }
|
||||||
if (peer.guestName) { event.guestname = peer.guestName; }
|
if (peer.guestName) { event.guestname = peer.guestName; }
|
||||||
const targets = ['*', obj.nodeid, obj.meshid];
|
const targets = ['*', obj.nodeid, obj.meshid];
|
||||||
@ -342,7 +343,7 @@ function CreateDesktopMultiplexor(parent, domain, nodeid, func) {
|
|||||||
|
|
||||||
// Add a event entry about this recording
|
// Add a event entry about this recording
|
||||||
var basefile = parent.parent.path.basename(filename);
|
var basefile = parent.parent.path.basename(filename);
|
||||||
var event = { etype: 'relay', action: 'recording', domain: domain.id, nodeid: obj.nodeid, msgid: 7, msgArgs: [obj.sessionLength], msg: "Finished recording session" + (obj.sessionLength ? (', ' + obj.sessionLength + ' second(s)') : ''), filename: basefile, size: obj.recordingFileSize, protocol: 2, icon: obj.icon, name: obj.name, meshid: obj.meshid, userids: obj.userIds, multiplex: true };
|
var event = { etype: 'relay', action: 'recording', domain: domain.id, nodeid: obj.nodeid, msgid: 146, msgArgs: [obj.id, obj.sessionLength], msg: "Finished recording session \"" + obj.id + "\", " + obj.sessionLength + " second(s)", filename: basefile, size: obj.recordingFileSize, protocol: 2, icon: obj.icon, name: obj.name, meshid: obj.meshid, userids: obj.userIds, multiplex: true };
|
||||||
var mesh = parent.meshes[obj.meshid];
|
var mesh = parent.meshes[obj.meshid];
|
||||||
if (mesh != null) { event.meshname = mesh.name; }
|
if (mesh != null) { event.meshname = mesh.name; }
|
||||||
if (obj.sessionStart) { event.startTime = obj.sessionStart; event.lengthTime = obj.sessionLength; }
|
if (obj.sessionStart) { event.startTime = obj.sessionStart; event.lengthTime = obj.sessionLength; }
|
||||||
@ -354,7 +355,7 @@ function CreateDesktopMultiplexor(parent, domain, nodeid, func) {
|
|||||||
|
|
||||||
// Log end of multiplex session
|
// Log end of multiplex session
|
||||||
if (obj.startTime != null) {
|
if (obj.startTime != null) {
|
||||||
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, msgid: 8, msgArgs: [Math.floor((Date.now() - obj.startTime) / 1000)], msg: "Closed desktop multiplex session" + ', ' + Math.floor((Date.now() - obj.startTime) / 1000) + ' second(s)', protocol: 2 };
|
var event = { etype: 'relay', action: 'relaylog', domain: domain.id, nodeid: obj.nodeid, msgid: 147, msgArgs: [obj.id, Math.floor((Date.now() - obj.startTime) / 1000)], msg: "Closed desktop multiplex session \"" + obj.id + "\", " + Math.floor((Date.now() - obj.startTime) / 1000) + ' second(s)', protocol: 2 };
|
||||||
parent.parent.DispatchEvent(['*', obj.nodeid, obj.meshid], obj, event);
|
parent.parent.DispatchEvent(['*', obj.nodeid, obj.meshid], obj, event);
|
||||||
obj.startTime = null;
|
obj.startTime = null;
|
||||||
}
|
}
|
||||||
@ -1203,7 +1204,7 @@ function CreateMeshRelayEx2(parent, ws, req, domain, user, cookie) {
|
|||||||
if (obj.deskMultiplexor == null) {
|
if (obj.deskMultiplexor == null) {
|
||||||
parent.desktoprelays[obj.nodeid] = 1; // Indicate that the creating of the desktop multiplexor is pending.
|
parent.desktoprelays[obj.nodeid] = 1; // Indicate that the creating of the desktop multiplexor is pending.
|
||||||
parent.parent.debug('relay', 'DesktopRelay: Creating new desktop multiplexor');
|
parent.parent.debug('relay', 'DesktopRelay: Creating new desktop multiplexor');
|
||||||
CreateDesktopMultiplexor(parent, domain, obj.nodeid, function (deskMultiplexor) {
|
CreateDesktopMultiplexor(parent, domain, obj.nodeid, obj.id, function (deskMultiplexor) {
|
||||||
if (deskMultiplexor != null) {
|
if (deskMultiplexor != null) {
|
||||||
// Desktop multiplexor was created, use it.
|
// Desktop multiplexor was created, use it.
|
||||||
obj.deskMultiplexor = deskMultiplexor;
|
obj.deskMultiplexor = deskMultiplexor;
|
||||||
|
@ -13341,11 +13341,11 @@
|
|||||||
1: "Account login",
|
1: "Account login",
|
||||||
2: "Account logout",
|
2: "Account logout",
|
||||||
3: "Changed language from {1} to {2}",
|
3: "Changed language from {1} to {2}",
|
||||||
4: "Joined desktop multiplex session",
|
4: "Joined desktop multiplex session", // No longer in use, replaced with 143
|
||||||
5: "Left the desktop multiplex session",
|
5: "Left the desktop multiplex session", // No longer in use, replaced with 144
|
||||||
6: "Started desktop multiplex session",
|
6: "Started desktop multiplex session", // No longer in use, replaced with 145
|
||||||
7: "Finished recording session, {0} second(s)",
|
7: "Finished recording session, {0} second(s)", // No longer in use, replaced with 146
|
||||||
8: "Closed desktop multiplex session, {0} second(s)",
|
8: "Closed desktop multiplex session, {0} second(s)", // No longer in use, replaced with 147
|
||||||
9: "Ended relay session \"{0}\" from {1} to {2}, {3} second(s)",
|
9: "Ended relay session \"{0}\" from {1} to {2}, {3} second(s)",
|
||||||
10: "Ended terminal session \"{0}\" from {1} to {2}, {3} second(s)",
|
10: "Ended terminal session \"{0}\" from {1} to {2}, {3} second(s)",
|
||||||
11: "Ended desktop session \"{0}\" from {1} to {2}, {3} second(s)",
|
11: "Ended desktop session \"{0}\" from {1} to {2}, {3} second(s)",
|
||||||
@ -13459,7 +13459,7 @@
|
|||||||
119: "This agent is using insecure tunnels, consider updating.",
|
119: "This agent is using insecure tunnels, consider updating.",
|
||||||
120: "Started local relay session \"{0}\", protocol {1} to {2}",
|
120: "Started local relay session \"{0}\", protocol {1} to {2}",
|
||||||
121: "Ended local relay session \"{0}\", protocol {1} to {2}, {3} second(s)",
|
121: "Ended local relay session \"{0}\", protocol {1} to {2}, {3} second(s)",
|
||||||
122: "Left the desktop multiplex session after {0} second(s).",
|
122: "Left the desktop multiplex session after {0} second(s).", // No longer in use, replaced with 144
|
||||||
123: "Left Web-SSH session after {0} second(s).",
|
123: "Left Web-SSH session after {0} second(s).",
|
||||||
124: "Left Web-SFTP session after {0} second(s).",
|
124: "Left Web-SFTP session after {0} second(s).",
|
||||||
125: "Left Web-RDP session after {0} second(s).",
|
125: "Left Web-RDP session after {0} second(s).",
|
||||||
@ -13479,7 +13479,12 @@
|
|||||||
139: "Added device share {0} recurring weekly.",
|
139: "Added device share {0} recurring weekly.",
|
||||||
140: "Changed device {0} from group {1}: {2}",
|
140: "Changed device {0} from group {1}: {2}",
|
||||||
141: "Intel(r) AMT policy change",
|
141: "Intel(r) AMT policy change",
|
||||||
142: "Device group {0} was changed: {1}"
|
142: "Device group {0} was changed: {1}",
|
||||||
|
143: "Joined desktop multiplex session \"{0}\"",
|
||||||
|
144: "Left the desktop multiplex session \"{0}\" after {0} second(s).",
|
||||||
|
145: "Started desktop multiplex session \"{0}\"",
|
||||||
|
146: "Finished recording session \"{0}\", {0} second(s)",
|
||||||
|
147: "Closed desktop multiplex session \"{0}\", {0} second(s)"
|
||||||
};
|
};
|
||||||
|
|
||||||
var eventsShortMessageId = {
|
var eventsShortMessageId = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user