This commit is contained in:
Louis Lam
2023-12-25 01:52:00 +08:00
parent 7d91c8d037
commit 0c32171acc
7 changed files with 324 additions and 271 deletions

View File

@@ -11,7 +11,6 @@ export class ManageAgentSocketHandler extends SocketHandler {
try {
log.debug("manage-agent-socket-handler", "addAgent");
checkLogin(socket);
let manager = socket.instanceManager;
await manager.test(data.url, data.username, data.password);
await manager.add(data.url, data.username, data.password);
@@ -19,6 +18,9 @@ export class ManageAgentSocketHandler extends SocketHandler {
// connect to the agent
manager.connect(data.url, data.username, data.password);
// Refresh another sockets
// It is a bit difficult to control another browser sessions to connect/disconnect agents, so force them to refresh the page will be easier.
server.disconnectAllSocketClients(undefined, socket.id);
manager.sendAgentList();
callback({
@@ -33,11 +35,21 @@ export class ManageAgentSocketHandler extends SocketHandler {
});
// removeAgent
socket.on("removeAgent", async (data : unknown, callback : unknown) => {
socket.on("removeAgent", async (url : unknown, callback : unknown) => {
try {
log.debug("manage-agent-socket-handler", "removeAgent");
checkLogin(socket);
await socket.instanceManager.remove(data.endpoint);
let manager = socket.instanceManager;
await manager.remove(url);
server.disconnectAllSocketClients(undefined, socket.id);
manager.sendAgentList();
callback({
ok: true,
msg: "agentRemovedSuccessfully",
msgi18n: true,
});
} catch (e) {
callbackError(e, callback);
}