@streamr/dht 100.0.0-testnet-three.6 → 100.1.0
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/README.md +1 -1
- package/dist/package.json +12 -8
- package/dist/src/connection/ConnectionLockRpcLocal.d.ts +1 -1
- package/dist/src/connection/ConnectionLockRpcRemote.d.ts +1 -1
- package/dist/src/connection/ConnectionLockRpcRemote.js +1 -1
- package/dist/src/connection/ConnectionLockRpcRemote.js.map +1 -1
- package/dist/src/connection/{ConnectionLockHandler.d.ts → ConnectionLockStates.d.ts} +3 -3
- package/dist/src/connection/{ConnectionLockHandler.js → ConnectionLockStates.js} +17 -9
- package/dist/src/connection/ConnectionLockStates.js.map +1 -0
- package/dist/src/connection/ConnectionManager.d.ts +9 -7
- package/dist/src/connection/ConnectionManager.js +16 -18
- package/dist/src/connection/ConnectionManager.js.map +1 -1
- package/dist/src/connection/ConnectorFacade.js +1 -1
- package/dist/src/connection/ConnectorFacade.js.map +1 -1
- package/dist/src/connection/Handshaker.js +6 -13
- package/dist/src/connection/Handshaker.js.map +1 -1
- package/dist/src/connection/ManagedConnection.d.ts +2 -2
- package/dist/src/connection/ManagedConnection.js +8 -8
- package/dist/src/connection/ManagedConnection.js.map +1 -1
- package/dist/src/connection/connectivityChecker.d.ts +1 -1
- package/dist/src/connection/connectivityChecker.js +8 -8
- package/dist/src/connection/connectivityChecker.js.map +1 -1
- package/dist/src/connection/connectivityRequestHandler.d.ts +2 -2
- package/dist/src/connection/connectivityRequestHandler.js +10 -11
- package/dist/src/connection/connectivityRequestHandler.js.map +1 -1
- package/dist/src/connection/webrtc/WebrtcConnector.d.ts +1 -0
- package/dist/src/connection/webrtc/WebrtcConnector.js +13 -8
- package/dist/src/connection/webrtc/WebrtcConnector.js.map +1 -1
- package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.d.ts +2 -0
- package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js +4 -6
- package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js.map +1 -1
- package/dist/src/connection/websocket/AbstractWebsocketClientConnection.d.ts +28 -0
- package/dist/src/connection/websocket/{ClientWebsocket.js → AbstractWebsocketClientConnection.js} +42 -68
- package/dist/src/connection/websocket/AbstractWebsocketClientConnection.js.map +1 -0
- package/dist/src/connection/websocket/NodeWebsocketClientConnection.d.ts +7 -0
- package/dist/src/connection/websocket/NodeWebsocketClientConnection.js +39 -0
- package/dist/src/connection/websocket/NodeWebsocketClientConnection.js.map +1 -0
- package/dist/src/connection/websocket/WebsocketConnector.js +26 -23
- package/dist/src/connection/websocket/WebsocketConnector.js.map +1 -1
- package/dist/src/connection/websocket/WebsocketServer.js +25 -35
- package/dist/src/connection/websocket/WebsocketServer.js.map +1 -1
- package/dist/src/connection/websocket/{ServerWebsocket.d.ts → WebsocketServerConnection.d.ts} +4 -5
- package/dist/src/connection/websocket/{ServerWebsocket.js → WebsocketServerConnection.js} +18 -51
- package/dist/src/connection/websocket/WebsocketServerConnection.js.map +1 -0
- package/dist/src/dht/DhtNode.d.ts +15 -8
- package/dist/src/dht/DhtNode.js +62 -31
- package/dist/src/dht/DhtNode.js.map +1 -1
- package/dist/src/dht/DhtNodeRpcLocal.d.ts +5 -1
- package/dist/src/dht/DhtNodeRpcLocal.js +10 -0
- package/dist/src/dht/DhtNodeRpcLocal.js.map +1 -1
- package/dist/src/dht/DhtNodeRpcRemote.d.ts +3 -0
- package/dist/src/dht/DhtNodeRpcRemote.js +16 -1
- package/dist/src/dht/DhtNodeRpcRemote.js.map +1 -1
- package/dist/src/dht/ExternalApiRpcLocal.d.ts +2 -2
- package/dist/src/dht/ExternalApiRpcLocal.js +3 -3
- package/dist/src/dht/ExternalApiRpcLocal.js.map +1 -1
- package/dist/src/dht/ExternalApiRpcRemote.d.ts +1 -1
- package/dist/src/dht/ExternalApiRpcRemote.js +2 -2
- package/dist/src/dht/ExternalApiRpcRemote.js.map +1 -1
- package/dist/src/dht/PeerManager.d.ts +15 -3
- package/dist/src/dht/PeerManager.js +54 -40
- package/dist/src/dht/PeerManager.js.map +1 -1
- package/dist/src/dht/contact/RingContactList.d.ts +31 -0
- package/dist/src/dht/contact/RingContactList.js +133 -0
- package/dist/src/dht/contact/RingContactList.js.map +1 -0
- package/dist/src/dht/contact/SortedContactList.d.ts +2 -1
- package/dist/src/dht/contact/SortedContactList.js +19 -17
- package/dist/src/dht/contact/SortedContactList.js.map +1 -1
- package/dist/src/dht/contact/ringIdentifiers.d.ts +16 -0
- package/dist/src/dht/contact/ringIdentifiers.js +54 -0
- package/dist/src/dht/contact/ringIdentifiers.js.map +1 -0
- package/dist/src/dht/discovery/DiscoverySession.js +3 -1
- package/dist/src/dht/discovery/DiscoverySession.js.map +1 -1
- package/dist/src/dht/discovery/PeerDiscovery.d.ts +6 -2
- package/dist/src/dht/discovery/PeerDiscovery.js +41 -4
- package/dist/src/dht/discovery/PeerDiscovery.js.map +1 -1
- package/dist/src/dht/discovery/RingDiscoverySession.d.ts +29 -0
- package/dist/src/dht/discovery/RingDiscoverySession.js +125 -0
- package/dist/src/dht/discovery/RingDiscoverySession.js.map +1 -0
- package/dist/src/dht/recursive-operation/RecursiveOperationManager.js +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationManager.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.js +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationRpcRemote.js.map +1 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSession.js +0 -1
- package/dist/src/dht/recursive-operation/RecursiveOperationSession.js.map +1 -1
- package/dist/src/dht/routing/Router.d.ts +0 -1
- package/dist/src/dht/routing/Router.js +0 -1
- package/dist/src/dht/routing/Router.js.map +1 -1
- package/dist/src/dht/routing/RouterRpcLocal.d.ts +0 -1
- package/dist/src/dht/routing/RouterRpcLocal.js.map +1 -1
- package/dist/src/dht/routing/RouterRpcRemote.js +2 -2
- package/dist/src/dht/routing/RouterRpcRemote.js.map +1 -1
- package/dist/src/dht/routing/RoutingSession.js +2 -2
- package/dist/src/dht/routing/RoutingSession.js.map +1 -1
- package/dist/src/dht/store/LocalDataStore.js +2 -2
- package/dist/src/dht/store/LocalDataStore.js.map +1 -1
- package/dist/src/dht/store/StoreManager.js +2 -2
- package/dist/src/dht/store/StoreManager.js.map +1 -1
- package/dist/src/exports.d.ts +3 -2
- package/dist/src/exports.js +3 -3
- package/dist/src/exports.js.map +1 -1
- package/dist/src/helpers/createPeerDescriptor.d.ts +1 -1
- package/dist/src/helpers/createPeerDescriptor.js +2 -1
- package/dist/src/helpers/createPeerDescriptor.js.map +1 -1
- package/dist/src/helpers/version.d.ts +6 -0
- package/dist/src/helpers/version.js +38 -0
- package/dist/src/helpers/version.js.map +1 -0
- package/dist/src/proto/packages/dht/protos/DhtRpc.client.d.ts +16 -6
- package/dist/src/proto/packages/dht/protos/DhtRpc.client.js +11 -4
- package/dist/src/proto/packages/dht/protos/DhtRpc.client.js.map +1 -1
- package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +98 -87
- package/dist/src/proto/packages/dht/protos/DhtRpc.js +45 -49
- package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +1 -1
- package/dist/src/proto/packages/dht/protos/DhtRpc.server.d.ts +10 -4
- package/dist/src/transport/RoutingRpcCommunicator.js +0 -2
- package/dist/src/transport/RoutingRpcCommunicator.js.map +1 -1
- package/karma.config.js +4 -1
- package/package.json +12 -8
- package/protos/DhtRpc.proto +21 -21
- package/src/connection/ConnectionLockRpcLocal.ts +1 -1
- package/src/connection/ConnectionLockRpcRemote.ts +2 -2
- package/src/connection/{ConnectionLockHandler.ts → ConnectionLockStates.ts} +14 -6
- package/src/connection/ConnectionManager.ts +21 -22
- package/src/connection/ConnectorFacade.ts +1 -2
- package/src/connection/Handshaker.ts +7 -15
- package/src/connection/ManagedConnection.ts +8 -8
- package/src/connection/connectivityChecker.ts +9 -10
- package/src/connection/connectivityRequestHandler.ts +16 -16
- package/src/connection/webrtc/BrowserWebrtcConnection.ts +18 -0
- package/src/connection/webrtc/NodeWebrtcConnection.ts +1 -1
- package/src/connection/webrtc/WebrtcConnector.ts +14 -8
- package/src/connection/webrtc/WebrtcConnectorRpcLocal.ts +5 -5
- package/src/connection/websocket/{ClientWebsocket.ts → AbstractWebsocketClientConnection.ts} +57 -70
- package/src/connection/websocket/BrowserWebsocketClientConnection.ts +44 -0
- package/src/connection/websocket/NodeWebsocketClientConnection.ts +39 -0
- package/src/connection/websocket/WebsocketConnector.ts +27 -28
- package/src/connection/websocket/WebsocketServer.ts +27 -42
- package/src/connection/websocket/{ServerWebsocket.ts → WebsocketServerConnection.ts} +15 -56
- package/src/dht/DhtNode.ts +85 -50
- package/src/dht/DhtNodeRpcLocal.ts +16 -0
- package/src/dht/DhtNodeRpcRemote.ts +19 -1
- package/src/dht/ExternalApiRpcLocal.ts +5 -5
- package/src/dht/ExternalApiRpcRemote.ts +4 -4
- package/src/dht/PeerManager.ts +70 -44
- package/src/dht/contact/RingContactList.ts +151 -0
- package/src/dht/contact/SortedContactList.ts +22 -18
- package/src/dht/contact/ringIdentifiers.ts +62 -0
- package/src/dht/discovery/DiscoverySession.ts +3 -1
- package/src/dht/discovery/PeerDiscovery.ts +45 -6
- package/src/dht/discovery/RingDiscoverySession.ts +162 -0
- package/src/dht/recursive-operation/RecursiveOperationManager.ts +1 -1
- package/src/dht/recursive-operation/RecursiveOperationRpcRemote.ts +1 -1
- package/src/dht/recursive-operation/RecursiveOperationSession.ts +1 -3
- package/src/dht/routing/Router.ts +0 -2
- package/src/dht/routing/RouterRpcLocal.ts +0 -1
- package/src/dht/routing/RouterRpcRemote.ts +2 -2
- package/src/dht/routing/RoutingSession.ts +2 -2
- package/src/dht/store/LocalDataStore.ts +1 -1
- package/src/dht/store/StoreManager.ts +2 -2
- package/src/exports.ts +3 -2
- package/src/helpers/createPeerDescriptor.ts +2 -1
- package/src/helpers/version.ts +32 -0
- package/src/proto/packages/dht/protos/DhtRpc.client.ts +22 -9
- package/src/proto/packages/dht/protos/DhtRpc.server.ts +10 -4
- package/src/proto/packages/dht/protos/DhtRpc.ts +122 -100
- package/src/transport/RoutingRpcCommunicator.ts +1 -2
- package/test/benchmark/Find.test.ts +3 -4
- package/test/benchmark/KademliaCorrectness.test.ts +14 -8
- package/test/benchmark/RingCorrectness.test.ts +157 -0
- package/test/benchmark/WebsocketServerMemoryLeak.test.ts +2 -2
- package/test/benchmark/hybrid-network-simulation/RingContactList.test.ts +72 -0
- package/test/data/generateGroundTruthData.ts +2 -2
- package/test/end-to-end/memory-leak.test.ts +1 -2
- package/test/integration/ConnectionManager.test.ts +28 -10
- package/test/integration/ConnectivityChecking.test.ts +3 -15
- package/test/integration/DhtNodeExternalAPI.test.ts +6 -6
- package/test/integration/Find.test.ts +6 -6
- package/test/integration/Layer1-scale.test.ts +0 -1
- package/test/integration/ReplicateData.test.ts +4 -4
- package/test/integration/RouteMessage.test.ts +1 -6
- package/test/integration/RouterRpcRemote.test.ts +1 -3
- package/test/integration/SimultaneousConnections.test.ts +9 -10
- package/test/integration/Store.test.ts +4 -4
- package/test/integration/StoreAndDelete.test.ts +5 -5
- package/test/integration/StoreOnDhtWithThreeNodes.test.ts +5 -5
- package/test/integration/StoreOnDhtWithTwoNodes.test.ts +3 -3
- package/test/integration/WebrtcConnectionManagement.test.ts +3 -9
- package/test/integration/Websocket.test.ts +2 -2
- package/test/integration/WebsocketConnectionManagement.test.ts +1 -6
- package/test/integration/rpc-connections-over-webrpc.test.ts +1 -2
- package/test/unit/PeerManager.test.ts +44 -10
- package/test/unit/RecursiveOperationManager.test.ts +14 -8
- package/test/unit/RecursiveOperationSession.test.ts +1 -1
- package/test/unit/Router.test.ts +0 -3
- package/test/unit/RoutingSession.test.ts +1 -2
- package/test/unit/connectivityRequestHandler.test.ts +5 -9
- package/test/unit/createPeerDescriptor.test.ts +12 -6
- package/test/unit/version.test.ts +18 -0
- package/test/utils/utils.ts +60 -47
- package/tsconfig.browser.json +2 -1
- package/tsconfig.jest.json +4 -2
- package/tsconfig.node.json +4 -2
- package/dist/src/connection/ConnectionLockHandler.js.map +0 -1
- package/dist/src/connection/websocket/ClientWebsocket.d.ts +0 -17
- package/dist/src/connection/websocket/ClientWebsocket.js.map +0 -1
- package/dist/src/connection/websocket/ServerWebsocket.js.map +0 -1
- package/dist/src/helpers/MapWithTtl.d.ts +0 -14
- package/dist/src/helpers/MapWithTtl.js +0 -60
- package/dist/src/helpers/MapWithTtl.js.map +0 -1
- package/dist/src/helpers/versionCompatibility.d.ts +0 -2
- package/dist/src/helpers/versionCompatibility.js +0 -18
- package/dist/src/helpers/versionCompatibility.js.map +0 -1
- package/src/helpers/MapWithTtl.ts +0 -71
- package/src/helpers/versionCompatibility.ts +0 -13
- package/test/unit/versionCompatibility.test.ts +0 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManagedConnection.js","sourceRoot":"","sources":["../../../src/connection/ManagedConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uDAAwC;AACxC,6CAAyC;AACzC,gEAAoF;AACpF,0CAAsF;AACtF,kEAAwC;AACxC,2DAA0E;AAC1E,gDAAwE;AACxE,6CAAuD;AAcvD,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAIjC,MAAa,iBAAkB,SAAQ,uBAAoB;IAE/C,cAAc,CAAc;IAC5B,mBAAmB,GAAG,IAAI,uBAAY,EAAsB,CAAA;IAC5D,YAAY,GAAiB,EAAE,CAAA;IAC/B,WAAW,GAAiB,EAAE,CAAA;IAC/B,YAAY,CAAc;IACzB,oBAAoB,CAAiB;IACtC,cAAc,CAAgB;IAC7B,UAAU,CAAa;IACvB,kBAAkB,GAAG,KAAK,CAAA;IAC1B,
|
|
1
|
+
{"version":3,"file":"ManagedConnection.js","sourceRoot":"","sources":["../../../src/connection/ManagedConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,4 +6,4 @@ export declare const connectAsync: ({ url, selfSigned, timeoutMs }: {
|
|
|
6
6
|
timeoutMs?: number | undefined;
|
|
7
7
|
}) => Promise<IConnection>;
|
|
8
8
|
export declare const CONNECTIVITY_CHECKER_SERVICE_ID = "system/connectivity-checker";
|
|
9
|
-
export declare const sendConnectivityRequest: (request: ConnectivityRequest, entryPoint: PeerDescriptor
|
|
9
|
+
export declare const sendConnectivityRequest: (request: ConnectivityRequest, entryPoint: PeerDescriptor) => Promise<ConnectivityResponse>;
|
|
@@ -28,13 +28,13 @@ const utils_1 = require("@streamr/utils");
|
|
|
28
28
|
const uuid_1 = require("uuid");
|
|
29
29
|
const Err = __importStar(require("../helpers/errors"));
|
|
30
30
|
const DhtRpc_1 = require("../proto/packages/dht/protos/DhtRpc");
|
|
31
|
-
const
|
|
31
|
+
const NodeWebsocketClientConnection_1 = require("./websocket/NodeWebsocketClientConnection");
|
|
32
32
|
const WebsocketConnector_1 = require("./websocket/WebsocketConnector");
|
|
33
|
-
const
|
|
33
|
+
const version_1 = require("../helpers/version");
|
|
34
34
|
const logger = new utils_1.Logger(module);
|
|
35
35
|
// TODO use config option or named constant?
|
|
36
36
|
const connectAsync = async ({ url, selfSigned, timeoutMs = 1000 }) => {
|
|
37
|
-
const socket = new
|
|
37
|
+
const socket = new NodeWebsocketClientConnection_1.WebsocketClientConnection();
|
|
38
38
|
let result;
|
|
39
39
|
try {
|
|
40
40
|
result = await (0, utils_1.runAndRaceEvents3)([
|
|
@@ -52,7 +52,7 @@ const connectAsync = async ({ url, selfSigned, timeoutMs = 1000 }) => {
|
|
|
52
52
|
exports.connectAsync = connectAsync;
|
|
53
53
|
exports.CONNECTIVITY_CHECKER_SERVICE_ID = 'system/connectivity-checker';
|
|
54
54
|
const CONNECTIVITY_CHECKER_TIMEOUT = 5000;
|
|
55
|
-
const sendConnectivityRequest = async (request, entryPoint
|
|
55
|
+
const sendConnectivityRequest = async (request, entryPoint) => {
|
|
56
56
|
let outgoingConnection;
|
|
57
57
|
const wsServerInfo = {
|
|
58
58
|
host: entryPoint.websocket.host,
|
|
@@ -73,7 +73,7 @@ const sendConnectivityRequest = async (request, entryPoint, localVersion) => {
|
|
|
73
73
|
// send connectivity request
|
|
74
74
|
const msg = {
|
|
75
75
|
serviceId: exports.CONNECTIVITY_CHECKER_SERVICE_ID,
|
|
76
|
-
|
|
76
|
+
messageId: (0, uuid_1.v4)(),
|
|
77
77
|
body: {
|
|
78
78
|
oneofKind: 'connectivityRequest',
|
|
79
79
|
connectivityRequest: request
|
|
@@ -97,11 +97,11 @@ const sendConnectivityRequest = async (request, entryPoint, localVersion) => {
|
|
|
97
97
|
const remoteVersion = connectivityResponseMessage.version;
|
|
98
98
|
outgoingConnection.off('data', listener);
|
|
99
99
|
clearTimeout(timeoutId);
|
|
100
|
-
if ((0,
|
|
100
|
+
if ((0, version_1.isMaybeSupportedVersion)(remoteVersion)) {
|
|
101
101
|
resolve(connectivityResponseMessage);
|
|
102
102
|
}
|
|
103
103
|
else {
|
|
104
|
-
reject(`
|
|
104
|
+
reject(`Unsupported version: ${remoteVersion}`);
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
else {
|
|
@@ -109,7 +109,7 @@ const sendConnectivityRequest = async (request, entryPoint, localVersion) => {
|
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
111
|
catch (err) {
|
|
112
|
-
logger.trace(
|
|
112
|
+
logger.trace('Could not parse message', { err });
|
|
113
113
|
}
|
|
114
114
|
};
|
|
115
115
|
outgoingConnection.on('data', listener);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectivityChecker.js","sourceRoot":"","sources":["../../../src/connection/connectivityChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAsF;AACtF,+BAAyB;AACzB,uDAAwC;AACxC,gEAG4C;AAE5C,
|
|
1
|
+
{"version":3,"file":"connectivityChecker.js","sourceRoot":"","sources":["../../../src/connection/connectivityChecker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { WebsocketServerConnection } from './websocket/WebsocketServerConnection';
|
|
2
2
|
export declare const DISABLE_CONNECTIVITY_PROBE = 0;
|
|
3
|
-
export declare const attachConnectivityRequestHandler: (connectionToListenTo:
|
|
3
|
+
export declare const attachConnectivityRequestHandler: (connectionToListenTo: WebsocketServerConnection) => void;
|
|
@@ -7,7 +7,7 @@ const DhtRpc_1 = require("../proto/packages/dht/protos/DhtRpc");
|
|
|
7
7
|
const ConnectionManager_1 = require("./ConnectionManager");
|
|
8
8
|
const connectivityChecker_1 = require("./connectivityChecker");
|
|
9
9
|
const WebsocketConnector_1 = require("./websocket/WebsocketConnector");
|
|
10
|
-
const
|
|
10
|
+
const version_1 = require("../helpers/version");
|
|
11
11
|
exports.DISABLE_CONNECTIVITY_PROBE = 0;
|
|
12
12
|
const logger = new utils_1.Logger(module);
|
|
13
13
|
const attachConnectivityRequestHandler = (connectionToListenTo) => {
|
|
@@ -21,20 +21,20 @@ const attachConnectivityRequestHandler = (connectionToListenTo) => {
|
|
|
21
21
|
await handleIncomingConnectivityRequest(connectionToListenTo, message.body.connectivityRequest);
|
|
22
22
|
logger.trace('handleIncomingConnectivityRequest ok');
|
|
23
23
|
}
|
|
24
|
-
catch (
|
|
25
|
-
logger.error('handleIncomingConnectivityRequest', {
|
|
24
|
+
catch (err1) {
|
|
25
|
+
logger.error('handleIncomingConnectivityRequest', { err: err1 });
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
-
catch (
|
|
30
|
-
logger.trace(
|
|
29
|
+
catch (err2) {
|
|
30
|
+
logger.trace('Could not parse message', { err: err2 });
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
};
|
|
34
34
|
exports.attachConnectivityRequestHandler = attachConnectivityRequestHandler;
|
|
35
35
|
const handleIncomingConnectivityRequest = async (connection, connectivityRequest) => {
|
|
36
|
-
const host = connectivityRequest.host ?? connection.
|
|
37
|
-
const ipAddress = connection.
|
|
36
|
+
const host = connectivityRequest.host ?? connection.remoteIpAddress;
|
|
37
|
+
const ipAddress = connection.remoteIpAddress;
|
|
38
38
|
let connectivityResponse;
|
|
39
39
|
if (connectivityRequest.port !== exports.DISABLE_CONNECTIVITY_PROBE) {
|
|
40
40
|
connectivityResponse = await connectivityProbe(connectivityRequest, ipAddress, host);
|
|
@@ -45,12 +45,11 @@ const handleIncomingConnectivityRequest = async (connection, connectivityRequest
|
|
|
45
45
|
host,
|
|
46
46
|
natType: ConnectionManager_1.NatType.UNKNOWN,
|
|
47
47
|
ipAddress: (0, utils_1.ipv4ToNumber)(ipAddress),
|
|
48
|
-
version:
|
|
48
|
+
version: version_1.LOCAL_PROTOCOL_VERSION
|
|
49
49
|
};
|
|
50
50
|
}
|
|
51
51
|
const msg = {
|
|
52
52
|
serviceId: connectivityChecker_1.CONNECTIVITY_CHECKER_SERVICE_ID,
|
|
53
|
-
messageType: DhtRpc_1.MessageType.CONNECTIVITY_RESPONSE,
|
|
54
53
|
messageId: (0, uuid_1.v4)(),
|
|
55
54
|
body: {
|
|
56
55
|
oneofKind: 'connectivityResponse',
|
|
@@ -81,7 +80,7 @@ const connectivityProbe = async (connectivityRequest, ipAddress, host) => {
|
|
|
81
80
|
natType: ConnectionManager_1.NatType.OPEN_INTERNET,
|
|
82
81
|
websocket: { host, port: connectivityRequest.port, tls: connectivityRequest.tls },
|
|
83
82
|
ipAddress: (0, utils_1.ipv4ToNumber)(ipAddress),
|
|
84
|
-
version:
|
|
83
|
+
version: version_1.LOCAL_PROTOCOL_VERSION
|
|
85
84
|
};
|
|
86
85
|
}
|
|
87
86
|
catch (err) {
|
|
@@ -90,7 +89,7 @@ const connectivityProbe = async (connectivityRequest, ipAddress, host) => {
|
|
|
90
89
|
host,
|
|
91
90
|
natType: ConnectionManager_1.NatType.UNKNOWN,
|
|
92
91
|
ipAddress: (0, utils_1.ipv4ToNumber)(ipAddress),
|
|
93
|
-
version:
|
|
92
|
+
version: version_1.LOCAL_PROTOCOL_VERSION
|
|
94
93
|
};
|
|
95
94
|
}
|
|
96
95
|
if (outgoingConnection) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectivityRequestHandler.js","sourceRoot":"","sources":["../../../src/connection/connectivityRequestHandler.ts"],"names":[],"mappings":";;;AAAA,0CAAqD;AACrD,+BAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"connectivityRequestHandler.js","sourceRoot":"","sources":["../../../src/connection/connectivityRequestHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ export declare class WebrtcConnector {
|
|
|
31
31
|
constructor(config: WebrtcConnectorConfig, onNewConnection: (connection: ManagedConnection) => boolean);
|
|
32
32
|
private registerLocalRpcMethods;
|
|
33
33
|
connect(targetPeerDescriptor: PeerDescriptor): ManagedConnection;
|
|
34
|
+
private createConnection;
|
|
34
35
|
setLocalPeerDescriptor(peerDescriptor: PeerDescriptor): void;
|
|
35
36
|
stop(): Promise<void>;
|
|
36
37
|
}
|
|
@@ -61,6 +61,7 @@ class WebrtcConnector {
|
|
|
61
61
|
}
|
|
62
62
|
registerLocalRpcMethods(config, onNewConnection) {
|
|
63
63
|
const localRpc = new WebrtcConnectorRpcLocal_1.WebrtcConnectorRpcLocal({
|
|
64
|
+
createConnection: (targetPeerDescriptor) => this.createConnection(targetPeerDescriptor),
|
|
64
65
|
connect: (targetPeerDescriptor) => this.connect(targetPeerDescriptor),
|
|
65
66
|
onNewConnection,
|
|
66
67
|
ongoingConnectAttempts: this.ongoingConnectAttempts,
|
|
@@ -111,14 +112,7 @@ class WebrtcConnector {
|
|
|
111
112
|
if (existingConnection) {
|
|
112
113
|
return existingConnection;
|
|
113
114
|
}
|
|
114
|
-
const connection =
|
|
115
|
-
remotePeerDescriptor: targetPeerDescriptor,
|
|
116
|
-
iceServers: this.config.iceServers,
|
|
117
|
-
bufferThresholdLow: this.config.bufferThresholdLow,
|
|
118
|
-
bufferThresholdHigh: this.config.bufferThresholdHigh,
|
|
119
|
-
connectingTimeout: this.config.connectionTimeout,
|
|
120
|
-
portRange: this.config.portRange
|
|
121
|
-
});
|
|
115
|
+
const connection = this.createConnection(targetPeerDescriptor);
|
|
122
116
|
const localNodeId = (0, identifiers_1.getNodeIdFromPeerDescriptor)(this.localPeerDescriptor);
|
|
123
117
|
const targetNodeId = (0, identifiers_1.getNodeIdFromPeerDescriptor)(targetPeerDescriptor);
|
|
124
118
|
const offering = ((0, offering_1.getOfferer)(localNodeId, targetNodeId) === 'local');
|
|
@@ -162,6 +156,17 @@ class WebrtcConnector {
|
|
|
162
156
|
}
|
|
163
157
|
return managedConnection;
|
|
164
158
|
}
|
|
159
|
+
createConnection(targetPeerDescriptor) {
|
|
160
|
+
return new NodeWebrtcConnection_1.NodeWebrtcConnection({
|
|
161
|
+
remotePeerDescriptor: targetPeerDescriptor,
|
|
162
|
+
iceServers: this.config.iceServers,
|
|
163
|
+
bufferThresholdLow: this.config.bufferThresholdLow,
|
|
164
|
+
bufferThresholdHigh: this.config.bufferThresholdHigh,
|
|
165
|
+
connectingTimeout: this.config.connectionTimeout,
|
|
166
|
+
portRange: this.config.portRange
|
|
167
|
+
// TODO should we pass maxMessageSize?
|
|
168
|
+
});
|
|
169
|
+
}
|
|
165
170
|
setLocalPeerDescriptor(peerDescriptor) {
|
|
166
171
|
this.localPeerDescriptor = peerDescriptor;
|
|
167
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebrtcConnector.js","sourceRoot":"","sources":["../../../../src/connection/webrtc/WebrtcConnector.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"WebrtcConnector.js","sourceRoot":"","sources":["../../../../src/connection/webrtc/WebrtcConnector.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,10 @@ import { IWebrtcConnectorRpc } from '../../proto/packages/dht/protos/DhtRpc.serv
|
|
|
5
5
|
import { ListeningRpcCommunicator } from '../../transport/ListeningRpcCommunicator';
|
|
6
6
|
import { ManagedConnection } from '../ManagedConnection';
|
|
7
7
|
import { ManagedWebrtcConnection } from '../ManagedWebrtcConnection';
|
|
8
|
+
import { NodeWebrtcConnection } from './NodeWebrtcConnection';
|
|
8
9
|
import { DhtAddress } from '../../identifiers';
|
|
9
10
|
interface WebrtcConnectorRpcLocalConfig {
|
|
11
|
+
createConnection: (targetPeerDescriptor: PeerDescriptor) => NodeWebrtcConnection;
|
|
10
12
|
connect: (targetPeerDescriptor: PeerDescriptor) => ManagedConnection;
|
|
11
13
|
onNewConnection: (connection: ManagedConnection) => boolean;
|
|
12
14
|
ongoingConnectAttempts: Map<DhtAddress, ManagedWebrtcConnection>;
|
|
@@ -6,11 +6,9 @@ const AddressTools_1 = require("../../helpers/AddressTools");
|
|
|
6
6
|
const DhtRpc_1 = require("../../proto/packages/dht/protos/DhtRpc");
|
|
7
7
|
const DhtRpc_client_1 = require("../../proto/packages/dht/protos/DhtRpc.client");
|
|
8
8
|
const ManagedWebrtcConnection_1 = require("../ManagedWebrtcConnection");
|
|
9
|
-
const NodeWebrtcConnection_1 = require("./NodeWebrtcConnection");
|
|
10
9
|
const WebrtcConnectorRpcRemote_1 = require("./WebrtcConnectorRpcRemote");
|
|
11
10
|
const identifiers_1 = require("../../identifiers");
|
|
12
|
-
const
|
|
13
|
-
const versionCompatibility_1 = require("../../helpers/versionCompatibility");
|
|
11
|
+
const version_1 = require("../../helpers/version");
|
|
14
12
|
const logger = new utils_1.Logger(module);
|
|
15
13
|
class WebrtcConnectorRpcLocal {
|
|
16
14
|
config;
|
|
@@ -33,7 +31,7 @@ class WebrtcConnectorRpcLocal {
|
|
|
33
31
|
let managedConnection = this.config.ongoingConnectAttempts.get(nodeId);
|
|
34
32
|
let connection = managedConnection?.getWebrtcConnection();
|
|
35
33
|
if (!managedConnection) {
|
|
36
|
-
connection =
|
|
34
|
+
connection = this.config.createConnection(remotePeer);
|
|
37
35
|
managedConnection = new ManagedWebrtcConnection_1.ManagedWebrtcConnection(this.config.getLocalPeerDescriptor(), undefined, connection);
|
|
38
36
|
managedConnection.setRemotePeerDescriptor(remotePeer);
|
|
39
37
|
this.config.ongoingConnectAttempts.set(nodeId, managedConnection);
|
|
@@ -50,11 +48,11 @@ class WebrtcConnectorRpcLocal {
|
|
|
50
48
|
// Always use offerers connectionId
|
|
51
49
|
connection.setConnectionId(request.connectionId);
|
|
52
50
|
connection.setRemoteDescription(request.description, 'offer');
|
|
53
|
-
managedConnection.on('handshakeRequest', (_sourceDescriptor,
|
|
51
|
+
managedConnection.on('handshakeRequest', (_sourceDescriptor, remoteVersion) => {
|
|
54
52
|
if (this.config.ongoingConnectAttempts.has(nodeId)) {
|
|
55
53
|
this.config.ongoingConnectAttempts.delete(nodeId);
|
|
56
54
|
}
|
|
57
|
-
if (!(0,
|
|
55
|
+
if (!(0, version_1.isMaybeSupportedVersion)(remoteVersion)) {
|
|
58
56
|
managedConnection.rejectHandshake(DhtRpc_1.HandshakeError.UNSUPPORTED_VERSION);
|
|
59
57
|
}
|
|
60
58
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebrtcConnectorRpcLocal.js","sourceRoot":"","sources":["../../../../src/connection/webrtc/WebrtcConnectorRpcLocal.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AACvC,6DAAsF;AAEtF,mEAM+C;AAC/C,iFAAwF;AAKxF,wEAAoE;
|
|
1
|
+
{"version":3,"file":"WebrtcConnectorRpcLocal.js","sourceRoot":"","sources":["../../../../src/connection/webrtc/WebrtcConnectorRpcLocal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import EventEmitter from 'eventemitter3';
|
|
3
|
+
import { ConnectionEvents, ConnectionID, ConnectionType, IConnection } from '../IConnection';
|
|
4
|
+
export interface Socket {
|
|
5
|
+
binaryType: string;
|
|
6
|
+
readyState: number;
|
|
7
|
+
close(code?: number, reason?: string): void;
|
|
8
|
+
send(data: string | Buffer | ArrayBuffer | ArrayBufferView): void;
|
|
9
|
+
}
|
|
10
|
+
export declare const GOING_AWAY = 1001;
|
|
11
|
+
export declare const CUSTOM_GOING_AWAY = 3001;
|
|
12
|
+
export declare abstract class AbstractWebsocketClientConnection extends EventEmitter<ConnectionEvents> implements IConnection {
|
|
13
|
+
readonly connectionId: ConnectionID;
|
|
14
|
+
protected abstract socket?: Socket;
|
|
15
|
+
connectionType: ConnectionType;
|
|
16
|
+
protected destroyed: boolean;
|
|
17
|
+
constructor();
|
|
18
|
+
abstract connect(address: string, selfSigned?: boolean): void;
|
|
19
|
+
protected abstract stopListening(): void;
|
|
20
|
+
send(data: Uint8Array): void;
|
|
21
|
+
close(gracefulLeave: boolean): Promise<void>;
|
|
22
|
+
destroy(): void;
|
|
23
|
+
protected onOpen(): void;
|
|
24
|
+
protected onMessage(message: Uint8Array): void;
|
|
25
|
+
protected onClose(code: number, reason: string): void;
|
|
26
|
+
protected onError(error: Error): void;
|
|
27
|
+
protected doDisconnect(code?: number, reason?: string): void;
|
|
28
|
+
}
|
package/dist/src/connection/websocket/{ClientWebsocket.js → AbstractWebsocketClientConnection.js}
RENAMED
|
@@ -3,82 +3,33 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
7
|
-
const utils_1 = require("@streamr/utils");
|
|
6
|
+
exports.AbstractWebsocketClientConnection = exports.CUSTOM_GOING_AWAY = exports.GOING_AWAY = void 0;
|
|
8
7
|
const eventemitter3_1 = __importDefault(require("eventemitter3"));
|
|
9
|
-
const websocket_1 = require("websocket");
|
|
10
|
-
const IConnection_1 = require("../IConnection");
|
|
11
8
|
const Connection_1 = require("../Connection");
|
|
12
|
-
const
|
|
9
|
+
const IConnection_1 = require("../IConnection");
|
|
10
|
+
const utils_1 = require("@streamr/utils");
|
|
13
11
|
// https://kapeli.com/cheat_sheets/WebSocket_Status_Codes.docset/Contents/Resources/Documents/index
|
|
14
12
|
// Browsers send this automatically when closing a tab
|
|
15
13
|
exports.GOING_AWAY = 1001;
|
|
16
14
|
// The GOING_AWAY is a reserved code and we shouldn't send that from the application. Therefore
|
|
17
15
|
// we have a custom counterpart
|
|
18
16
|
exports.CUSTOM_GOING_AWAY = 3001;
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
// https://github.com/websockets/ws/blob/master/doc/ws.md#ready-state-constants
|
|
18
|
+
const OPEN = 1;
|
|
19
|
+
const logger = new utils_1.Logger(module);
|
|
20
|
+
class AbstractWebsocketClientConnection extends eventemitter3_1.default {
|
|
21
21
|
connectionId;
|
|
22
|
-
socket;
|
|
23
22
|
connectionType = IConnection_1.ConnectionType.WEBSOCKET_CLIENT;
|
|
24
23
|
destroyed = false;
|
|
25
24
|
constructor() {
|
|
26
25
|
super();
|
|
27
26
|
this.connectionId = (0, Connection_1.createRandomConnectionId)();
|
|
28
27
|
}
|
|
29
|
-
// TODO explicit default value for "selfSigned" or make it required
|
|
30
|
-
connect(address, selfSigned) {
|
|
31
|
-
if (!this.destroyed) {
|
|
32
|
-
this.socket = new websocket_1.w3cwebsocket(address, undefined, undefined, undefined, { rejectUnauthorized: !selfSigned });
|
|
33
|
-
this.socket.binaryType = BINARY_TYPE;
|
|
34
|
-
this.socket.onerror = (error) => {
|
|
35
|
-
if (!this.destroyed) {
|
|
36
|
-
logger.trace('WebSocket Client error: ' + error?.message, { error });
|
|
37
|
-
this.emit('error', error.name);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
this.socket.onopen = () => {
|
|
41
|
-
if (!this.destroyed) {
|
|
42
|
-
logger.trace('WebSocket Client Connected');
|
|
43
|
-
if (this.socket && this.socket.readyState === this.socket.OPEN) {
|
|
44
|
-
this.emit('connected');
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
this.socket.onclose = (event) => {
|
|
49
|
-
if (!this.destroyed) {
|
|
50
|
-
logger.trace('Websocket Closed');
|
|
51
|
-
this.doDisconnect(event.code, event.reason);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
this.socket.onmessage = (message) => {
|
|
55
|
-
if (!this.destroyed) {
|
|
56
|
-
if (typeof message.data === 'string') {
|
|
57
|
-
logger.debug('Received string: \'' + message.data + '\'');
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
this.emit('data', new Uint8Array(message.data));
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
logger.debug('Tried to connect() a stopped connection');
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
doDisconnect(code, reason) {
|
|
70
|
-
this.destroyed = true;
|
|
71
|
-
this.stopListening();
|
|
72
|
-
this.socket = undefined;
|
|
73
|
-
const gracefulLeave = (code === exports.GOING_AWAY) || (code === exports.CUSTOM_GOING_AWAY);
|
|
74
|
-
this.emit('disconnected', gracefulLeave, code, reason);
|
|
75
|
-
this.removeAllListeners();
|
|
76
|
-
}
|
|
77
28
|
send(data) {
|
|
78
29
|
if (!this.destroyed) {
|
|
79
|
-
if (this.socket && this.socket.readyState ===
|
|
30
|
+
if (this.socket && this.socket.readyState === OPEN) {
|
|
80
31
|
logger.trace(`Sending data with size ${data.byteLength}`);
|
|
81
|
-
this.socket?.send(data
|
|
32
|
+
this.socket?.send(data);
|
|
82
33
|
}
|
|
83
34
|
else {
|
|
84
35
|
logger.debug('Tried to send data on a non-open connection');
|
|
@@ -99,14 +50,6 @@ class ClientWebsocket extends eventemitter3_1.default {
|
|
|
99
50
|
logger.debug('Tried to close() a stopped connection');
|
|
100
51
|
}
|
|
101
52
|
}
|
|
102
|
-
stopListening() {
|
|
103
|
-
if (this.socket) {
|
|
104
|
-
this.socket.onopen = undefined;
|
|
105
|
-
this.socket.onclose = undefined;
|
|
106
|
-
this.socket.onerror = undefined;
|
|
107
|
-
this.socket.onmessage = undefined;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
53
|
destroy() {
|
|
111
54
|
logger.trace('destroy() a connection');
|
|
112
55
|
if (!this.destroyed) {
|
|
@@ -122,6 +65,37 @@ class ClientWebsocket extends eventemitter3_1.default {
|
|
|
122
65
|
logger.debug('Tried to destroy() a stopped connection');
|
|
123
66
|
}
|
|
124
67
|
}
|
|
68
|
+
onOpen() {
|
|
69
|
+
if (!this.destroyed) {
|
|
70
|
+
logger.trace('WebSocket Client Connected');
|
|
71
|
+
if (this.socket && this.socket.readyState === OPEN) {
|
|
72
|
+
this.emit('connected');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
onMessage(message) {
|
|
77
|
+
this.emit('data', message);
|
|
78
|
+
}
|
|
79
|
+
onClose(code, reason) {
|
|
80
|
+
if (!this.destroyed) {
|
|
81
|
+
logger.trace('Websocket Closed');
|
|
82
|
+
this.doDisconnect(code, reason);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
onError(error) {
|
|
86
|
+
if (!this.destroyed) {
|
|
87
|
+
logger.trace('WebSocket Client error: ' + error?.message, { error });
|
|
88
|
+
this.emit('error', error.name);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
doDisconnect(code, reason) {
|
|
92
|
+
this.destroyed = true;
|
|
93
|
+
this.stopListening();
|
|
94
|
+
this.socket = undefined;
|
|
95
|
+
const gracefulLeave = (code === exports.GOING_AWAY) || (code === exports.CUSTOM_GOING_AWAY);
|
|
96
|
+
this.emit('disconnected', gracefulLeave, code, reason);
|
|
97
|
+
this.removeAllListeners();
|
|
98
|
+
}
|
|
125
99
|
}
|
|
126
|
-
exports.
|
|
127
|
-
//# sourceMappingURL=
|
|
100
|
+
exports.AbstractWebsocketClientConnection = AbstractWebsocketClientConnection;
|
|
101
|
+
//# sourceMappingURL=AbstractWebsocketClientConnection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractWebsocketClientConnection.js","sourceRoot":"","sources":["../../../../src/connection/websocket/AbstractWebsocketClientConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { WebSocket } from 'ws';
|
|
2
|
+
import { AbstractWebsocketClientConnection } from './AbstractWebsocketClientConnection';
|
|
3
|
+
export declare class WebsocketClientConnection extends AbstractWebsocketClientConnection {
|
|
4
|
+
protected socket?: WebSocket;
|
|
5
|
+
connect(address: string, selfSigned?: boolean): void;
|
|
6
|
+
protected stopListening(): void;
|
|
7
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WebsocketClientConnection = void 0;
|
|
4
|
+
const utils_1 = require("@streamr/utils");
|
|
5
|
+
const ws_1 = require("ws");
|
|
6
|
+
const AbstractWebsocketClientConnection_1 = require("./AbstractWebsocketClientConnection");
|
|
7
|
+
const logger = new utils_1.Logger(module);
|
|
8
|
+
const BINARY_TYPE = 'nodebuffer';
|
|
9
|
+
class WebsocketClientConnection extends AbstractWebsocketClientConnection_1.AbstractWebsocketClientConnection {
|
|
10
|
+
socket;
|
|
11
|
+
// TODO explicit default value for "selfSigned" or make it required
|
|
12
|
+
connect(address, selfSigned) {
|
|
13
|
+
if (!this.destroyed) {
|
|
14
|
+
this.socket = new ws_1.WebSocket(address, { rejectUnauthorized: !selfSigned });
|
|
15
|
+
this.socket.binaryType = BINARY_TYPE;
|
|
16
|
+
this.socket.on('error', (error) => this.onError(error));
|
|
17
|
+
this.socket.on('open', () => this.onOpen());
|
|
18
|
+
this.socket.on('close', (code, reason) => this.onClose(code, (0, utils_1.binaryToUtf8)(reason)));
|
|
19
|
+
this.socket.on('message', (message, isBinary) => {
|
|
20
|
+
if (!this.destroyed) {
|
|
21
|
+
if (isBinary === false) {
|
|
22
|
+
logger.debug('Received string data, only binary data is supported');
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
this.onMessage(new Uint8Array(message));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
logger.debug('Tried to connect() a stopped connection');
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
stopListening() {
|
|
35
|
+
this.socket?.removeAllListeners();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.WebsocketClientConnection = WebsocketClientConnection;
|
|
39
|
+
//# sourceMappingURL=NodeWebsocketClientConnection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeWebsocketClientConnection.js","sourceRoot":"","sources":["../../../../src/connection/websocket/NodeWebsocketClientConnection.ts"],"names":[],"mappings":";;;AAAA,0CAAqD;AACrD,2BAA8B;AAC9B,2FAAuF;AAEvF,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAM,WAAW,GAAG,YAAY,CAAA;AAEhC,MAAa,yBAA0B,SAAQ,qEAAiC;IAElE,MAAM,CAAY;IAE5B,mEAAmE;IAC5D,OAAO,CAAC,OAAe,EAAE,UAAoB;QAChD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,GAAG,IAAI,cAAS,CAAC,OAAO,EAAE,EAAE,kBAAkB,EAAE,CAAC,UAAU,EAAE,CAAC,CAAA;YACzE,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,WAAW,CAAA;YACpC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;YAC9D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;YAC3C,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAY,EAAE,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAA,oBAAY,EAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACnG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAe,EAAE,QAAiB,EAAE,EAAE;gBAC7D,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBAClB,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;wBACrB,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAA;oBACvE,CAAC;yBAAM,CAAC;wBACJ,IAAI,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;oBAC3C,CAAC;gBACL,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;QAC3D,CAAC;IACL,CAAC;IAES,aAAa;QACnB,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAA;IACrC,CAAC;CAEJ;AA9BD,8DA8BC"}
|