@futdevpro/nts-dynamo 1.6.44 → 1.6.46

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.
Files changed (30) hide show
  1. package/lib/_constants/mocks/socket-client.mock.js +1 -1
  2. package/lib/_constants/mocks/socket-client.mock.js.map +1 -1
  3. package/lib/_enums/http/socket-event-type.enum.d.ts +1 -1
  4. package/lib/_enums/http/socket-event-type.enum.d.ts.map +1 -1
  5. package/lib/_enums/http/socket-event-type.enum.js +12 -12
  6. package/lib/_enums/http/socket-event-type.enum.js.map +1 -1
  7. package/lib/_models/control-models/socket-event.control-model.d.ts +6 -5
  8. package/lib/_models/control-models/socket-event.control-model.d.ts.map +1 -1
  9. package/lib/_models/control-models/socket-event.control-model.js +15 -19
  10. package/lib/_models/control-models/socket-event.control-model.js.map +1 -1
  11. package/lib/_models/control-models/socket-presence.control-model.d.ts.map +1 -1
  12. package/lib/_models/control-models/socket-presence.control-model.js +12 -4
  13. package/lib/_models/control-models/socket-presence.control-model.js.map +1 -1
  14. package/lib/_services/core/api.service.js +9 -9
  15. package/lib/_services/core/api.service.js.map +1 -1
  16. package/lib/_services/socket/socket-client.service.js +6 -6
  17. package/lib/_services/socket/socket-client.service.js.map +1 -1
  18. package/lib/_services/socket/socket-server.service.d.ts +3 -3
  19. package/lib/_services/socket/socket-server.service.d.ts.map +1 -1
  20. package/lib/_services/socket/socket-server.service.js +46 -31
  21. package/lib/_services/socket/socket-server.service.js.map +1 -1
  22. package/lib/tsconfig.tsbuildinfo +1 -1
  23. package/package.json +1 -1
  24. package/src/_constants/mocks/socket-client.mock.ts +2 -2
  25. package/src/_enums/http/socket-event-type.enum.ts +2 -1
  26. package/src/_models/control-models/socket-event.control-model.ts +18 -22
  27. package/src/_models/control-models/socket-presence.control-model.ts +13 -4
  28. package/src/_services/core/api.service.ts +9 -9
  29. package/src/_services/socket/socket-client.service.ts +7 -7
  30. package/src/_services/socket/socket-server.service.ts +56 -31
@@ -62,19 +62,18 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
62
62
  var _a, _b;
63
63
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
64
64
  try {
65
- const connectEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.connection);
65
+ const connectEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DynamoNTS_SocketEventKey.connection);
66
66
  if (0 <= connectEventIndex) {
67
67
  this.connectEvent = this.incomingEvents.splice(connectEventIndex)[0];
68
68
  }
69
69
  else {
70
70
  this.connectEvent = new socket_event_control_model_1.DynamoNTS_SocketEvent({
71
- name: 'connect',
72
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.connection,
71
+ eventKey: socket_event_type_enum_1.DynamoNTS_SocketEventKey.connection,
73
72
  });
74
73
  }
75
74
  this.connectEvent.socketName = this.params.name;
76
75
  if (this.getPresenceFromSubscrioptionEventContent) {
77
- const subscriptionEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe);
76
+ const subscriptionEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DynamoNTS_SocketEventKey.subscribe);
78
77
  if (0 <= subscriptionEventIndex) {
79
78
  this.subscriptionEvent = this.incomingEvents.splice(subscriptionEventIndex)[0];
80
79
  fsm_dynamo_1.Dynamo_Log.error(`You should not set the subscription event, but the subscriptions tasks, ` +
@@ -82,8 +81,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
82
81
  }
83
82
  else {
84
83
  this.subscriptionEvent = new socket_event_control_model_1.DynamoNTS_SocketEvent({
85
- name: 'subscribe',
86
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe
84
+ eventKey: socket_event_type_enum_1.DynamoNTS_SocketEventKey.subscribe
87
85
  });
88
86
  }
89
87
  if (this.getSubscriptionPreProcessess) {
@@ -92,24 +90,22 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
92
90
  if (this.getSubscriptionTasks) {
93
91
  this.subscriptionEvent.tasks.push(...this.getSubscriptionTasks());
94
92
  }
95
- const disconnectEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.disconnect);
93
+ const disconnectEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DynamoNTS_SocketEventKey.disconnect);
96
94
  if (0 <= disconnectEventIndex) {
97
- this.incomingEvents[disconnectEventIndex].tasks.push(this.removeSubscriptionOnDisconnect);
95
+ this.incomingEvents[disconnectEventIndex].tasks.push(this.removeSubscription);
98
96
  }
99
97
  else {
100
98
  this.incomingEvents.push(new socket_event_control_model_1.DynamoNTS_SocketEvent({
101
- name: 'disconnect',
102
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.disconnect,
99
+ eventKey: socket_event_type_enum_1.DynamoNTS_SocketEventKey.disconnect,
103
100
  tasks: [
104
- this.removeSubscriptionOnDisconnect
101
+ this.removeSubscription
105
102
  ]
106
103
  }));
107
104
  }
108
- const errorEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.error);
105
+ const errorEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DynamoNTS_SocketEventKey.error);
109
106
  if (errorEventIndex == -1 && this.errorHandling) {
110
107
  this.incomingEvents.push(new socket_event_control_model_1.DynamoNTS_SocketEvent({
111
- name: 'error',
112
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.error,
108
+ eventKey: socket_event_type_enum_1.DynamoNTS_SocketEventKey.error,
113
109
  tasks: [
114
110
  this.errorHandling
115
111
  ]
@@ -136,12 +132,12 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
136
132
  try {
137
133
  if (this.logFn)
138
134
  console.log('\nfn:. setupSocketServer');
139
- newSocketServer.on(socket_event_type_enum_1.DynamoNTS_SocketEventType.connection, (socket) => tslib_1.__awaiter(this, void 0, void 0, function* () {
135
+ newSocketServer.on(socket_event_type_enum_1.DynamoNTS_SocketEventKey.connection, (socket) => tslib_1.__awaiter(this, void 0, void 0, function* () {
140
136
  try {
141
137
  let issuer;
142
138
  yield this.connectEvent.executeEventTasks(socket);
143
139
  if (this.getPresenceFromSubscrioptionEventContent) {
144
- socket.on(socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
140
+ socket.on(socket_event_type_enum_1.DynamoNTS_SocketEventKey.subscribe, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
145
141
  try {
146
142
  /**
147
143
  * usually socket logs are in event.executeEventTasks(),
@@ -149,32 +145,35 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
149
145
  * to be able to check content before getPresenceFromSubscrioptionEventContent
150
146
  */
151
147
  if (global_settings_const_1.dynamoNTS_globalSettings.logMainSocketEvents || global_settings_const_1.dynamoNTS_globalSettings.logAllSocketEvent || global_settings_const_1.dynamoNTS_globalSettings.logSocketEventContent) {
152
- fsm_dynamo_1.Dynamo_Log.log(`---> incoming socket(${this.params.name}) event: ${socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe};\ncontent:`, content);
148
+ fsm_dynamo_1.Dynamo_Log.log(`---> incoming socket(${this.params.name}) event: ${socket_event_type_enum_1.DynamoNTS_SocketEventKey.subscribe};\ncontent:`, content);
153
149
  }
154
150
  else {
155
- fsm_dynamo_1.Dynamo_Log.log(`---> incoming socket(${this.params.name}) event: ${socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe}`);
151
+ fsm_dynamo_1.Dynamo_Log.log(`---> incoming socket(${this.params.name}) event: ${socket_event_type_enum_1.DynamoNTS_SocketEventKey.subscribe}`);
156
152
  }
157
153
  const presence = yield this.getPresenceFromSubscrioptionEventContent(content, socket);
158
154
  issuer = presence.issuerId;
159
- this.socketSubscription(presence);
155
+ this.addSocketToPresence(presence);
160
156
  yield this.subscriptionEvent.executeEventTasks(content, issuer);
157
+ socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventKey.subscriptionSuccessful, 'subscribe was successful', error => {
158
+ fsm_dynamo_1.Dynamo_Log.error(`Emitting subscriptionSuccessful event failed!\nerror:`, error);
159
+ });
161
160
  fsm_dynamo_1.Dynamo_Log.success(`<===> socket subscription successfull (${issuer})`);
162
161
  }
163
162
  catch (error) {
164
163
  fsm_dynamo_1.Dynamo_Log.error(`Socket Subscription failed: ${this.params.name} (${this.params.port}) will disconnect now...`, error);
165
- socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
164
+ socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventKey.error, error);
166
165
  socket.disconnect();
167
166
  }
168
167
  }));
169
168
  }
170
169
  this.incomingEvents.forEach((event) => {
171
- socket.on(event.eventType, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
170
+ socket.on(event.eventKey, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
172
171
  try {
173
172
  yield event.executeEventTasks(content, issuer);
174
173
  }
175
174
  catch (error) {
176
175
  fsm_dynamo_1.Dynamo_Log.error(`Socket Event failed: ${this.params.name} (${this.params.port})`, error);
177
- socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
176
+ socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventKey.error, error);
178
177
  }
179
178
  }));
180
179
  });
@@ -184,7 +183,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
184
183
  }
185
184
  catch (error) {
186
185
  fsm_dynamo_1.Dynamo_Log.error(`Socket Connection failed: ${this.params.name} (${this.params.port}) will disconnect now...`, error);
187
- socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
186
+ socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventKey.error, error);
188
187
  socket.disconnect();
189
188
  }
190
189
  }));
@@ -207,7 +206,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
207
206
  }
208
207
  });
209
208
  }
210
- socketSubscription(newPresence) {
209
+ addSocketToPresence(newPresence) {
211
210
  var _a, _b;
212
211
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
213
212
  try {
@@ -225,7 +224,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
225
224
  }
226
225
  });
227
226
  }
228
- removeSubscriptionOnDisconnect(socket, issuer) {
227
+ removeSubscription(socket, issuer) {
229
228
  var _a, _b;
230
229
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
231
230
  try {
@@ -250,17 +249,20 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
250
249
  if (activePresence.sockets.length === 0) {
251
250
  this.presences.splice(activePresenceIndex);
252
251
  }
252
+ socket.disconnect();
253
253
  }
254
254
  catch (error) {
255
255
  throw new fsm_dynamo_1.Dynamo_Error(Object.assign(Object.assign({}, this._getDefaultErrorSettings('sendEventForId', error, issuer)), { errorCode: 'NTS-SSS-200', message: `Socket Subscription Removal failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})` }));
256
256
  }
257
257
  });
258
258
  }
259
- emitEvent(event, content) {
259
+ emitServerEvent(event, content) {
260
260
  var _a, _b;
261
261
  try {
262
- fsm_dynamo_1.Dynamo_Log.log(` <--- emitting socket event: ${event} (${this.params.name})`);
263
- this.openSocketServer.emit(event, content);
262
+ fsm_dynamo_1.Dynamo_Log.log(` <=-- emitting server socket event: ${event} (${this.params.name})`);
263
+ this.openSocketServer.emit(event, content, error => {
264
+ fsm_dynamo_1.Dynamo_Log.error(`Emitting server event '${event}' failed!\nerror:`, error);
265
+ });
264
266
  }
265
267
  catch (error) {
266
268
  throw new fsm_dynamo_1.Dynamo_Error(Object.assign(Object.assign({}, this._getDefaultErrorSettings('emitEvent', error)), { errorCode: 'NTS-SSS-500', message: `Socket Event Emit (${event}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})` }));
@@ -278,14 +280,14 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
278
280
  emitError(presenceIssuerId, error) {
279
281
  var _a, _b;
280
282
  try {
281
- this.sendEventForId(presenceIssuerId, socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
283
+ this.sendEventForId(presenceIssuerId, socket_event_type_enum_1.DynamoNTS_SocketEventKey.error, error);
282
284
  }
283
285
  catch (error) {
284
286
  throw new fsm_dynamo_1.Dynamo_Error(Object.assign(Object.assign({}, this._getDefaultErrorSettings('emitError', error, presenceIssuerId)), { errorCode: 'NTS-SSS-700', message: `Socket Error Emit (id: ${presenceIssuerId}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})` }));
285
287
  }
286
288
  }
287
289
  sendEventForId(id, event, content /* , error?: (err: any) => void */) {
288
- var _a, _b;
290
+ var _a, _b, _c, _d, _e;
289
291
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
290
292
  try {
291
293
  const presence = this.presences.find((pres) => pres.issuerId === id);
@@ -303,13 +305,26 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
303
305
  }
304
306
  }
305
307
  catch (error) {
306
- throw new fsm_dynamo_1.Dynamo_Error(Object.assign(Object.assign({}, this._getDefaultErrorSettings('sendEventForId', error, content === null || content === void 0 ? void 0 : content.source)), { errorCode: 'NTS-SSS-300', message: `Socket Event Emit for id (${id}, ${event}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})` }));
308
+ try {
309
+ if (error.flag.includes('DYNAMO') && ((_a = error === null || error === void 0 ? void 0 : error.accitionalInfo) === null || _a === void 0 ? void 0 : _a.inactiveSockets)) {
310
+ const sockets = error.accitionalInfo.inactiveSockets;
311
+ yield fsm_dynamo_1.Dynamo_Array.asyncForEach(sockets, (socket) => tslib_1.__awaiter(this, void 0, void 0, function* () {
312
+ yield this.removeSubscription(socket);
313
+ }));
314
+ }
315
+ }
316
+ catch (error) {
317
+ throw new fsm_dynamo_1.Dynamo_Error(Object.assign(Object.assign({}, this._getDefaultErrorSettings('sendEventForId', error, content === null || content === void 0 ? void 0 : content.source)), { errorCode: 'NTS-SSS-310', message: `Error handling of inactive sockets failed!` +
318
+ `\n(Socket Event Emit for id (${id}, ${event}) failed: ${(_b = this.params) === null || _b === void 0 ? void 0 : _b.name} (${(_c = this.params) === null || _c === void 0 ? void 0 : _c.port}))` }));
319
+ }
320
+ throw new fsm_dynamo_1.Dynamo_Error(Object.assign(Object.assign({}, this._getDefaultErrorSettings('sendEventForId', error, content === null || content === void 0 ? void 0 : content.source)), { errorCode: 'NTS-SSS-310', message: `Socket Event Emit for id (${id}, ${event}) failed: ${(_d = this.params) === null || _d === void 0 ? void 0 : _d.name} (${(_e = this.params) === null || _e === void 0 ? void 0 : _e.port})` }));
307
321
  }
308
322
  });
309
323
  }
310
324
  broadcastEvent(event, content) {
311
325
  var _a, _b, _c, _d;
312
326
  try {
327
+ fsm_dynamo_1.Dynamo_Log.log(` <==-- broadcasting socket event: ${event} (${this.params.name})`);
313
328
  this.presences.forEach((presence) => {
314
329
  presence.emitEvent(event, content);
315
330
  });
@@ -1 +1 @@
1
- {"version":3,"file":"socket-server.service.js","sourceRoot":"","sources":["../../../src/_services/socket/socket-server.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socket-server.service.js","sourceRoot":"","sources":["../../../src/_services/socket/socket-server.service.ts"],"names":[],"mappings":"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"}