@boxitworld/commons-backend 1.0.43 → 1.0.44

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.
@@ -4,6 +4,8 @@ interface SocketMonitoringConfig {
4
4
  autoReconnect?: boolean;
5
5
  reconnectInterval?: number;
6
6
  maxReconnectAttempts?: number;
7
+ enableReconnection?: boolean;
8
+ enableHeartbeat?: boolean;
7
9
  onConnected?: (data: any) => void;
8
10
  onDisconnected?: (reason: string) => void;
9
11
  onStats?: (stats: any) => void;
@@ -20,6 +22,14 @@ export declare class SocketMonitoringService {
20
22
  private sessionId;
21
23
  private startTime;
22
24
  private currentToken;
25
+ private heartbeatInterval;
26
+ private lastHeartbeat;
27
+ private connectionLostTimeout;
28
+ private isReconnecting;
29
+ private maxReconnectDelay;
30
+ private heartbeatFrequency;
31
+ private enableReconnection;
32
+ private enableHeartbeat;
23
33
  private readonly socketUrl;
24
34
  private readonly loginUrl;
25
35
  private readonly username;
@@ -31,6 +41,8 @@ export declare class SocketMonitoringService {
31
41
  private performLogin;
32
42
  private initializeSocket;
33
43
  private setupSocketEvents;
44
+ private handleDisconnection;
45
+ private setupErrorHandling;
34
46
  private scheduleReconnect;
35
47
  reportActivity(action: string, details?: any, lockerId?: string): void;
36
48
  getServiceStats(): {
@@ -40,11 +52,43 @@ export declare class SocketMonitoringService {
40
52
  uptime: number;
41
53
  startTime: Date;
42
54
  };
55
+ private startHeartbeat;
56
+ private stopHeartbeat;
43
57
  stopSocketMonitoring(): void;
44
58
  restartSocketMonitoring(): Promise<void>;
45
59
  refreshToken(): Promise<void>;
46
60
  getCurrentToken(): string | null;
47
61
  isHealthy(): boolean;
62
+ forceReconnect(): Promise<void>;
63
+ getConnectionStatus(): {
64
+ isConnected: boolean;
65
+ isReconnecting: boolean;
66
+ reconnectAttempts: number;
67
+ maxReconnectAttempts: number;
68
+ lastHeartbeat: Date | null;
69
+ uptime: number;
70
+ hasValidToken: boolean;
71
+ enableReconnection: boolean;
72
+ enableHeartbeat: boolean;
73
+ };
74
+ updateReconnectionConfig(config: {
75
+ maxReconnectAttempts?: number;
76
+ reconnectInterval?: number;
77
+ heartbeatFrequency?: number;
78
+ maxReconnectDelay?: number;
79
+ enableReconnection?: boolean;
80
+ enableHeartbeat?: boolean;
81
+ }): void;
82
+ setReconnectionEnabled(enabled: boolean): void;
83
+ setHeartbeatEnabled(enabled: boolean): void;
84
+ getReconnectionConfig(): {
85
+ enableReconnection: boolean;
86
+ enableHeartbeat: boolean;
87
+ maxReconnectAttempts: number;
88
+ reconnectInterval: number;
89
+ heartbeatFrequency: number;
90
+ maxReconnectDelay: number;
91
+ };
48
92
  }
49
93
  export declare function runSocketMonitoring(config?: SocketMonitoringConfig): Promise<SocketMonitoringService>;
50
94
  export declare function reportSocketActivity(action: string, details?: any, lockerId?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"socketMonitoring.d.ts","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"AAIA,UAAU,sBAAsB;IAE9B,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;IAG3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO;WA2BO,WAAW,CAAC,MAAM,GAAE,sBAA2B,GAAG,uBAAuB;IAU1E,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;YAqCnC,oBAAoB;YAiBpB,YAAY;YA8BZ,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;AAMD,wBAAsB,mBAAmB,CAAC,MAAM,GAAE,sBAA2B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAI/G;AAKD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAO3F"}
1
+ {"version":3,"file":"socketMonitoring.d.ts","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"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"}
@@ -16,12 +16,27 @@ class SocketMonitoringService {
16
16
  this.reconnectAttempts = 0;
17
17
  this.reconnectTimeout = null;
18
18
  this.currentToken = null;
19
+ this.heartbeatInterval = null;
20
+ this.lastHeartbeat = null;
21
+ this.connectionLostTimeout = null;
22
+ this.isReconnecting = false;
23
+ this.maxReconnectDelay = 30000;
24
+ this.heartbeatFrequency = 30000;
25
+ this.enableReconnection = true;
26
+ this.enableHeartbeat = true;
19
27
  this.config = {
20
28
  autoReconnect: true,
21
29
  reconnectInterval: 5000,
22
30
  maxReconnectAttempts: 10,
31
+ enableReconnection: true,
32
+ enableHeartbeat: true,
23
33
  ...config
24
34
  };
35
+ const socketMonitoringEnabled = process.env['SOCKET_MONITORING_ENABLED']?.toLowerCase() === 'true' ||
36
+ process.env['SOCKET_MONITORING_ENABLED'] === '1' ||
37
+ process.env['SOCKET_MONITORING_ENABLED'] === undefined;
38
+ this.enableReconnection = this.config.enableReconnection ?? socketMonitoringEnabled;
39
+ this.enableHeartbeat = this.config.enableHeartbeat ?? socketMonitoringEnabled;
25
40
  this.socketUrl = process.env['WS_MONITORING_API'] || 'http://localhost:3002';
26
41
  this.loginUrl = process.env['MONITORING_API'] || 'http://localhost:3002';
27
42
  this.username = process.env['API_USER'] || '';
@@ -29,6 +44,10 @@ class SocketMonitoringService {
29
44
  this.currentToken = null;
30
45
  this.sessionId = config.sessionId || `session_${Date.now()}`;
31
46
  this.startTime = new Date();
47
+ (0, logs_1.logs)(`🔧 Socket Monitoring: ${socketMonitoringEnabled ? '🟢 ENABLED' : '🔴 DISABLED'}`);
48
+ if (socketMonitoringEnabled) {
49
+ (0, logs_1.logs)(` Reconnection & Heartbeat: Active`);
50
+ }
32
51
  if (!this.currentToken && (!this.username || !this.password)) {
33
52
  throw new Error('❌ No authentication method available. Provide JWT_TOKEN or API_USERNAME/API_PASSWORD environment variables');
34
53
  }
@@ -127,8 +146,13 @@ class SocketMonitoringService {
127
146
  this.socket.onFrontendConnected((data) => {
128
147
  this.isConnected = true;
129
148
  this.reconnectAttempts = 0;
149
+ this.isReconnecting = false;
150
+ this.lastHeartbeat = new Date();
130
151
  (0, logs_1.logs)(`✅ Socket connected successfully`);
131
152
  (0, logs_1.logsEnhanced)(`🔗 Frontend connected: ${JSON.stringify(data)}`, 1, true);
153
+ if (this.enableHeartbeat) {
154
+ this.startHeartbeat();
155
+ }
132
156
  this.config.onConnected?.(data);
133
157
  this.reportActivity('FRONTEND_CONNECTED', {
134
158
  sessionId: data.sessionId,
@@ -143,26 +167,60 @@ class SocketMonitoringService {
143
167
  this.socket.onSessionReportReceived((data) => {
144
168
  (0, logs_1.logs)(`📝 Session report confirmed: ${data.action}`);
145
169
  });
170
+ this.socket.disconnect((reason) => {
171
+ this.handleDisconnection(reason);
172
+ });
173
+ this.setupErrorHandling();
174
+ }
175
+ handleDisconnection(reason) {
176
+ this.isConnected = false;
177
+ this.stopHeartbeat();
178
+ (0, logs_1.logs)(`🔌 Socket disconnected: ${reason}`);
179
+ this.config.onDisconnected?.(reason);
180
+ if (!this.isReconnecting && this.config.autoReconnect && this.enableReconnection) {
181
+ this.isReconnecting = true;
182
+ (0, logs_1.logs)(`🔄 Starting reconnection process...`);
183
+ this.scheduleReconnect();
184
+ }
185
+ else if (!this.enableReconnection) {
186
+ (0, logs_1.logs)(`⏸️ Reconnection is disabled, not attempting to reconnect`);
187
+ }
188
+ }
189
+ setupErrorHandling() {
146
190
  }
147
191
  scheduleReconnect() {
148
192
  if (this.reconnectTimeout) {
149
193
  clearTimeout(this.reconnectTimeout);
150
194
  }
195
+ if (this.reconnectAttempts >= this.config.maxReconnectAttempts) {
196
+ (0, logs_1.logs)(`❌ Max reconnection attempts reached (${this.config.maxReconnectAttempts})`);
197
+ this.isReconnecting = false;
198
+ this.config.onError?.(new Error('Max reconnection attempts reached'));
199
+ return;
200
+ }
151
201
  this.reconnectAttempts++;
152
- const delay = this.config.reconnectInterval * this.reconnectAttempts;
202
+ const baseDelay = this.config.reconnectInterval || 1000;
203
+ const exponentialDelay = baseDelay * Math.pow(2, this.reconnectAttempts - 1);
204
+ const delay = Math.min(exponentialDelay, this.maxReconnectDelay);
153
205
  (0, logs_1.logs)(`🔄 Scheduling reconnection attempt ${this.reconnectAttempts}/${this.config.maxReconnectAttempts} in ${delay}ms`);
154
206
  this.reconnectTimeout = setTimeout(async () => {
155
207
  try {
208
+ (0, logs_1.logs)(`🔄 Attempting reconnection ${this.reconnectAttempts}/${this.config.maxReconnectAttempts}...`);
209
+ if (this.socket) {
210
+ this.socket.unregisterHandler();
211
+ this.socket = null;
212
+ }
213
+ await this.ensureAuthentication();
156
214
  await this.initializeSocket();
215
+ (0, logs_1.logs)(`✅ Reconnection attempt ${this.reconnectAttempts} successful`);
157
216
  }
158
217
  catch (error) {
159
218
  (0, logs_1.logs)(`❌ Reconnection attempt ${this.reconnectAttempts} failed: ${error}`);
160
- if (this.reconnectAttempts < this.config.maxReconnectAttempts) {
161
- this.scheduleReconnect();
162
- }
163
- else {
164
- (0, logs_1.logs)(`❌ Max reconnection attempts reached (${this.config.maxReconnectAttempts})`);
219
+ if (error instanceof Error && error.message.includes('Authentication failed')) {
220
+ (0, logs_1.logs)(`🔐 Authentication error during reconnection, refreshing token...`);
221
+ this.currentToken = null;
165
222
  }
223
+ this.scheduleReconnect();
166
224
  }
167
225
  }, delay);
168
226
  }
@@ -192,9 +250,48 @@ class SocketMonitoringService {
192
250
  startTime: this.startTime
193
251
  };
194
252
  }
253
+ startHeartbeat() {
254
+ this.stopHeartbeat();
255
+ this.heartbeatInterval = setInterval(() => {
256
+ if (!this.isConnected) {
257
+ this.stopHeartbeat();
258
+ return;
259
+ }
260
+ const now = new Date();
261
+ const timeSinceLastHeartbeat = this.lastHeartbeat ?
262
+ now.getTime() - this.lastHeartbeat.getTime() : 0;
263
+ if (timeSinceLastHeartbeat > 120000) {
264
+ (0, logs_1.logs)(`💔 Heartbeat timeout detected, connection may be lost`);
265
+ this.handleDisconnection('heartbeat_timeout');
266
+ return;
267
+ }
268
+ try {
269
+ this.reportActivity('HEARTBEAT', { timestamp: now.getTime() });
270
+ this.lastHeartbeat = now;
271
+ (0, logs_1.logs)(`💓 Heartbeat sent`);
272
+ }
273
+ catch (error) {
274
+ (0, logs_1.logs)(`❌ Failed to send heartbeat: ${error}`);
275
+ this.handleDisconnection('heartbeat_failed');
276
+ }
277
+ }, this.heartbeatFrequency);
278
+ (0, logs_1.logs)(`💓 Heartbeat started (every ${this.heartbeatFrequency}ms)`);
279
+ }
280
+ stopHeartbeat() {
281
+ if (this.heartbeatInterval) {
282
+ clearInterval(this.heartbeatInterval);
283
+ this.heartbeatInterval = null;
284
+ (0, logs_1.logs)(`💔 Heartbeat stopped`);
285
+ }
286
+ if (this.connectionLostTimeout) {
287
+ clearTimeout(this.connectionLostTimeout);
288
+ this.connectionLostTimeout = null;
289
+ }
290
+ }
195
291
  stopSocketMonitoring() {
196
292
  try {
197
293
  this.reportActivity('SOCKET_MONITORING_STOPPING');
294
+ this.stopHeartbeat();
198
295
  if (this.reconnectTimeout) {
199
296
  clearTimeout(this.reconnectTimeout);
200
297
  this.reconnectTimeout = null;
@@ -204,6 +301,7 @@ class SocketMonitoringService {
204
301
  this.socket = null;
205
302
  }
206
303
  this.isConnected = false;
304
+ this.isReconnecting = false;
207
305
  (0, logs_1.logs)(`🛑 Socket Monitoring Service stopped`);
208
306
  }
209
307
  catch (error) {
@@ -236,6 +334,109 @@ class SocketMonitoringService {
236
334
  isHealthy() {
237
335
  return this.isConnected && this.socket !== null && this.currentToken !== null;
238
336
  }
337
+ async forceReconnect() {
338
+ (0, logs_1.logs)(`🔄 Forcing immediate reconnection...`);
339
+ if (this.reconnectTimeout) {
340
+ clearTimeout(this.reconnectTimeout);
341
+ this.reconnectTimeout = null;
342
+ }
343
+ this.isReconnecting = false;
344
+ this.reconnectAttempts = 0;
345
+ if (this.isConnected) {
346
+ this.handleDisconnection('force_reconnect');
347
+ }
348
+ else {
349
+ this.isReconnecting = true;
350
+ this.scheduleReconnect();
351
+ }
352
+ }
353
+ getConnectionStatus() {
354
+ return {
355
+ isConnected: this.isConnected,
356
+ isReconnecting: this.isReconnecting,
357
+ reconnectAttempts: this.reconnectAttempts,
358
+ maxReconnectAttempts: this.config.maxReconnectAttempts || 10,
359
+ lastHeartbeat: this.lastHeartbeat,
360
+ uptime: Date.now() - this.startTime.getTime(),
361
+ hasValidToken: this.currentToken !== null,
362
+ enableReconnection: this.enableReconnection,
363
+ enableHeartbeat: this.enableHeartbeat
364
+ };
365
+ }
366
+ updateReconnectionConfig(config) {
367
+ if (config.maxReconnectAttempts !== undefined) {
368
+ this.config.maxReconnectAttempts = config.maxReconnectAttempts;
369
+ }
370
+ if (config.reconnectInterval !== undefined) {
371
+ this.config.reconnectInterval = config.reconnectInterval;
372
+ }
373
+ if (config.heartbeatFrequency !== undefined) {
374
+ this.heartbeatFrequency = config.heartbeatFrequency;
375
+ if (this.isConnected && this.enableHeartbeat) {
376
+ this.startHeartbeat();
377
+ }
378
+ }
379
+ if (config.maxReconnectDelay !== undefined) {
380
+ this.maxReconnectDelay = config.maxReconnectDelay;
381
+ }
382
+ if (config.enableReconnection !== undefined) {
383
+ this.enableReconnection = config.enableReconnection;
384
+ this.config.enableReconnection = config.enableReconnection;
385
+ (0, logs_1.logs)(`🔄 Reconnection ${config.enableReconnection ? 'enabled' : 'disabled'}`);
386
+ }
387
+ if (config.enableHeartbeat !== undefined) {
388
+ this.enableHeartbeat = config.enableHeartbeat;
389
+ this.config.enableHeartbeat = config.enableHeartbeat;
390
+ if (this.isConnected) {
391
+ if (config.enableHeartbeat) {
392
+ (0, logs_1.logs)(`💓 Heartbeat enabled, starting...`);
393
+ this.startHeartbeat();
394
+ }
395
+ else {
396
+ (0, logs_1.logs)(`💔 Heartbeat disabled, stopping...`);
397
+ this.stopHeartbeat();
398
+ }
399
+ }
400
+ }
401
+ (0, logs_1.logs)(`⚙️ Reconnection config updated: ${JSON.stringify(config)}`);
402
+ }
403
+ setReconnectionEnabled(enabled) {
404
+ this.enableReconnection = enabled;
405
+ this.config.enableReconnection = enabled;
406
+ if (!enabled && this.isReconnecting) {
407
+ if (this.reconnectTimeout) {
408
+ clearTimeout(this.reconnectTimeout);
409
+ this.reconnectTimeout = null;
410
+ }
411
+ this.isReconnecting = false;
412
+ (0, logs_1.logs)(`🛑 Reconnection process stopped`);
413
+ }
414
+ (0, logs_1.logs)(`🔄 Reconnection ${enabled ? 'enabled' : 'disabled'}`);
415
+ }
416
+ setHeartbeatEnabled(enabled) {
417
+ this.enableHeartbeat = enabled;
418
+ this.config.enableHeartbeat = enabled;
419
+ if (this.isConnected) {
420
+ if (enabled) {
421
+ (0, logs_1.logs)(`💓 Heartbeat enabled, starting...`);
422
+ this.startHeartbeat();
423
+ }
424
+ else {
425
+ (0, logs_1.logs)(`💔 Heartbeat disabled, stopping...`);
426
+ this.stopHeartbeat();
427
+ }
428
+ }
429
+ }
430
+ getReconnectionConfig() {
431
+ return {
432
+ enableReconnection: this.enableReconnection,
433
+ enableHeartbeat: this.enableHeartbeat,
434
+ maxReconnectAttempts: this.config.maxReconnectAttempts || 10,
435
+ reconnectInterval: this.config.reconnectInterval || 5000,
436
+ heartbeatFrequency: this.heartbeatFrequency,
437
+ maxReconnectDelay: this.maxReconnectDelay
438
+ };
439
+ }
239
440
  }
240
441
  exports.SocketMonitoringService = SocketMonitoringService;
241
442
  async function runSocketMonitoring(config = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"socketMonitoring.js","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketMonitoring.js","sourceRoot":"","sources":["../../src/helpers/socketMonitoring.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@boxitworld/commons-backend",
3
- "version": "1.0.43",
3
+ "version": "1.0.44",
4
4
  "description": "Common interfaces and functions for BoxitWorld backend applications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",