@boxitworld/commons-backend 1.0.39 → 1.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
interface SocketMonitoringConfig {
|
|
2
2
|
socketUrl: string;
|
|
3
|
-
token
|
|
3
|
+
token?: string;
|
|
4
|
+
loginUrl?: string;
|
|
5
|
+
username?: string;
|
|
6
|
+
password?: string;
|
|
4
7
|
appVersion?: string;
|
|
5
8
|
sessionId?: string;
|
|
6
9
|
autoReconnect?: boolean;
|
|
@@ -10,6 +13,7 @@ interface SocketMonitoringConfig {
|
|
|
10
13
|
onDisconnected?: (reason: string) => void;
|
|
11
14
|
onStats?: (stats: any) => void;
|
|
12
15
|
onError?: (error: any) => void;
|
|
16
|
+
onTokenRefreshed?: (token: string) => void;
|
|
13
17
|
}
|
|
14
18
|
export declare class SocketMonitoringService {
|
|
15
19
|
private static instance;
|
|
@@ -20,9 +24,12 @@ export declare class SocketMonitoringService {
|
|
|
20
24
|
private reconnectTimeout;
|
|
21
25
|
private sessionId;
|
|
22
26
|
private startTime;
|
|
27
|
+
private currentToken;
|
|
23
28
|
private constructor();
|
|
24
29
|
static getInstance(config?: SocketMonitoringConfig): SocketMonitoringService;
|
|
25
30
|
runSocketMonitoring(): Promise<void>;
|
|
31
|
+
private ensureAuthentication;
|
|
32
|
+
private performLogin;
|
|
26
33
|
private initializeSocket;
|
|
27
34
|
private setupSocketEvents;
|
|
28
35
|
private scheduleReconnect;
|
|
@@ -36,6 +43,8 @@ export declare class SocketMonitoringService {
|
|
|
36
43
|
};
|
|
37
44
|
stopSocketMonitoring(): void;
|
|
38
45
|
restartSocketMonitoring(): Promise<void>;
|
|
46
|
+
refreshToken(): Promise<void>;
|
|
47
|
+
getCurrentToken(): string | null;
|
|
39
48
|
isHealthy(): boolean;
|
|
40
49
|
}
|
|
41
50
|
export declare function runSocketMonitoring(config: SocketMonitoringConfig): Promise<SocketMonitoringService>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socketMonitoring.d.ts","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"socketMonitoring.d.ts","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"AAIA,UAAU,sBAAsB;IAC9B,SAAS,EAAE,MAAM,CAAC;IAElB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA0B;IACjD,OAAO,CAAC,MAAM,CAA6C;IAC3D,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAO;IACxB,OAAO,CAAC,YAAY,CAAuB;IAE3C,OAAO;WAeO,WAAW,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,uBAAuB;IAatE,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;YAoCnC,oBAAoB;YAiBpB,YAAY;YA6BZ,gBAAgB;IA0B9B,OAAO,CAAC,iBAAiB;IAgCzB,OAAO,CAAC,iBAAiB;IA2BlB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAsBtE,eAAe,IAAI;QACxB,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,IAAI,CAAC;KACjB;IAaM,oBAAoB,IAAI,IAAI;IAwBtB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAUxC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBnC,eAAe,IAAI,MAAM,GAAG,IAAI;IAOhC,SAAS,IAAI,OAAO;CAG5B;AAKD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAI1G;AAKD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAO3F"}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.SocketMonitoringService = void 0;
|
|
4
7
|
exports.runSocketMonitoring = runSocketMonitoring;
|
|
5
8
|
exports.reportSocketActivity = reportSocketActivity;
|
|
6
9
|
const socketApi_1 = require("./socketApi");
|
|
7
10
|
const logs_1 = require("./logs");
|
|
11
|
+
const axios_1 = __importDefault(require("axios"));
|
|
8
12
|
class SocketMonitoringService {
|
|
9
13
|
constructor(config) {
|
|
10
14
|
this.socket = null;
|
|
11
15
|
this.isConnected = false;
|
|
12
16
|
this.reconnectAttempts = 0;
|
|
13
17
|
this.reconnectTimeout = null;
|
|
18
|
+
this.currentToken = null;
|
|
14
19
|
this.config = {
|
|
15
20
|
autoReconnect: true,
|
|
16
21
|
reconnectInterval: 5000,
|
|
@@ -19,6 +24,7 @@ class SocketMonitoringService {
|
|
|
19
24
|
};
|
|
20
25
|
this.sessionId = config.sessionId || `session_${Date.now()}`;
|
|
21
26
|
this.startTime = new Date();
|
|
27
|
+
this.currentToken = config.token || null;
|
|
22
28
|
}
|
|
23
29
|
static getInstance(config) {
|
|
24
30
|
if (!SocketMonitoringService.instance) {
|
|
@@ -34,6 +40,7 @@ class SocketMonitoringService {
|
|
|
34
40
|
(0, logs_1.logsEnhanced)(`🔌 Starting Socket Monitoring Service`, 1, true);
|
|
35
41
|
(0, logs_1.logsEnhanced)(`📡 Socket URL: ${this.config.socketUrl}`, 1, true);
|
|
36
42
|
(0, logs_1.logsEnhanced)(`🆔 Session ID: ${this.sessionId}`, 1, true);
|
|
43
|
+
await this.ensureAuthentication();
|
|
37
44
|
await this.initializeSocket();
|
|
38
45
|
setTimeout(() => {
|
|
39
46
|
this.reportActivity('SOCKET_MONITORING_STARTED', {
|
|
@@ -54,9 +61,44 @@ class SocketMonitoringService {
|
|
|
54
61
|
}
|
|
55
62
|
}
|
|
56
63
|
}
|
|
64
|
+
async ensureAuthentication() {
|
|
65
|
+
if (this.currentToken) {
|
|
66
|
+
(0, logs_1.logs)(`🔐 Using existing token`);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (this.config.loginUrl && this.config.username && this.config.password) {
|
|
70
|
+
(0, logs_1.logs)(`🔐 Attempting login to get token...`);
|
|
71
|
+
await this.performLogin();
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
throw new Error('No token provided and no login credentials available');
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
async performLogin() {
|
|
78
|
+
try {
|
|
79
|
+
const response = await axios_1.default.post(this.config.loginUrl, {
|
|
80
|
+
username: this.config.username,
|
|
81
|
+
password: this.config.password
|
|
82
|
+
});
|
|
83
|
+
const token = response.data.token || response.data.access_token || response.data.jwt;
|
|
84
|
+
if (!token) {
|
|
85
|
+
throw new Error('No token received from login response');
|
|
86
|
+
}
|
|
87
|
+
this.currentToken = token;
|
|
88
|
+
(0, logs_1.logs)(`✅ Login successful, token obtained`);
|
|
89
|
+
this.config.onTokenRefreshed?.(token);
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
(0, logs_1.logs)(`❌ Login failed: ${error}`);
|
|
93
|
+
throw new Error(`Authentication failed: ${error}`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
57
96
|
async initializeSocket() {
|
|
58
97
|
try {
|
|
59
|
-
|
|
98
|
+
if (!this.currentToken) {
|
|
99
|
+
throw new Error('No token available for socket connection');
|
|
100
|
+
}
|
|
101
|
+
this.socket = (0, socketApi_1.SocketApi)(this.config.socketUrl, this.currentToken);
|
|
60
102
|
this.setupSocketEvents();
|
|
61
103
|
this.socket.joinFrontend({
|
|
62
104
|
appVersion: this.config.appVersion,
|
|
@@ -166,8 +208,25 @@ class SocketMonitoringService {
|
|
|
166
208
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
167
209
|
await this.runSocketMonitoring();
|
|
168
210
|
}
|
|
211
|
+
async refreshToken() {
|
|
212
|
+
if (this.config.loginUrl && this.config.username && this.config.password) {
|
|
213
|
+
(0, logs_1.logs)(`🔄 Refreshing authentication token...`);
|
|
214
|
+
await this.performLogin();
|
|
215
|
+
if (this.socket) {
|
|
216
|
+
this.socket.unregisterHandler();
|
|
217
|
+
this.socket = null;
|
|
218
|
+
}
|
|
219
|
+
await this.initializeSocket();
|
|
220
|
+
}
|
|
221
|
+
else {
|
|
222
|
+
throw new Error('Cannot refresh token: no login credentials provided');
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
getCurrentToken() {
|
|
226
|
+
return this.currentToken;
|
|
227
|
+
}
|
|
169
228
|
isHealthy() {
|
|
170
|
-
return this.isConnected && this.socket !== null;
|
|
229
|
+
return this.isConnected && this.socket !== null && this.currentToken !== null;
|
|
171
230
|
}
|
|
172
231
|
}
|
|
173
232
|
exports.SocketMonitoringService = SocketMonitoringService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socketMonitoring.js","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"socketMonitoring.js","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"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"}
|