@futdevpro/nts-dynamo 1.9.17 → 1.9.18
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.
- package/.copilot/patterns.json +1 -1
- package/README.md +2 -2
- package/build/_constants/global-settings.const.d.ts +2 -2
- package/build/_constants/global-settings.const.d.ts.map +1 -1
- package/build/_constants/global-settings.const.js +4 -4
- package/build/_constants/global-settings.const.js.map +1 -1
- package/build/_constants/mocks/app-extended-server.mock.d.ts +26 -26
- package/build/_constants/mocks/app-extended-server.mock.d.ts.map +1 -1
- package/build/_constants/mocks/app-extended-server.mock.js +29 -29
- package/build/_constants/mocks/app-extended-server.mock.js.map +1 -1
- package/build/_constants/mocks/app-params.mock.d.ts +2 -2
- package/build/_constants/mocks/app-params.mock.d.ts.map +1 -1
- package/build/_constants/mocks/app-params.mock.js +2 -2
- package/build/_constants/mocks/app-params.mock.js.map +1 -1
- package/build/_constants/mocks/app-server.mock.d.ts +28 -28
- package/build/_constants/mocks/app-server.mock.d.ts.map +1 -1
- package/build/_constants/mocks/app-server.mock.js +25 -25
- package/build/_constants/mocks/app-server.mock.js.map +1 -1
- package/build/_constants/mocks/auth-service.mock.d.ts +2 -2
- package/build/_constants/mocks/auth-service.mock.d.ts.map +1 -1
- package/build/_constants/mocks/auth-service.mock.js +1 -1
- package/build/_constants/mocks/auth-service.mock.js.map +1 -1
- package/build/_constants/mocks/controller.mock.d.ts +3 -3
- package/build/_constants/mocks/controller.mock.d.ts.map +1 -1
- package/build/_constants/mocks/controller.mock.js +5 -5
- package/build/_constants/mocks/controller.mock.js.map +1 -1
- package/build/_constants/mocks/data-model.mock.d.ts +5 -5
- package/build/_constants/mocks/data-model.mock.d.ts.map +1 -1
- package/build/_constants/mocks/data-model.mock.js +4 -4
- package/build/_constants/mocks/data-model.mock.js.map +1 -1
- package/build/_constants/mocks/email-service-collection.mock.d.ts +2 -2
- package/build/_constants/mocks/email-service-collection.mock.d.ts.map +1 -1
- package/build/_constants/mocks/email-service-collection.mock.js +1 -1
- package/build/_constants/mocks/email-service-collection.mock.js.map +1 -1
- package/build/_constants/mocks/email-service.mock.d.ts +2 -2
- package/build/_constants/mocks/email-service.mock.d.ts.map +1 -1
- package/build/_constants/mocks/email-service.mock.js +1 -1
- package/build/_constants/mocks/email-service.mock.js.map +1 -1
- package/build/_constants/mocks/endpoint.mock.d.ts +8 -8
- package/build/_constants/mocks/endpoint.mock.d.ts.map +1 -1
- package/build/_constants/mocks/endpoint.mock.js +20 -20
- package/build/_constants/mocks/endpoint.mock.js.map +1 -1
- package/build/_constants/mocks/socket-client.mock.d.ts +5 -5
- package/build/_constants/mocks/socket-client.mock.d.ts.map +1 -1
- package/build/_constants/mocks/socket-client.mock.js +4 -4
- package/build/_constants/mocks/socket-client.mock.js.map +1 -1
- package/build/_constants/mocks/socket-server.mock.d.ts +9 -9
- package/build/_constants/mocks/socket-server.mock.d.ts.map +1 -1
- package/build/_constants/mocks/socket-server.mock.js +6 -6
- package/build/_constants/mocks/socket-server.mock.js.map +1 -1
- package/build/_enums/data-model-type.enum.d.ts +1 -1
- package/build/_enums/data-model-type.enum.d.ts.map +1 -1
- package/build/_enums/data-model-type.enum.js +7 -7
- package/build/_enums/data-model-type.enum.js.map +1 -1
- package/build/_enums/data-service-function.enum.d.ts +1 -1
- package/build/_enums/data-service-function.enum.d.ts.map +1 -1
- package/build/_enums/data-service-function.enum.js +9 -9
- package/build/_enums/data-service-function.enum.js.map +1 -1
- package/build/_enums/http/http-call-type.enum.d.ts +1 -1
- package/build/_enums/http/http-call-type.enum.d.ts.map +1 -1
- package/build/_enums/http/http-call-type.enum.js +9 -9
- package/build/_enums/http/http-call-type.enum.js.map +1 -1
- package/build/_enums/http/http-response-type.enum.d.ts +1 -1
- package/build/_enums/http/http-response-type.enum.d.ts.map +1 -1
- package/build/_enums/http/http-response-type.enum.js +8 -8
- package/build/_enums/http/http-response-type.enum.js.map +1 -1
- package/build/_enums/http/socket-event-type.enum.d.ts +1 -1
- package/build/_enums/http/socket-event-type.enum.d.ts.map +1 -1
- package/build/_enums/http/socket-event-type.enum.js +14 -14
- package/build/_enums/http/socket-event-type.enum.js.map +1 -1
- package/build/_enums/route-security.enum.d.ts +1 -1
- package/build/_enums/route-security.enum.d.ts.map +1 -1
- package/build/_enums/route-security.enum.js +7 -7
- package/build/_enums/route-security.enum.js.map +1 -1
- package/build/_enums/socket-security.enum.d.ts +1 -1
- package/build/_enums/socket-security.enum.d.ts.map +1 -1
- package/build/_enums/socket-security.enum.js +6 -6
- package/build/_enums/socket-security.enum.js.map +1 -1
- package/build/_models/control-models/api-call-params.control-model.d.ts +9 -9
- package/build/_models/control-models/api-call-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/api-call-params.control-model.js +6 -6
- package/build/_models/control-models/api-call-params.control-model.js.map +1 -1
- package/build/_models/control-models/app-ext-system-controls.control-model.d.ts +5 -5
- package/build/_models/control-models/app-ext-system-controls.control-model.d.ts.map +1 -1
- package/build/_models/control-models/app-ext-system-controls.control-model.js +6 -6
- package/build/_models/control-models/app-ext-system-controls.control-model.js.map +1 -1
- package/build/_models/control-models/app-params.control-model.d.ts +2 -3
- package/build/_models/control-models/app-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/app-params.control-model.js +3 -3
- package/build/_models/control-models/app-params.control-model.js.map +1 -1
- package/build/_models/control-models/app-system-controls.control-model.d.ts +6 -6
- package/build/_models/control-models/app-system-controls.control-model.d.ts.map +1 -1
- package/build/_models/control-models/app-system-controls.control-model.js +7 -7
- package/build/_models/control-models/app-system-controls.control-model.js.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.d.ts +7 -7
- package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.js +35 -35
- package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
- package/build/_models/control-models/http-settings.control-model.d.ts +2 -2
- package/build/_models/control-models/http-settings.control-model.d.ts.map +1 -1
- package/build/_models/control-models/http-settings.control-model.js +3 -3
- package/build/_models/control-models/http-settings.control-model.js.map +1 -1
- package/build/_models/control-models/socket-client-service-params.control-model.d.ts +2 -2
- package/build/_models/control-models/socket-client-service-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-client-service-params.control-model.js +3 -3
- package/build/_models/control-models/socket-client-service-params.control-model.js.map +1 -1
- package/build/_models/control-models/socket-event.control-model.d.ts +10 -10
- package/build/_models/control-models/socket-event.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-event.control-model.js +19 -19
- package/build/_models/control-models/socket-event.control-model.js.map +1 -1
- package/build/_models/control-models/socket-presence.control-model.d.ts +1 -1
- package/build/_models/control-models/socket-presence.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-presence.control-model.js +14 -14
- package/build/_models/control-models/socket-presence.control-model.js.map +1 -1
- package/build/_models/control-models/socket-server-service-params.control-model.d.ts +4 -4
- package/build/_models/control-models/socket-server-service-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-server-service-params.control-model.js +4 -4
- package/build/_models/control-models/socket-server-service-params.control-model.js.map +1 -1
- package/build/_models/control-models/system-control.control-model.d.ts +1 -1
- package/build/_models/control-models/system-control.control-model.d.ts.map +1 -1
- package/build/_models/control-models/system-control.control-model.js +3 -3
- package/build/_models/control-models/system-control.control-model.js.map +1 -1
- package/build/_models/interfaces/certification-settings.interface.d.ts +1 -1
- package/build/_models/interfaces/certification-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/global-service-settings.interface.d.ts +13 -13
- package/build/_models/interfaces/global-service-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/global-settings.interface.d.ts +5 -5
- package/build/_models/interfaces/global-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/routing-module-settings.interface.d.ts +5 -5
- package/build/_models/interfaces/routing-module-settings.interface.d.ts.map +1 -1
- package/build/_models/types/db-filter.type.d.ts +8 -8
- package/build/_models/types/db-filter.type.d.ts.map +1 -1
- package/build/_models/types/db-update.type.d.ts +3 -3
- package/build/_models/types/db-update.type.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.controller.d.ts +3 -3
- package/build/_modules/custom-data/custom-data.controller.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.controller.js +12 -12
- package/build/_modules/custom-data/custom-data.controller.js.map +1 -1
- package/build/_modules/custom-data/custom-data.data-service.d.ts +4 -4
- package/build/_modules/custom-data/custom-data.data-service.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.data-service.js +4 -4
- package/build/_modules/custom-data/custom-data.data-service.js.map +1 -1
- package/build/_modules/custom-data/get-custom-data-routing-module.util.d.ts +3 -3
- package/build/_modules/custom-data/get-custom-data-routing-module.util.d.ts.map +1 -1
- package/build/_modules/custom-data/get-custom-data-routing-module.util.js +5 -5
- package/build/_modules/custom-data/get-custom-data-routing-module.util.js.map +1 -1
- package/build/_modules/test/get-test-routing-module.util.d.ts +3 -3
- package/build/_modules/test/get-test-routing-module.util.d.ts.map +1 -1
- package/build/_modules/test/get-test-routing-module.util.js +5 -5
- package/build/_modules/test/get-test-routing-module.util.js.map +1 -1
- package/build/_modules/test/test.controller.d.ts +3 -3
- package/build/_modules/test/test.controller.d.ts.map +1 -1
- package/build/_modules/test/test.controller.js +24 -24
- package/build/_modules/test/test.controller.js.map +1 -1
- package/build/_modules/usage/get-usage-routing-module.util.d.ts +3 -3
- package/build/_modules/usage/get-usage-routing-module.util.d.ts.map +1 -1
- package/build/_modules/usage/get-usage-routing-module.util.js +5 -5
- package/build/_modules/usage/get-usage-routing-module.util.js.map +1 -1
- package/build/_modules/usage/usage.controller.d.ts +3 -3
- package/build/_modules/usage/usage.controller.d.ts.map +1 -1
- package/build/_modules/usage/usage.controller.js +23 -23
- package/build/_modules/usage/usage.controller.js.map +1 -1
- package/build/_modules/usage/usage.data-service.d.ts +9 -9
- package/build/_modules/usage/usage.data-service.d.ts.map +1 -1
- package/build/_modules/usage/usage.data-service.js +13 -13
- package/build/_modules/usage/usage.data-service.js.map +1 -1
- package/build/_services/base/data.service.d.ts +14 -14
- package/build/_services/base/data.service.d.ts.map +1 -1
- package/build/_services/base/data.service.js +45 -45
- package/build/_services/base/data.service.js.map +1 -1
- package/build/_services/base/db.service.d.ts +15 -15
- package/build/_services/base/db.service.d.ts.map +1 -1
- package/build/_services/base/db.service.js +38 -38
- package/build/_services/base/db.service.js.map +1 -1
- package/build/_services/base/db.service.spec.js +1 -1
- package/build/_services/base/singleton.service.d.ts +1 -1
- package/build/_services/base/singleton.service.d.ts.map +1 -1
- package/build/_services/base/singleton.service.js +3 -3
- package/build/_services/base/singleton.service.js.map +1 -1
- package/build/_services/core/api.service.d.ts +6 -6
- package/build/_services/core/api.service.d.ts.map +1 -1
- package/build/_services/core/api.service.js +50 -50
- package/build/_services/core/api.service.js.map +1 -1
- package/build/_services/core/auth.service.d.ts +8 -8
- package/build/_services/core/auth.service.d.ts.map +1 -1
- package/build/_services/core/auth.service.js +5 -5
- package/build/_services/core/auth.service.js.map +1 -1
- package/build/_services/core/email.service.d.ts +8 -8
- package/build/_services/core/email.service.d.ts.map +1 -1
- package/build/_services/core/email.service.js +28 -28
- package/build/_services/core/email.service.js.map +1 -1
- package/build/_services/core/global.service.d.ts +21 -21
- package/build/_services/core/global.service.d.ts.map +1 -1
- package/build/_services/core/global.service.js +31 -31
- package/build/_services/core/global.service.js.map +1 -1
- package/build/_services/core/service-collection.service.d.ts +2 -2
- package/build/_services/core/service-collection.service.d.ts.map +1 -1
- package/build/_services/core/service-collection.service.js +3 -3
- package/build/_services/core/service-collection.service.js.map +1 -1
- package/build/_services/route/controller.service.d.ts +8 -8
- package/build/_services/route/controller.service.d.ts.map +1 -1
- package/build/_services/route/controller.service.js +6 -6
- package/build/_services/route/controller.service.js.map +1 -1
- package/build/_services/route/routing-module.service.d.ts +10 -10
- package/build/_services/route/routing-module.service.d.ts.map +1 -1
- package/build/_services/route/routing-module.service.js +32 -32
- package/build/_services/route/routing-module.service.js.map +1 -1
- package/build/_services/server/app-extended.server.d.ts +13 -13
- package/build/_services/server/app-extended.server.d.ts.map +1 -1
- package/build/_services/server/app-extended.server.js +46 -46
- package/build/_services/server/app-extended.server.js.map +1 -1
- package/build/_services/server/app-extended.server.spec.js +7 -7
- package/build/_services/server/app-extended.server.spec.js.map +1 -1
- package/build/_services/server/app.server.d.ts +39 -39
- package/build/_services/server/app.server.d.ts.map +1 -1
- package/build/_services/server/app.server.js +139 -139
- package/build/_services/server/app.server.js.map +1 -1
- package/build/_services/server/app.server.spec.js +8 -8
- package/build/_services/server/app.server.spec.js.map +1 -1
- package/build/_services/shared.service.spec.js +5 -5
- package/build/_services/shared.service.spec.js.map +1 -1
- package/build/_services/shared.static-service.d.ts +4 -4
- package/build/_services/shared.static-service.d.ts.map +1 -1
- package/build/_services/shared.static-service.js +3 -3
- package/build/_services/shared.static-service.js.map +1 -1
- package/build/_services/socket/socket-client.service.d.ts +8 -8
- package/build/_services/socket/socket-client.service.d.ts.map +1 -1
- package/build/_services/socket/socket-client.service.js +35 -35
- package/build/_services/socket/socket-client.service.js.map +1 -1
- package/build/_services/socket/socket-server.service.d.ts +20 -20
- package/build/_services/socket/socket-server.service.d.ts.map +1 -1
- package/build/_services/socket/socket-server.service.js +86 -86
- package/build/_services/socket/socket-server.service.js.map +1 -1
- package/build/_services/socket/socket-server.service.spec.js +2 -2
- package/build/_services/socket/socket-server.service.spec.js.map +1 -1
- package/package.json +5 -2
- package/src/_constants/global-settings.const.ts +6 -6
- package/src/_constants/mocks/app-extended-server.mock.ts +56 -56
- package/src/_constants/mocks/app-params.mock.ts +2 -2
- package/src/_constants/mocks/app-server.mock.ts +52 -52
- package/src/_constants/mocks/auth-service.mock.ts +2 -2
- package/src/_constants/mocks/controller.mock.ts +6 -6
- package/src/_constants/mocks/data-model.mock.ts +5 -5
- package/src/_constants/mocks/email-service-collection.mock.ts +2 -2
- package/src/_constants/mocks/email-service.mock.ts +2 -2
- package/src/_constants/mocks/endpoint.mock.ts +27 -27
- package/src/_constants/mocks/socket-client.mock.ts +9 -9
- package/src/_constants/mocks/socket-server.mock.ts +13 -13
- package/src/_enums/data-model-type.enum.ts +1 -1
- package/src/_enums/data-service-function.enum.ts +1 -1
- package/src/_enums/http/http-call-type.enum.ts +1 -1
- package/src/_enums/http/http-response-type.enum.ts +1 -1
- package/src/_enums/http/socket-event-type.enum.ts +1 -1
- package/src/_enums/route-security.enum.ts +1 -1
- package/src/_enums/socket-security.enum.ts +1 -1
- package/src/_models/control-models/api-call-params.control-model.ts +11 -11
- package/src/_models/control-models/app-ext-system-controls.control-model.ts +5 -5
- package/src/_models/control-models/app-params.control-model.ts +2 -3
- package/src/_models/control-models/app-system-controls.control-model.ts +6 -6
- package/src/_models/control-models/endpoint-params.control-model.ts +57 -57
- package/src/_models/control-models/http-settings.control-model.ts +2 -2
- package/src/_models/control-models/socket-client-service-params.control-model.ts +3 -2
- package/src/_models/control-models/socket-event.control-model.ts +29 -29
- package/src/_models/control-models/socket-presence.control-model.ts +18 -18
- package/src/_models/control-models/socket-server-service-params.control-model.ts +6 -6
- package/src/_models/control-models/system-control.control-model.ts +1 -1
- package/src/_models/interfaces/certification-settings.interface.ts +1 -1
- package/src/_models/interfaces/global-service-settings.interface.ts +15 -15
- package/src/_models/interfaces/global-settings.interface.ts +5 -5
- package/src/_models/interfaces/routing-module-settings.interface.ts +5 -5
- package/src/_models/types/db-filter.type.ts +11 -11
- package/src/_models/types/db-update.type.ts +3 -3
- package/src/_modules/custom-data/custom-data.controller.ts +16 -16
- package/src/_modules/custom-data/custom-data.data-service.ts +6 -6
- package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +12 -12
- package/src/_modules/test/get-test-routing-module.util.ts +12 -12
- package/src/_modules/test/test.controller.ts +28 -28
- package/src/_modules/usage/get-usage-routing-module.util.ts +12 -12
- package/src/_modules/usage/usage.controller.ts +31 -31
- package/src/_modules/usage/usage.data-service.ts +32 -32
- package/src/_services/base/data.service.ts +66 -66
- package/src/_services/base/db.service.spec.ts +1 -1
- package/src/_services/base/db.service.ts +60 -60
- package/src/_services/base/singleton.service.ts +1 -1
- package/src/_services/core/api.service.ts +70 -70
- package/src/_services/core/auth.service.ts +11 -11
- package/src/_services/core/email.service.ts +47 -47
- package/src/_services/core/global.service.ts +65 -65
- package/src/_services/core/service-collection.service.ts +2 -2
- package/src/_services/route/controller.service.ts +11 -11
- package/src/_services/route/routing-module.service.ts +51 -51
- package/src/_services/server/app-extended.server.spec.ts +12 -12
- package/src/_services/server/app-extended.server.ts +59 -59
- package/src/_services/server/app.server.spec.ts +12 -12
- package/src/_services/server/app.server.ts +187 -187
- package/src/_services/shared.service.spec.ts +6 -6
- package/src/_services/shared.static-service.ts +4 -4
- package/src/_services/socket/socket-client.service.ts +49 -49
- package/src/_services/socket/socket-server.service.spec.ts +3 -3
- package/src/_services/socket/socket-server.service.ts +129 -129
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import * as SocketIO from 'socket.io';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
2
|
+
import { DyNTS_SingletonService } from '../base/singleton.service';
|
|
3
|
+
import { DyNTS_SocketSecurity } from '../../_enums/socket-security.enum';
|
|
4
|
+
import { DyNTS_SocketServerService_Params } from '../../_models/control-models/socket-server-service-params.control-model';
|
|
5
|
+
import { DyNTS_SocketPresence } from '../../_models/control-models/socket-presence.control-model';
|
|
6
|
+
import { DyNTS_SocketEvent, DyNTS_SocketEventPreprocessTask, DyNTS_SocketEventTask } from '../../_models/control-models/socket-event.control-model';
|
|
7
7
|
/**
|
|
8
8
|
* You need to define the following functions:
|
|
9
9
|
* ```ts
|
|
10
|
-
* getServiceParams():
|
|
10
|
+
* getServiceParams(): DyNTS_SocketServerServiceParams;
|
|
11
11
|
*
|
|
12
|
-
* getIncomingEvents():
|
|
12
|
+
* getIncomingEvents(): DyNTS_SocketEvent<any>[];
|
|
13
13
|
*
|
|
14
14
|
* getPresenceFromSubscrioptionEventContent(
|
|
15
15
|
* socketSubscription: T_SubscriptionContent,
|
|
@@ -17,16 +17,16 @@ import { DynamoNTS_SocketEvent, DynamoNTS_SocketEventPreprocessTask, DynamoNTS_S
|
|
|
17
17
|
* ): Promise<T_Presence>;
|
|
18
18
|
* ```
|
|
19
19
|
*/
|
|
20
|
-
export declare abstract class
|
|
21
|
-
protected params:
|
|
20
|
+
export declare abstract class DyNTS_SocketServerService<T_Presence extends DyNTS_SocketPresence = DyNTS_SocketPresence, T_SubscriptionContent = any, T_ErrorContent = any> extends DyNTS_SingletonService {
|
|
21
|
+
protected params: DyNTS_SocketServerService_Params;
|
|
22
22
|
get name(): string;
|
|
23
23
|
get port(): number;
|
|
24
|
-
get security():
|
|
24
|
+
get security(): DyNTS_SocketSecurity;
|
|
25
25
|
get activeSubscriptionsCount(): number;
|
|
26
26
|
protected openSocketServer: SocketIO.Server;
|
|
27
27
|
protected secureSocketServer: SocketIO.Server;
|
|
28
28
|
private connectEvent;
|
|
29
|
-
protected incomingEvents:
|
|
29
|
+
protected incomingEvents: DyNTS_SocketEvent<any>[];
|
|
30
30
|
private subscriptionEvent;
|
|
31
31
|
private unsubscribeEvent;
|
|
32
32
|
/**
|
|
@@ -44,7 +44,7 @@ export declare abstract class DynamoNTS_SocketServerService<T_Presence extends D
|
|
|
44
44
|
* You must setup events and required services for this function
|
|
45
45
|
*/
|
|
46
46
|
private prepareEvents;
|
|
47
|
-
setupSocketServer(newSocketServer: SocketIO.Server, security:
|
|
47
|
+
setupSocketServer(newSocketServer: SocketIO.Server, security: DyNTS_SocketSecurity.open | DyNTS_SocketSecurity.secure, successCallback: () => void): Promise<SocketIO.Server>;
|
|
48
48
|
protected addSocketToPresence(newPresence: T_Presence): Promise<void>;
|
|
49
49
|
private disconnectBaseTask;
|
|
50
50
|
private removeSubscription;
|
|
@@ -56,34 +56,34 @@ export declare abstract class DynamoNTS_SocketServerService<T_Presence extends D
|
|
|
56
56
|
/**
|
|
57
57
|
* You must setup params for the service in this function
|
|
58
58
|
*/
|
|
59
|
-
protected abstract getServiceParams():
|
|
59
|
+
protected abstract getServiceParams(): DyNTS_SocketServerService_Params;
|
|
60
60
|
/**
|
|
61
61
|
* You must setup events and required services in this function
|
|
62
62
|
*/
|
|
63
|
-
protected abstract getIncomingEvents():
|
|
63
|
+
protected abstract getIncomingEvents(): DyNTS_SocketEvent<any>[];
|
|
64
64
|
/**
|
|
65
65
|
* You can setup tasks for the subscription event in this function
|
|
66
66
|
*/
|
|
67
|
-
protected getSubscriptionTasks?():
|
|
67
|
+
protected getSubscriptionTasks?(): DyNTS_SocketEventTask<T_SubscriptionContent>[];
|
|
68
68
|
/**
|
|
69
69
|
* You can setup tasks for the subscription event in this function
|
|
70
70
|
*/
|
|
71
|
-
protected getSubscriptionCloseTasks?():
|
|
71
|
+
protected getSubscriptionCloseTasks?(): DyNTS_SocketEventTask<null>[];
|
|
72
72
|
/**
|
|
73
73
|
* You can setup preprocessess for the subscription event in this function
|
|
74
74
|
*/
|
|
75
|
-
protected getSubscriptionPreProcessess?():
|
|
75
|
+
protected getSubscriptionPreProcessess?(): DyNTS_SocketEventPreprocessTask[];
|
|
76
76
|
/**
|
|
77
77
|
* You can setup tasks for the unsubscribe event in this function
|
|
78
78
|
*/
|
|
79
|
-
protected getUnsubscribeTasks?():
|
|
79
|
+
protected getUnsubscribeTasks?(): DyNTS_SocketEventTask<T_SubscriptionContent>[];
|
|
80
80
|
/**
|
|
81
81
|
* You can setup preprocessess for the unsubscribe event in this function
|
|
82
82
|
*/
|
|
83
|
-
protected getUnsubscribePreProcessess?():
|
|
83
|
+
protected getUnsubscribePreProcessess?(): DyNTS_SocketEventPreprocessTask[];
|
|
84
84
|
/**
|
|
85
85
|
* You can setup tasks for the error event in this function
|
|
86
86
|
*/
|
|
87
|
-
protected errorHandling?:
|
|
87
|
+
protected errorHandling?: DyNTS_SocketEventTask<T_ErrorContent>;
|
|
88
88
|
}
|
|
89
89
|
//# sourceMappingURL=socket-server.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-server.service.d.ts","sourceRoot":"","sources":["../../../src/_services/socket/socket-server.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAC;AAMtC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"socket-server.service.d.ts","sourceRoot":"","sources":["../../../src/_services/socket/socket-server.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.DyNTS_SocketServerService = void 0;
|
|
4
4
|
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
5
5
|
const singleton_service_1 = require("../base/singleton.service");
|
|
6
6
|
const global_settings_const_1 = require("../../_constants/global-settings.const");
|
|
@@ -10,9 +10,9 @@ const socket_event_control_model_1 = require("../../_models/control-models/socke
|
|
|
10
10
|
/**
|
|
11
11
|
* You need to define the following functions:
|
|
12
12
|
* ```ts
|
|
13
|
-
* getServiceParams():
|
|
13
|
+
* getServiceParams(): DyNTS_SocketServerServiceParams;
|
|
14
14
|
*
|
|
15
|
-
* getIncomingEvents():
|
|
15
|
+
* getIncomingEvents(): DyNTS_SocketEvent<any>[];
|
|
16
16
|
*
|
|
17
17
|
* getPresenceFromSubscrioptionEventContent(
|
|
18
18
|
* socketSubscription: T_SubscriptionContent,
|
|
@@ -20,7 +20,7 @@ const socket_event_control_model_1 = require("../../_models/control-models/socke
|
|
|
20
20
|
* ): Promise<T_Presence>;
|
|
21
21
|
* ```
|
|
22
22
|
*/
|
|
23
|
-
class
|
|
23
|
+
class DyNTS_SocketServerService extends singleton_service_1.DyNTS_SingletonService {
|
|
24
24
|
params;
|
|
25
25
|
get name() { return this.params.name; }
|
|
26
26
|
get port() { return this.params.port; }
|
|
@@ -40,12 +40,12 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
40
40
|
constructor() {
|
|
41
41
|
super();
|
|
42
42
|
this.asyncConstructor().catch((error) => {
|
|
43
|
-
fsm_dynamo_1.
|
|
43
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Server Service setup failed: ${this.params?.name} (${this.params?.port})`, error);
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
async asyncConstructor() {
|
|
47
47
|
try {
|
|
48
|
-
this.logSetup = global_settings_const_1.
|
|
48
|
+
this.logSetup = global_settings_const_1.DyNTS_globalSettings.logSetup;
|
|
49
49
|
this.params = this.getServiceParams();
|
|
50
50
|
this.incomingEvents = this.getIncomingEvents() ?? [];
|
|
51
51
|
await this.prepareEvents();
|
|
@@ -54,8 +54,8 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
54
54
|
`serurity: ${this.params.security}\n`);
|
|
55
55
|
}
|
|
56
56
|
catch (error) {
|
|
57
|
-
fsm_dynamo_1.
|
|
58
|
-
throw new fsm_dynamo_1.
|
|
57
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Server Service setup failed: ${this.params?.name} (${this.params?.port})`, error);
|
|
58
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
59
59
|
errorCode: 'NTS-SSS-001',
|
|
60
60
|
error: error,
|
|
61
61
|
});
|
|
@@ -67,28 +67,28 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
67
67
|
async prepareEvents() {
|
|
68
68
|
try {
|
|
69
69
|
/** Setup connect event */
|
|
70
|
-
const connectEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.
|
|
70
|
+
const connectEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DyNTS_SocketEventKey.connection);
|
|
71
71
|
if (0 <= connectEventIndex) {
|
|
72
72
|
this.connectEvent = this.incomingEvents.splice(connectEventIndex)[0];
|
|
73
73
|
}
|
|
74
74
|
else {
|
|
75
|
-
this.connectEvent = new socket_event_control_model_1.
|
|
76
|
-
eventKey: socket_event_type_enum_1.
|
|
75
|
+
this.connectEvent = new socket_event_control_model_1.DyNTS_SocketEvent({
|
|
76
|
+
eventKey: socket_event_type_enum_1.DyNTS_SocketEventKey.connection,
|
|
77
77
|
});
|
|
78
78
|
}
|
|
79
79
|
this.connectEvent.serviceName = this.params.name;
|
|
80
80
|
/** Setup subscriptions events */
|
|
81
81
|
if (this.getPresenceFromSubscrioptionEventContent) {
|
|
82
82
|
/** Setup subscription event */
|
|
83
|
-
const subscriptionEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.
|
|
83
|
+
const subscriptionEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DyNTS_SocketEventKey.subscribe);
|
|
84
84
|
if (0 <= subscriptionEventIndex) {
|
|
85
85
|
this.subscriptionEvent = this.incomingEvents.splice(subscriptionEventIndex)[0];
|
|
86
|
-
fsm_dynamo_1.
|
|
86
|
+
fsm_dynamo_1.DyFM_Log.error(`You should not set the subscription event, but the subscriptions tasks, ` +
|
|
87
87
|
`in case you need additional steps for your subscriptions.`, `${this.params.name} (${this.params.port})`);
|
|
88
88
|
}
|
|
89
89
|
else {
|
|
90
|
-
this.subscriptionEvent = new socket_event_control_model_1.
|
|
91
|
-
eventKey: socket_event_type_enum_1.
|
|
90
|
+
this.subscriptionEvent = new socket_event_control_model_1.DyNTS_SocketEvent({
|
|
91
|
+
eventKey: socket_event_type_enum_1.DyNTS_SocketEventKey.subscribe,
|
|
92
92
|
});
|
|
93
93
|
}
|
|
94
94
|
if (this.getSubscriptionPreProcessess) {
|
|
@@ -99,15 +99,15 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
99
99
|
}
|
|
100
100
|
this.subscriptionEvent.serviceName = this.params.name;
|
|
101
101
|
/** Setup subscription event */
|
|
102
|
-
const unsubscribeEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.
|
|
102
|
+
const unsubscribeEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DyNTS_SocketEventKey.unsubscribe);
|
|
103
103
|
if (0 <= unsubscribeEventIndex) {
|
|
104
104
|
this.unsubscribeEvent = this.incomingEvents.splice(unsubscribeEventIndex)[0];
|
|
105
|
-
fsm_dynamo_1.
|
|
105
|
+
fsm_dynamo_1.DyFM_Log.error(`You should not set the unsubscribe event, but the unsubscribe tasks, ` +
|
|
106
106
|
`in case you need additional steps for your unsubscribe.`, `${this.params.name} (${this.params.port})`);
|
|
107
107
|
}
|
|
108
108
|
else {
|
|
109
|
-
this.unsubscribeEvent = new socket_event_control_model_1.
|
|
110
|
-
eventKey: socket_event_type_enum_1.
|
|
109
|
+
this.unsubscribeEvent = new socket_event_control_model_1.DyNTS_SocketEvent({
|
|
110
|
+
eventKey: socket_event_type_enum_1.DyNTS_SocketEventKey.unsubscribe,
|
|
111
111
|
});
|
|
112
112
|
}
|
|
113
113
|
if (this.getUnsubscribePreProcessess) {
|
|
@@ -118,26 +118,26 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
118
118
|
}
|
|
119
119
|
this.unsubscribeEvent.serviceName = this.params.name;
|
|
120
120
|
/** Setup disconnect event */
|
|
121
|
-
const disconnectEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.
|
|
121
|
+
const disconnectEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DyNTS_SocketEventKey.disconnect);
|
|
122
122
|
if (0 <= disconnectEventIndex) {
|
|
123
123
|
this.incomingEvents[disconnectEventIndex].serviceName = this.params.name;
|
|
124
124
|
this.incomingEvents[disconnectEventIndex].tasks.push(this.disconnectBaseTask);
|
|
125
125
|
}
|
|
126
126
|
else {
|
|
127
|
-
this.incomingEvents.push(new socket_event_control_model_1.
|
|
127
|
+
this.incomingEvents.push(new socket_event_control_model_1.DyNTS_SocketEvent({
|
|
128
128
|
serviceName: this.params.name,
|
|
129
|
-
eventKey: socket_event_type_enum_1.
|
|
129
|
+
eventKey: socket_event_type_enum_1.DyNTS_SocketEventKey.disconnect,
|
|
130
130
|
tasks: [
|
|
131
131
|
this.disconnectBaseTask,
|
|
132
132
|
],
|
|
133
133
|
}));
|
|
134
134
|
}
|
|
135
135
|
/** Setup error event */
|
|
136
|
-
const errorEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.
|
|
136
|
+
const errorEventIndex = this.incomingEvents.findIndex((event) => event.eventKey === socket_event_type_enum_1.DyNTS_SocketEventKey.error);
|
|
137
137
|
if (errorEventIndex == -1 && this.errorHandling) {
|
|
138
|
-
this.incomingEvents.push(new socket_event_control_model_1.
|
|
138
|
+
this.incomingEvents.push(new socket_event_control_model_1.DyNTS_SocketEvent({
|
|
139
139
|
serviceName: this.params.name,
|
|
140
|
-
eventKey: socket_event_type_enum_1.
|
|
140
|
+
eventKey: socket_event_type_enum_1.DyNTS_SocketEventKey.error,
|
|
141
141
|
tasks: [
|
|
142
142
|
this.errorHandling,
|
|
143
143
|
],
|
|
@@ -146,7 +146,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
146
146
|
this.subscriptionEvent.socketName = this.params.name;
|
|
147
147
|
}
|
|
148
148
|
else {
|
|
149
|
-
fsm_dynamo_1.
|
|
149
|
+
fsm_dynamo_1.DyFM_Log.error('getPresenceFromSubscrioptionEventContent is not set', `${this.params.name} (${this.params.port})`);
|
|
150
150
|
}
|
|
151
151
|
/** Set incoming events serviceName */
|
|
152
152
|
this.incomingEvents.forEach((event) => {
|
|
@@ -154,7 +154,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
154
154
|
});
|
|
155
155
|
}
|
|
156
156
|
catch (error) {
|
|
157
|
-
fsm_dynamo_1.
|
|
157
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Server Service - Event Preparation setup failed: ` +
|
|
158
158
|
`${this.params?.name} (${this.params?.port})`, error);
|
|
159
159
|
throw error;
|
|
160
160
|
}
|
|
@@ -164,71 +164,71 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
164
164
|
try {
|
|
165
165
|
if (this.logFn)
|
|
166
166
|
console.log('\nfn:. setupSocketServer');
|
|
167
|
-
newSocketServer.on(socket_event_type_enum_1.
|
|
167
|
+
newSocketServer.on(socket_event_type_enum_1.DyNTS_SocketEventKey.connection, async (socket) => {
|
|
168
168
|
try {
|
|
169
169
|
let issuer;
|
|
170
170
|
await this.connectEvent.executeEventTasks(socket);
|
|
171
171
|
if (this.getPresenceFromSubscrioptionEventContent) {
|
|
172
|
-
socket.on(socket_event_type_enum_1.
|
|
172
|
+
socket.on(socket_event_type_enum_1.DyNTS_SocketEventKey.subscribe, async (content) => {
|
|
173
173
|
try {
|
|
174
174
|
/**
|
|
175
175
|
* usually socket logs are in event.executeEventTasks(),
|
|
176
176
|
* but subscribe event is an exception from this,
|
|
177
177
|
* to be able to check content before getPresenceFromSubscrioptionEventContent
|
|
178
178
|
*/
|
|
179
|
-
if (global_settings_const_1.
|
|
180
|
-
fsm_dynamo_1.
|
|
181
|
-
`event: ${socket_event_type_enum_1.
|
|
179
|
+
if (global_settings_const_1.DyNTS_globalSettings.logSocketEventContent) {
|
|
180
|
+
fsm_dynamo_1.DyFM_Log.log(`--=> incoming socket(${this.params.name}) ` +
|
|
181
|
+
`event: ${socket_event_type_enum_1.DyNTS_SocketEventKey.subscribe};` +
|
|
182
182
|
`\ncontent:`, content);
|
|
183
183
|
}
|
|
184
184
|
else {
|
|
185
|
-
fsm_dynamo_1.
|
|
186
|
-
`event: ${socket_event_type_enum_1.
|
|
185
|
+
fsm_dynamo_1.DyFM_Log.log(`--=> incoming socket(${this.params.name}) ` +
|
|
186
|
+
`event: ${socket_event_type_enum_1.DyNTS_SocketEventKey.subscribe}`);
|
|
187
187
|
}
|
|
188
188
|
const presence = await this.getPresenceFromSubscrioptionEventContent(content, socket);
|
|
189
189
|
presence.serviceName = this.params.name;
|
|
190
190
|
issuer = presence.issuerId;
|
|
191
191
|
this.addSocketToPresence(presence);
|
|
192
192
|
await this.subscriptionEvent.executeEventTasks(content, issuer);
|
|
193
|
-
socket.emit(socket_event_type_enum_1.
|
|
194
|
-
fsm_dynamo_1.
|
|
193
|
+
socket.emit(socket_event_type_enum_1.DyNTS_SocketEventKey.subscriptionSuccessful, 'subscribe was successful', error => {
|
|
194
|
+
fsm_dynamo_1.DyFM_Log.error(`Emitting subscriptionSuccessful event failed!` +
|
|
195
195
|
`\nerror:`, error);
|
|
196
196
|
});
|
|
197
|
-
fsm_dynamo_1.
|
|
197
|
+
fsm_dynamo_1.DyFM_Log.success(`<-==> socket(${this.params.name}) subscription successfull (${issuer})`);
|
|
198
198
|
}
|
|
199
199
|
catch (error) {
|
|
200
|
-
fsm_dynamo_1.
|
|
201
|
-
socket.emit(socket_event_type_enum_1.
|
|
200
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Subscription failed: ${this.params.name} `, `(${this.params.port}) will disconnect now...`, error);
|
|
201
|
+
socket.emit(socket_event_type_enum_1.DyNTS_SocketEventKey.error, error);
|
|
202
202
|
socket.disconnect();
|
|
203
203
|
}
|
|
204
204
|
});
|
|
205
|
-
socket.on(socket_event_type_enum_1.
|
|
205
|
+
socket.on(socket_event_type_enum_1.DyNTS_SocketEventKey.unsubscribe, async (issuer) => {
|
|
206
206
|
try {
|
|
207
207
|
/**
|
|
208
208
|
* usually socket logs are in event.executeEventTasks(),
|
|
209
209
|
* but unsubscribe event is an exception from this,
|
|
210
210
|
* to be able to check content before getPresenceFromSubscrioptionEventContent
|
|
211
211
|
*/
|
|
212
|
-
if (global_settings_const_1.
|
|
213
|
-
fsm_dynamo_1.
|
|
214
|
-
`event: ${socket_event_type_enum_1.
|
|
212
|
+
if (global_settings_const_1.DyNTS_globalSettings.logSocketEventContent) {
|
|
213
|
+
fsm_dynamo_1.DyFM_Log.log(`--=> incoming socket(${this.params.name}) ` +
|
|
214
|
+
`event: ${socket_event_type_enum_1.DyNTS_SocketEventKey.unsubscribe};` +
|
|
215
215
|
`\ncontent:`, issuer);
|
|
216
216
|
}
|
|
217
217
|
else {
|
|
218
|
-
fsm_dynamo_1.
|
|
219
|
-
`event: ${socket_event_type_enum_1.
|
|
218
|
+
fsm_dynamo_1.DyFM_Log.log(`--=> incoming socket(${this.params.name}) ` +
|
|
219
|
+
`event: ${socket_event_type_enum_1.DyNTS_SocketEventKey.unsubscribe}`);
|
|
220
220
|
}
|
|
221
221
|
this.removeSubscription(socket, issuer);
|
|
222
222
|
await this.subscriptionEvent.executeEventTasks(issuer, issuer);
|
|
223
|
-
socket.emit(socket_event_type_enum_1.
|
|
224
|
-
fsm_dynamo_1.
|
|
223
|
+
socket.emit(socket_event_type_enum_1.DyNTS_SocketEventKey.unsubscribeSuccessful, 'unsubscribe was successful', error => {
|
|
224
|
+
fsm_dynamo_1.DyFM_Log.error(`Emitting unsubscribeSuccessful event failed!` +
|
|
225
225
|
`\nerror:`, error);
|
|
226
226
|
});
|
|
227
|
-
fsm_dynamo_1.
|
|
227
|
+
fsm_dynamo_1.DyFM_Log.success(`< x > socket(${this.params.name}) unsubscribe successfull (${issuer})`);
|
|
228
228
|
}
|
|
229
229
|
catch (error) {
|
|
230
|
-
fsm_dynamo_1.
|
|
231
|
-
socket.emit(socket_event_type_enum_1.
|
|
230
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket unsubscribe failed: ${this.params.name} `, `(${this.params.port}) will disconnect now...`, error);
|
|
231
|
+
socket.emit(socket_event_type_enum_1.DyNTS_SocketEventKey.error, error);
|
|
232
232
|
}
|
|
233
233
|
});
|
|
234
234
|
}
|
|
@@ -238,27 +238,27 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
238
238
|
await event.executeEventTasks(content, issuer);
|
|
239
239
|
}
|
|
240
240
|
catch (error) {
|
|
241
|
-
fsm_dynamo_1.
|
|
242
|
-
socket.emit(socket_event_type_enum_1.
|
|
241
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Event failed: ${this.params.name} (${this.params.port})`, error);
|
|
242
|
+
socket.emit(socket_event_type_enum_1.DyNTS_SocketEventKey.error, error);
|
|
243
243
|
}
|
|
244
244
|
});
|
|
245
245
|
});
|
|
246
|
-
if (global_settings_const_1.
|
|
247
|
-
fsm_dynamo_1.
|
|
246
|
+
if (global_settings_const_1.DyNTS_globalSettings.logMainSocketEvents) {
|
|
247
|
+
fsm_dynamo_1.DyFM_Log.success(`< > socket(${this.params.name}): new CONNECTION established`);
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
250
|
catch (error) {
|
|
251
|
-
fsm_dynamo_1.
|
|
251
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Connection failed: ${this.params.name} ` +
|
|
252
252
|
`(${this.params.port}) will disconnect now...`, error);
|
|
253
|
-
socket.emit(socket_event_type_enum_1.
|
|
253
|
+
socket.emit(socket_event_type_enum_1.DyNTS_SocketEventKey.error, error);
|
|
254
254
|
socket.disconnect();
|
|
255
255
|
}
|
|
256
256
|
});
|
|
257
257
|
newSocketServer.listen(this.params.port);
|
|
258
|
-
fsm_dynamo_1.
|
|
258
|
+
fsm_dynamo_1.DyFM_Log.success(`\nsocket server setup finished: ${this.params.name}` +
|
|
259
259
|
`\nsocket server listening on port: ${this.params.port}`);
|
|
260
260
|
successCallback();
|
|
261
|
-
if (security === socket_security_enum_1.
|
|
261
|
+
if (security === socket_security_enum_1.DyNTS_SocketSecurity.open) {
|
|
262
262
|
this.openSocketServer = newSocketServer;
|
|
263
263
|
return this.openSocketServer;
|
|
264
264
|
}
|
|
@@ -268,7 +268,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
268
268
|
}
|
|
269
269
|
}
|
|
270
270
|
catch (error) {
|
|
271
|
-
fsm_dynamo_1.
|
|
271
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Server Service - Deep Setup failed: ${this.params?.name} ` +
|
|
272
272
|
`(${this.params?.port})`, error);
|
|
273
273
|
throw error;
|
|
274
274
|
}
|
|
@@ -284,17 +284,17 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
284
284
|
}
|
|
285
285
|
}
|
|
286
286
|
catch (error) {
|
|
287
|
-
fsm_dynamo_1.
|
|
287
|
+
fsm_dynamo_1.DyFM_Log.error(`Socket Subscription failed: ${this.params?.name} (${this.params?.port})`, error);
|
|
288
288
|
throw error;
|
|
289
289
|
}
|
|
290
290
|
}
|
|
291
291
|
async disconnectBaseTask(socket, issuer) {
|
|
292
292
|
try {
|
|
293
293
|
await this.removeSubscription(socket, issuer);
|
|
294
|
-
fsm_dynamo_1.
|
|
294
|
+
fsm_dynamo_1.DyFM_Log.info(`< x > socket(${this.params.name}) disconnected (${issuer})`);
|
|
295
295
|
}
|
|
296
296
|
catch (error) {
|
|
297
|
-
throw new fsm_dynamo_1.
|
|
297
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
298
298
|
...this._getDefaultErrorSettings('disconnectBaseTask', error, issuer),
|
|
299
299
|
errorCode: 'NTS-SSS-109',
|
|
300
300
|
});
|
|
@@ -304,28 +304,28 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
304
304
|
try {
|
|
305
305
|
const activePresenceIndex = this.presences.findIndex((pres) => pres.sockets.includes(socket));
|
|
306
306
|
if (activePresenceIndex === -1) {
|
|
307
|
-
throw new fsm_dynamo_1.
|
|
307
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
308
308
|
...this._getDefaultErrorSettings('sendEventForId', new Error(`closing socket(${this.params.name}) does not match any in the activePresences`), issuer),
|
|
309
309
|
errorCode: 'NTS-SSS-203',
|
|
310
310
|
});
|
|
311
311
|
}
|
|
312
312
|
const activePresence = this.presences[activePresenceIndex];
|
|
313
313
|
if (activePresence.issuerId !== issuer) {
|
|
314
|
-
throw new fsm_dynamo_1.
|
|
314
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
315
315
|
...this._getDefaultErrorSettings('sendEventForId', new Error(`socket subscription for ${issuer} and ${activePresence.issuerId} does not match.`), issuer),
|
|
316
316
|
errorCode: 'NTS-SSS-201',
|
|
317
317
|
});
|
|
318
318
|
}
|
|
319
319
|
const socketIndex = activePresence.sockets.findIndex((s) => s === socket);
|
|
320
320
|
if (socketIndex === -1) {
|
|
321
|
-
throw new fsm_dynamo_1.
|
|
321
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
322
322
|
...this._getDefaultErrorSettings('sendEventForId', new Error(`closing socket(${this.params.name}) does not match any in the activePresences`), issuer),
|
|
323
323
|
errorCode: 'NTS-SSS-202',
|
|
324
324
|
});
|
|
325
325
|
}
|
|
326
326
|
activePresence.sockets.splice(socketIndex);
|
|
327
327
|
if (this.getSubscriptionCloseTasks) {
|
|
328
|
-
await fsm_dynamo_1.
|
|
328
|
+
await fsm_dynamo_1.DyFM_Array.asyncForEach(this.getSubscriptionCloseTasks(), async (task) => {
|
|
329
329
|
await task(null, issuer);
|
|
330
330
|
});
|
|
331
331
|
}
|
|
@@ -333,10 +333,10 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
333
333
|
this.presences.splice(activePresenceIndex);
|
|
334
334
|
}
|
|
335
335
|
socket.disconnect();
|
|
336
|
-
fsm_dynamo_1.
|
|
336
|
+
fsm_dynamo_1.DyFM_Log.info(`<x==> socket(${this.params.name}) unsubscription successfull (${issuer})`);
|
|
337
337
|
}
|
|
338
338
|
catch (error) {
|
|
339
|
-
throw new fsm_dynamo_1.
|
|
339
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
340
340
|
...this._getDefaultErrorSettings('sendEventForId', error, issuer),
|
|
341
341
|
errorCode: 'NTS-SSS-200',
|
|
342
342
|
message: `socket(${this.params.name}) Subscription Removal failed: ${this.params?.name}`,
|
|
@@ -345,13 +345,13 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
345
345
|
}
|
|
346
346
|
/* emitServerEvent(event: string, content: any): void {
|
|
347
347
|
try {
|
|
348
|
-
|
|
348
|
+
DyFM_Log.log(` <=-- emitting server socket(${this.params.name}) event: ${event}`);
|
|
349
349
|
|
|
350
350
|
this.openSocketServer.emit(event, content, error => {
|
|
351
|
-
|
|
351
|
+
DyFM_Log.error(`Emitting server event '${event}' failed!\nerror:`, error);
|
|
352
352
|
});
|
|
353
353
|
} catch (error) {
|
|
354
|
-
throw new
|
|
354
|
+
throw new DyFM_Error({
|
|
355
355
|
...this._getDefaultErrorSettings(
|
|
356
356
|
'emitEvent',
|
|
357
357
|
error
|
|
@@ -367,7 +367,7 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
367
367
|
return !!this.presences.find((presence) => presence.issuerId === id);
|
|
368
368
|
}
|
|
369
369
|
catch (error) {
|
|
370
|
-
throw new fsm_dynamo_1.
|
|
370
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
371
371
|
...this._getDefaultErrorSettings('idIsSubscribed', error),
|
|
372
372
|
errorCode: 'NTS-SSS-600',
|
|
373
373
|
message: `socket(${this.params.name}) ID Subscription Check (${id}) failed`,
|
|
@@ -376,10 +376,10 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
376
376
|
}
|
|
377
377
|
async emitError(presenceIssuerId, error, issuer) {
|
|
378
378
|
try {
|
|
379
|
-
await this.sendEventForId(presenceIssuerId, socket_event_type_enum_1.
|
|
379
|
+
await this.sendEventForId(presenceIssuerId, socket_event_type_enum_1.DyNTS_SocketEventKey.error, error, issuer);
|
|
380
380
|
}
|
|
381
381
|
catch (error) {
|
|
382
|
-
throw new fsm_dynamo_1.
|
|
382
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
383
383
|
...this._getDefaultErrorSettings('emitError', error, presenceIssuerId),
|
|
384
384
|
errorCode: 'NTS-SSS-700',
|
|
385
385
|
message: `socket(${this.params.name}) Error Emit (id: ${presenceIssuerId}) failed`,
|
|
@@ -390,20 +390,20 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
390
390
|
try {
|
|
391
391
|
const presence = this.presences.find((pres) => pres.issuerId === id);
|
|
392
392
|
if (!presence) {
|
|
393
|
-
throw new fsm_dynamo_1.
|
|
393
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
394
394
|
...this._getDefaultErrorSettings('sendEventForId', new Error(`No active socket with this specific ID: ${id}`), content?.source),
|
|
395
395
|
status: 404,
|
|
396
396
|
errorCode: 'NTS-SSS-301',
|
|
397
397
|
});
|
|
398
398
|
}
|
|
399
399
|
presence.emitEvent(event, content, issuer);
|
|
400
|
-
if (global_settings_const_1.
|
|
401
|
-
fsm_dynamo_1.
|
|
400
|
+
if (global_settings_const_1.DyNTS_globalSettings.logSocketEventContent) {
|
|
401
|
+
fsm_dynamo_1.DyFM_Log.success(` <--= emitted socket(${this.params.name}) event for presence: ${event}, ` +
|
|
402
402
|
`\n presenceId: ${id}, sockets: ${presence.sockets.length}` +
|
|
403
403
|
`\n content:`, content);
|
|
404
404
|
}
|
|
405
405
|
else {
|
|
406
|
-
fsm_dynamo_1.
|
|
406
|
+
fsm_dynamo_1.DyFM_Log.success(` <--= emitted socket(${this.params.name}) event for presence: ${event}, ` +
|
|
407
407
|
`\n presenceId: ${id}, sockets: ${presence.sockets.length}`);
|
|
408
408
|
}
|
|
409
409
|
}
|
|
@@ -411,12 +411,12 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
411
411
|
try {
|
|
412
412
|
if (error.flag.includes('DYNAMO') && error?.accitionalInfo?.inactiveSockets) {
|
|
413
413
|
const sockets = error.accitionalInfo.inactiveSockets;
|
|
414
|
-
await fsm_dynamo_1.
|
|
414
|
+
await fsm_dynamo_1.DyFM_Array.asyncForEach(sockets, async (socket) => {
|
|
415
415
|
await this.removeSubscription(socket);
|
|
416
416
|
});
|
|
417
417
|
const presence = this.presences.find((pres) => pres.issuerId === id);
|
|
418
418
|
if (!presence) {
|
|
419
|
-
throw new fsm_dynamo_1.
|
|
419
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
420
420
|
...this._getDefaultErrorSettings('sendEventForId', new Error(`No active socket(${this.params.name}) with this specific ID: ${id}`), content?.source),
|
|
421
421
|
status: 404,
|
|
422
422
|
errorCode: 'NTS-SSS-302',
|
|
@@ -425,14 +425,14 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
425
425
|
}
|
|
426
426
|
}
|
|
427
427
|
catch (error) {
|
|
428
|
-
throw new fsm_dynamo_1.
|
|
428
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
429
429
|
...this._getDefaultErrorSettings('sendEventForId', error, content?.source),
|
|
430
430
|
errorCode: 'NTS-SSS-310',
|
|
431
431
|
message: `Error handling of inactive sockets(${this.params.name}) failed!` +
|
|
432
432
|
`\n(Socket Event Emit for id (${id}, ${event}) failed)`,
|
|
433
433
|
});
|
|
434
434
|
}
|
|
435
|
-
throw new fsm_dynamo_1.
|
|
435
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
436
436
|
...this._getDefaultErrorSettings('sendEventForId', error, content?.source),
|
|
437
437
|
errorCode: 'NTS-SSS-310',
|
|
438
438
|
message: `socket(${this.params.name}) Event Emit for id (${id}, ${event}) failed`,
|
|
@@ -441,14 +441,14 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
441
441
|
}
|
|
442
442
|
broadcastEvent(event, content, issuer) {
|
|
443
443
|
try {
|
|
444
|
-
fsm_dynamo_1.
|
|
444
|
+
fsm_dynamo_1.DyFM_Log.log(` <=-== broadcasting socket(${this.params.name}) event: ${event}`);
|
|
445
445
|
this.presences.forEach((presence) => {
|
|
446
446
|
presence.emitEvent(event, content, issuer);
|
|
447
447
|
});
|
|
448
448
|
}
|
|
449
449
|
catch (error) {
|
|
450
|
-
fsm_dynamo_1.
|
|
451
|
-
throw new fsm_dynamo_1.
|
|
450
|
+
fsm_dynamo_1.DyFM_Log.error(`socket(${this.params.name}) Event Broadcast (${event}) failed`, error);
|
|
451
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
452
452
|
...this._getDefaultErrorSettings('broadcastEvent', error),
|
|
453
453
|
errorCode: 'NTS-SSS-400',
|
|
454
454
|
message: `socket(${this.params.name}) Event Broadcast (${event}) failed`,
|
|
@@ -471,5 +471,5 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
|
|
|
471
471
|
*/
|
|
472
472
|
errorHandling;
|
|
473
473
|
}
|
|
474
|
-
exports.
|
|
474
|
+
exports.DyNTS_SocketServerService = DyNTS_SocketServerService;
|
|
475
475
|
//# sourceMappingURL=socket-server.service.js.map
|