@spider-mesh/ws 2.0.40 → 2.0.42
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 +80 -169
- package/build/examples/helpers/createMesh.d.ts +13 -0
- package/build/examples/helpers/createMesh.js +19 -0
- package/build/examples/helpers/createMesh.js.map +1 -0
- package/build/examples/websocket-client.js +4 -5
- package/build/examples/websocket-client.js.map +1 -1
- package/build/examples/websocket-e2e-client.js +7 -9
- package/build/examples/websocket-e2e-client.js.map +1 -1
- package/build/examples/websocket-e2e-matrix-client.js +7 -9
- package/build/examples/websocket-e2e-matrix-client.js.map +1 -1
- package/build/examples/websocket-e2e-matrix-provider.js +7 -8
- package/build/examples/websocket-e2e-matrix-provider.js.map +1 -1
- package/build/examples/websocket-e2e-provider.js +7 -8
- package/build/examples/websocket-e2e-provider.js.map +1 -1
- package/build/examples/websocket-e2e-reverse-client.js +7 -9
- package/build/examples/websocket-e2e-reverse-client.js.map +1 -1
- package/build/examples/websocket-e2e-reverse-server.js +7 -9
- package/build/examples/websocket-e2e-reverse-server.js.map +1 -1
- package/build/examples/websocket-e2e-round-robin-client.js +4 -5
- package/build/examples/websocket-e2e-round-robin-client.js.map +1 -1
- package/build/examples/websocket-provider.js +7 -8
- package/build/examples/websocket-provider.js.map +1 -1
- package/build/examples/websocket-server.js +1 -1
- package/build/examples/websocket-server.js.map +1 -1
- package/build/examples/websocket-smoke-test.js +10 -7
- package/build/examples/websocket-smoke-test.js.map +1 -1
- package/build/src/BaseWebsocketTransporter.d.ts +4 -5
- package/build/src/BaseWebsocketTransporter.js +43 -52
- package/build/src/BaseWebsocketTransporter.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,42 +1,13 @@
|
|
|
1
1
|
# Spider Mesh WS
|
|
2
2
|
|
|
3
|
-
`@spider-mesh/ws`
|
|
3
|
+
`@spider-mesh/ws` provides the WebSocket transport package for `@spider-mesh/core`.
|
|
4
4
|
|
|
5
|
-
It contains
|
|
5
|
+
It contains:
|
|
6
6
|
|
|
7
|
-
- `WebsocketTransporter
|
|
8
|
-
- `WebsocketRelayServer
|
|
7
|
+
- `WebsocketTransporter` for application nodes
|
|
8
|
+
- `WebsocketRelayServer` for the relay process
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
The core package stays runtime-agnostic, while `@spider-mesh/ws` contains the Node.js/Bun-specific WebSocket implementation based on `ws` and MsgPack.
|
|
13
|
-
|
|
14
|
-
## What This Package Does
|
|
15
|
-
|
|
16
|
-
Use `@spider-mesh/ws` when you want the built-in WebSocket transport instead of writing a custom transporter.
|
|
17
|
-
|
|
18
|
-
The package provides:
|
|
19
|
-
|
|
20
|
-
- binary WebSocket frames encoded with `@msgpack/msgpack`
|
|
21
|
-
- RPC request, response, and cancel forwarding
|
|
22
|
-
- node discovery propagation through relay hello and offline events
|
|
23
|
-
- pubsub publish, subscribe, and unsubscribe forwarding
|
|
24
|
-
- reconnect and heartbeat handling in the client transporter
|
|
25
|
-
- a dedicated relay server entry at `@spider-mesh/ws/relay-server`
|
|
26
|
-
|
|
27
|
-
## When To Use It
|
|
28
|
-
|
|
29
|
-
Use this package when:
|
|
30
|
-
|
|
31
|
-
- your runtime is Node.js or Bun
|
|
32
|
-
- you want an official ready-to-use Spider Mesh transport
|
|
33
|
-
- you want one relay process that many providers and clients can connect to
|
|
34
|
-
|
|
35
|
-
Do not use this package as the default import source for runtime-agnostic APIs.
|
|
36
|
-
|
|
37
|
-
- Import `SpiderMesh`, `Microservice`, and `RemoteServiceLinker` from `@spider-mesh/core`
|
|
38
|
-
- Import `WebsocketTransporter` from `@spider-mesh/ws`
|
|
39
|
-
- Import `WebsocketRelayServer` from `@spider-mesh/ws/relay-server`
|
|
10
|
+
The package is ESM-only.
|
|
40
11
|
|
|
41
12
|
## Install
|
|
42
13
|
|
|
@@ -44,220 +15,160 @@ Do not use this package as the default import source for runtime-agnostic APIs.
|
|
|
44
15
|
bun add @spider-mesh/core @spider-mesh/ws rxjs reflect-metadata
|
|
45
16
|
```
|
|
46
17
|
|
|
47
|
-
Keep `@spider-mesh/ws` and `@spider-mesh/core` on matching
|
|
48
|
-
|
|
49
|
-
`SpiderMeshNode` metadata consumed by this package no longer includes `ips` or `online`.
|
|
50
|
-
Relay hello frames now mirror the core node metadata directly and discovery broadcast uses a single argument:
|
|
51
|
-
|
|
52
|
-
```ts
|
|
53
|
-
broadcast(data: MdnsMessage<NodeMetadata>): Promise<void>
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
This package is ESM-only.
|
|
18
|
+
Keep `@spider-mesh/ws` and `@spider-mesh/core` on matching versions.
|
|
57
19
|
|
|
58
20
|
## Export Surface
|
|
59
21
|
|
|
60
|
-
|
|
22
|
+
Node/Bun transporter:
|
|
61
23
|
|
|
62
24
|
```ts
|
|
63
25
|
import { WebsocketTransporter } from '@spider-mesh/ws/node'
|
|
64
26
|
```
|
|
65
27
|
|
|
66
|
-
|
|
28
|
+
Browser transporter:
|
|
67
29
|
|
|
68
30
|
```ts
|
|
69
|
-
import {
|
|
31
|
+
import { WebsocketTransporter } from '@spider-mesh/ws/browser'
|
|
70
32
|
```
|
|
71
33
|
|
|
72
|
-
|
|
34
|
+
React Native transporter:
|
|
73
35
|
|
|
74
36
|
```ts
|
|
75
|
-
import {
|
|
76
|
-
import { WebsocketTransporter } from '@spider-mesh/ws/node'
|
|
77
|
-
import { WebsocketRelayServer } from '@spider-mesh/ws/relay-server'
|
|
37
|
+
import { WebsocketTransporter } from '@spider-mesh/ws/react-native'
|
|
78
38
|
```
|
|
79
39
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
| Runtime | Transporter Entry | Relay Server Entry |
|
|
83
|
-
| --- | --- | --- |
|
|
84
|
-
| Node.js | `@spider-mesh/ws/node` | `@spider-mesh/ws/relay-server` |
|
|
85
|
-
| Bun | `@spider-mesh/ws/node` | `@spider-mesh/ws/relay-server` |
|
|
86
|
-
| Browser | Supported via `@spider-mesh/ws/browser` | Not supported |
|
|
87
|
-
| React Native | Supported via `@spider-mesh/ws/react-native` | Not supported |
|
|
88
|
-
|
|
89
|
-
The package root `@spider-mesh/ws` is not exported. Import a runtime-specific subpath explicitly.
|
|
40
|
+
Relay server:
|
|
90
41
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
42
|
+
```ts
|
|
43
|
+
import { WebsocketRelayServer } from '@spider-mesh/ws/relay-server'
|
|
44
|
+
```
|
|
94
45
|
|
|
95
|
-
|
|
46
|
+
## Runtime Setup
|
|
96
47
|
|
|
97
|
-
|
|
48
|
+
Create one `WebsocketTransporter`, connect it to the relay, then register that shared transporter directly on `SpiderMesh`.
|
|
98
49
|
|
|
99
50
|
```ts
|
|
51
|
+
import { Registry, SpiderMesh } from '@spider-mesh/core'
|
|
100
52
|
import { WebsocketTransporter } from '@spider-mesh/ws/node'
|
|
101
|
-
import { WebsocketTransporter as BrowserWebsocketTransporter } from '@spider-mesh/ws/browser'
|
|
102
|
-
import { WebsocketTransporter as ReactNativeWebsocketTransporter } from '@spider-mesh/ws/react-native'
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Architecture
|
|
106
53
|
|
|
107
|
-
|
|
54
|
+
const transporter = new WebsocketTransporter({
|
|
55
|
+
heartbeatIntervalMs: 5000,
|
|
56
|
+
reconnectIntervalMs: 1000,
|
|
57
|
+
})
|
|
108
58
|
|
|
109
|
-
1
|
|
110
|
-
2. Start provider nodes with `WebsocketTransporter` and local `@Microservice()` classes.
|
|
111
|
-
3. Start client nodes with `WebsocketTransporter` and `RemoteServiceLinker.link()`.
|
|
112
|
-
4. In clients, wait for discovery before the first RPC call.
|
|
59
|
+
transporter.connect('ws://127.0.0.1:8787')
|
|
113
60
|
|
|
114
|
-
|
|
61
|
+
const registry = new Registry()
|
|
62
|
+
const mesh = new SpiderMesh(registry)
|
|
115
63
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
- the relay server forwards frames, but does not host application services
|
|
64
|
+
mesh.registerTransporter(transporter)
|
|
65
|
+
```
|
|
119
66
|
|
|
120
|
-
|
|
67
|
+
`SpiderMesh.registerTransporter()` now links all supported capabilities on the same transporter instance, so one `WebsocketTransporter` can serve RPC, discovery, and pubsub together.
|
|
121
68
|
|
|
122
|
-
|
|
69
|
+
## Relay Server
|
|
123
70
|
|
|
124
71
|
```ts
|
|
125
72
|
import { WebsocketRelayServer } from '@spider-mesh/ws/relay-server'
|
|
126
73
|
|
|
127
74
|
const server = new WebsocketRelayServer({
|
|
128
|
-
|
|
129
|
-
|
|
75
|
+
host: '127.0.0.1',
|
|
76
|
+
port: 8787,
|
|
130
77
|
})
|
|
131
78
|
|
|
132
79
|
console.log(`WebSocket relay listening on ws://127.0.0.1:${server.port}`)
|
|
133
80
|
```
|
|
134
81
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
```ts
|
|
138
|
-
import { Microservice, SpiderMesh } from '@spider-mesh/core'
|
|
139
|
-
import { WebsocketTransporter } from '@spider-mesh/ws/node'
|
|
82
|
+
The relay forwards discovery, RPC, and pubsub frames. It does not host application services.
|
|
140
83
|
|
|
141
|
-
|
|
142
|
-
heartbeatIntervalMs: 5000,
|
|
143
|
-
reconnectIntervalMs: 1000,
|
|
144
|
-
})
|
|
84
|
+
## Provider Example
|
|
145
85
|
|
|
146
|
-
|
|
86
|
+
```ts
|
|
87
|
+
import { Microservice } from '@spider-mesh/core'
|
|
147
88
|
|
|
148
89
|
@Microservice()
|
|
149
90
|
class GreetingService {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
91
|
+
async hello(name: string) {
|
|
92
|
+
return `hello ${name}`
|
|
93
|
+
}
|
|
153
94
|
}
|
|
154
95
|
|
|
155
96
|
new GreetingService()
|
|
156
|
-
new SpiderMesh({ transporters: [transporter] })
|
|
157
97
|
```
|
|
158
98
|
|
|
159
|
-
|
|
99
|
+
## Client Example
|
|
160
100
|
|
|
161
101
|
```ts
|
|
162
|
-
import { RemoteServiceLinker
|
|
163
|
-
import { WebsocketTransporter } from '@spider-mesh/ws/node'
|
|
164
|
-
|
|
165
|
-
const transporter = new WebsocketTransporter({
|
|
166
|
-
heartbeatIntervalMs: 5000,
|
|
167
|
-
reconnectIntervalMs: 1000,
|
|
168
|
-
})
|
|
169
|
-
|
|
170
|
-
transporter.connect('ws://127.0.0.1:8787')
|
|
102
|
+
import { RemoteServiceLinker } from '@spider-mesh/core'
|
|
171
103
|
|
|
172
104
|
type GreetingService = {
|
|
173
|
-
|
|
105
|
+
hello(name: string): Promise<string>
|
|
174
106
|
}
|
|
175
107
|
|
|
176
|
-
const mesh = new SpiderMesh({ transporters: [transporter] })
|
|
177
108
|
const greeter = RemoteServiceLinker.link<GreetingService>(mesh, {
|
|
178
|
-
|
|
179
|
-
|
|
109
|
+
service: 'GreetingService',
|
|
110
|
+
timeout: 5000,
|
|
180
111
|
})
|
|
181
112
|
|
|
182
113
|
await greeter.wait()
|
|
183
114
|
console.log(await greeter.hello('world'))
|
|
184
115
|
```
|
|
185
116
|
|
|
186
|
-
##
|
|
117
|
+
## WebsocketTransporter
|
|
187
118
|
|
|
188
|
-
`WebsocketTransporter`
|
|
119
|
+
`WebsocketTransporter` owns one shared WebSocket connection layer.
|
|
189
120
|
|
|
190
|
-
|
|
191
|
-
- `reconnectIntervalMs`: delay before reconnect attempts after disconnect
|
|
192
|
-
- `unsubscribeDelayMs`: delay before unsubscribe is sent after the last local subscriber leaves a topic
|
|
121
|
+
Current responsibilities:
|
|
193
122
|
|
|
194
|
-
|
|
123
|
+
- maintain relay connections
|
|
124
|
+
- expose `status$` for per-URL connection status
|
|
125
|
+
- send and receive RPC frames
|
|
126
|
+
- propagate discovery `hello` and `offline` frames
|
|
127
|
+
- forward pubsub messages and subscription changes
|
|
128
|
+
- integrate directly with `mesh.registerTransporter(transporter)`
|
|
195
129
|
|
|
196
|
-
|
|
130
|
+
Supported options:
|
|
197
131
|
|
|
198
|
-
|
|
199
|
-
|
|
132
|
+
- `heartbeatIntervalMs`
|
|
133
|
+
- `reconnectIntervalMs`
|
|
134
|
+
- `unsubscribeDelayMs`
|
|
200
135
|
|
|
201
|
-
|
|
202
|
-
heartbeatIntervalMs: 5000,
|
|
203
|
-
reconnectIntervalMs: 1000,
|
|
204
|
-
unsubscribeDelayMs: 10000,
|
|
205
|
-
})
|
|
136
|
+
`status$` is a `BehaviorSubject<Map<string, string>>` with values such as `connecting`, `connected`, `error`, and `not_connected`.
|
|
206
137
|
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
138
|
+
## Runtime Support
|
|
139
|
+
|
|
140
|
+
| Runtime | Transporter Entry | Relay Server |
|
|
141
|
+
| --- | --- | --- |
|
|
142
|
+
| Node.js | `@spider-mesh/ws/node` | supported |
|
|
143
|
+
| Bun | `@spider-mesh/ws/node` | supported |
|
|
144
|
+
| Browser | `@spider-mesh/ws/browser` | not supported |
|
|
145
|
+
| React Native | `@spider-mesh/ws/react-native` | not supported |
|
|
211
146
|
|
|
212
|
-
##
|
|
147
|
+
## Tests
|
|
213
148
|
|
|
214
|
-
|
|
215
|
-
- Observable-returning RPC handlers are supported.
|
|
216
|
-
- Discovery is driven by relay `hello` and `offline` synchronization.
|
|
217
|
-
- Pubsub subscriptions are tracked by topic on the relay.
|
|
218
|
-
- Relay startup should happen before providers and clients.
|
|
219
|
-
- `WebsocketRelayServer` is a relay, not an application runtime.
|
|
149
|
+
The package includes:
|
|
220
150
|
|
|
221
|
-
|
|
151
|
+
- binary transporter smoke coverage
|
|
152
|
+
- connection status coverage
|
|
153
|
+
- SpiderMesh RPC e2e coverage
|
|
154
|
+
- reverse RPC coverage
|
|
155
|
+
- matrix coverage for sync/async/observable/error paths
|
|
156
|
+
- multi-provider routing coverage
|
|
222
157
|
|
|
223
|
-
|
|
158
|
+
Run the full suite with:
|
|
224
159
|
|
|
225
160
|
```bash
|
|
226
|
-
bun run build
|
|
227
|
-
bun run test:websocket
|
|
228
|
-
bun run test:websocket:e2e
|
|
229
|
-
bun run test:websocket:e2e:matrix
|
|
230
|
-
bun run test:websocket:e2e:reverse
|
|
231
161
|
bun run test:e2e
|
|
232
162
|
```
|
|
233
163
|
|
|
234
|
-
|
|
164
|
+
Build with:
|
|
235
165
|
|
|
236
166
|
```bash
|
|
237
|
-
bun run
|
|
238
|
-
bun run example:websocket:provider
|
|
239
|
-
bun run example:websocket:client
|
|
167
|
+
bun run build
|
|
240
168
|
```
|
|
241
169
|
|
|
242
|
-
##
|
|
243
|
-
|
|
244
|
-
Canonical examples in this package:
|
|
245
|
-
|
|
246
|
-
- `examples/websocket-server.ts`
|
|
247
|
-
- `examples/websocket-provider.ts`
|
|
248
|
-
- `examples/websocket-client.ts`
|
|
249
|
-
- `examples/websocket-e2e-test.ts`
|
|
250
|
-
- `examples/websocket-e2e-matrix-test.ts`
|
|
251
|
-
- `examples/websocket-e2e-round-robin-test.ts`
|
|
252
|
-
|
|
253
|
-
Use these as the preferred implementation references when writing app code or generating code with AI tools.
|
|
254
|
-
|
|
255
|
-
## Relationship With Core
|
|
256
|
-
|
|
257
|
-
Keep these responsibilities separate:
|
|
258
|
-
|
|
259
|
-
- `@spider-mesh/core`: service runtime, decorators, remote linking, shared contracts
|
|
260
|
-
- `@spider-mesh/ws`: built-in WebSocket transporter
|
|
261
|
-
- `@spider-mesh/ws/relay-server`: dedicated relay process
|
|
170
|
+
## Notes
|
|
262
171
|
|
|
263
|
-
|
|
172
|
+
- The package root is not exported; use runtime-specific subpaths.
|
|
173
|
+
- RPC and relay frames are encoded with `@msgpack/msgpack`.
|
|
174
|
+
- Start the relay before providers and clients.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Registry, SpiderMesh } from '@spider-mesh/core';
|
|
2
|
+
import { WebsocketTransporter } from '../../src/node.js';
|
|
3
|
+
export type CreateMeshOptions = {
|
|
4
|
+
wsUrl?: string;
|
|
5
|
+
heartbeatIntervalMs?: number;
|
|
6
|
+
reconnectIntervalMs?: number;
|
|
7
|
+
unsubscribeDelayMs?: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function createMesh(options?: CreateMeshOptions): {
|
|
10
|
+
mesh: SpiderMesh;
|
|
11
|
+
registry: Registry;
|
|
12
|
+
transporter: WebsocketTransporter;
|
|
13
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Registry, SpiderMesh } from '@spider-mesh/core';
|
|
2
|
+
import { WebsocketTransporter } from '../../src/node.js';
|
|
3
|
+
export function createMesh(options = {}) {
|
|
4
|
+
const transporter = new WebsocketTransporter({
|
|
5
|
+
heartbeatIntervalMs: options.heartbeatIntervalMs,
|
|
6
|
+
reconnectIntervalMs: options.reconnectIntervalMs,
|
|
7
|
+
unsubscribeDelayMs: options.unsubscribeDelayMs,
|
|
8
|
+
});
|
|
9
|
+
transporter.connect(options.wsUrl || 'ws://127.0.0.1:8787');
|
|
10
|
+
const registry = new Registry();
|
|
11
|
+
const mesh = new SpiderMesh(registry);
|
|
12
|
+
mesh.registerTransporter(transporter);
|
|
13
|
+
return {
|
|
14
|
+
mesh,
|
|
15
|
+
registry,
|
|
16
|
+
transporter,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=createMesh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createMesh.js","sourceRoot":"","sources":["../../../examples/helpers/createMesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AASxD,MAAM,UAAU,UAAU,CAAC,UAA6B,EAAE;IACtD,MAAM,WAAW,GAAG,IAAI,oBAAoB,CAAC;QACzC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;KACjD,CAAC,CAAA;IAEF,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,qBAAqB,CAAC,CAAA;IAE3D,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;IAC/B,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAA;IACrC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAA;IAErC,OAAO;QACH,IAAI;QACJ,QAAQ;QACR,WAAW;KACd,CAAA;AACL,CAAC"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { RemoteServiceLinker
|
|
2
|
-
import {
|
|
1
|
+
import { RemoteServiceLinker } from '@spider-mesh/core';
|
|
2
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
3
3
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
4
|
-
const
|
|
4
|
+
const { mesh } = createMesh({
|
|
5
|
+
wsUrl,
|
|
5
6
|
heartbeatIntervalMs: 5000,
|
|
6
7
|
reconnectIntervalMs: 1000,
|
|
7
8
|
});
|
|
8
|
-
transporter.connect(wsUrl);
|
|
9
|
-
const mesh = new SpiderMesh({ transporters: [transporter] });
|
|
10
9
|
const greeter = RemoteServiceLinker.link(mesh, {
|
|
11
10
|
service: 'GreetingService',
|
|
12
11
|
timeout: 5000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../../examples/websocket-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../../examples/websocket-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AAMzD,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IACxB,KAAK;IACL,mBAAmB,EAAE,IAAI;IACzB,mBAAmB,EAAE,IAAI;CAC5B,CAAC,CAAA;AACF,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAkB,IAAI,EAAE;IAC5D,OAAO,EAAE,iBAAiB;IAC1B,OAAO,EAAE,IAAI;CAChB,CAAC,CAAA;AAEF,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;AAEpB,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;IAClD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AACxB,CAAC,CAAC,CAAA"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { firstValueFrom, timeout } from 'rxjs';
|
|
2
|
-
import { RemoteServiceLinker
|
|
3
|
-
import {
|
|
2
|
+
import { RemoteServiceLinker } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
|
-
const transporterOptions = {
|
|
6
|
-
heartbeatIntervalMs: 1000,
|
|
7
|
-
reconnectIntervalMs: 500,
|
|
8
|
-
};
|
|
9
|
-
const transporter = new WebsocketTransporter(transporterOptions);
|
|
10
|
-
transporter.connect(wsUrl);
|
|
11
5
|
console.log('WebSocket e2e client connected');
|
|
12
6
|
async function main() {
|
|
13
|
-
const mesh =
|
|
7
|
+
const { mesh } = createMesh({
|
|
8
|
+
wsUrl,
|
|
9
|
+
heartbeatIntervalMs: 1000,
|
|
10
|
+
reconnectIntervalMs: 500,
|
|
11
|
+
});
|
|
14
12
|
const greeter = RemoteServiceLinker.link(mesh, {
|
|
15
13
|
service: 'GreetingService',
|
|
16
14
|
timeout: 3000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAmB,MAAM,MAAM,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAmB,MAAM,MAAM,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AACzD,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;AAM7C,KAAK,UAAU,IAAI;IACf,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QACxB,KAAK;QACL,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,GAAG;KAC3B,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAkB,IAAI,EAAE;QAC5D,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,CAAC;KACX,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC1B,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,EAAE,KAAK,CAAC,CAAA;IAET,IAAI,CAAC;QACD,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACzE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACvF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;YAAS,CAAC;QACP,YAAY,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;AACL,CAAC;AAED,MAAM,IAAI,EAAE,CAAA"}
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import { Observable, firstValueFrom, lastValueFrom, timeout, toArray } from 'rxjs';
|
|
2
|
-
import { RemoteServiceLinker
|
|
3
|
-
import {
|
|
2
|
+
import { RemoteServiceLinker } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
|
-
const transporterOptions = {
|
|
6
|
-
heartbeatIntervalMs: 1000,
|
|
7
|
-
reconnectIntervalMs: 500,
|
|
8
|
-
};
|
|
9
|
-
const transporter = new WebsocketTransporter(transporterOptions);
|
|
10
|
-
transporter.connect(wsUrl);
|
|
11
5
|
console.log('WebSocket matrix e2e client connected');
|
|
12
6
|
async function expectError(label, run, expectedMessage) {
|
|
13
7
|
try {
|
|
@@ -28,7 +22,11 @@ async function expectError(label, run, expectedMessage) {
|
|
|
28
22
|
}
|
|
29
23
|
}
|
|
30
24
|
async function main() {
|
|
31
|
-
const mesh =
|
|
25
|
+
const { mesh } = createMesh({
|
|
26
|
+
wsUrl,
|
|
27
|
+
heartbeatIntervalMs: 1000,
|
|
28
|
+
reconnectIntervalMs: 500,
|
|
29
|
+
});
|
|
32
30
|
const service = RemoteServiceLinker.link(mesh, {
|
|
33
31
|
service: 'RpcMatrixService',
|
|
34
32
|
timeout: 3000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-matrix-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-matrix-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAClF,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-matrix-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-matrix-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,9 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { concat, of, throwError } from 'rxjs';
|
|
3
3
|
import { delay } from 'rxjs/operators';
|
|
4
|
-
import { Microservice
|
|
5
|
-
import {
|
|
4
|
+
import { Microservice } from '@spider-mesh/core';
|
|
5
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
6
6
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
7
|
-
const transporter = new WebsocketTransporter({
|
|
8
|
-
heartbeatIntervalMs: 1000,
|
|
9
|
-
reconnectIntervalMs: 500,
|
|
10
|
-
});
|
|
11
|
-
transporter.connect(wsUrl);
|
|
12
7
|
let RpcMatrixService = class RpcMatrixService {
|
|
13
8
|
syncValue(name) {
|
|
14
9
|
return `sync:${name}`;
|
|
@@ -36,7 +31,11 @@ RpcMatrixService = __decorate([
|
|
|
36
31
|
Microservice({ role: 'provider', mode: 'matrix-e2e' })
|
|
37
32
|
], RpcMatrixService);
|
|
38
33
|
new RpcMatrixService();
|
|
39
|
-
|
|
34
|
+
createMesh({
|
|
35
|
+
wsUrl,
|
|
36
|
+
heartbeatIntervalMs: 1000,
|
|
37
|
+
reconnectIntervalMs: 500,
|
|
38
|
+
});
|
|
40
39
|
console.log(`WebSocket matrix e2e provider ready at ${wsUrl}`);
|
|
41
40
|
setInterval(() => undefined, 1000);
|
|
42
41
|
//# sourceMappingURL=websocket-e2e-matrix-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-matrix-provider.js","sourceRoot":"","sources":["../../examples/websocket-e2e-matrix-provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-matrix-provider.js","sourceRoot":"","sources":["../../examples/websocket-e2e-matrix-provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AAGzD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAClB,SAAS,CAAC,IAAY;QAClB,OAAO,QAAQ,IAAI,EAAE,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QACzB,OAAO,SAAS,IAAI,EAAE,CAAA;IAC1B,CAAC;IAED,cAAc,CAAC,IAAY;QACvB,OAAO,MAAM,CACT,EAAE,CAAC,mBAAmB,IAAI,IAAI,CAAC,EAC/B,EAAE,CAAC,mBAAmB,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAClD,CAAA;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY;QAC9B,OAAO,MAAM,CACT,EAAE,CAAC,oBAAoB,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAChD,EAAE,CAAC,oBAAoB,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CACnD,CAAA;IACL,CAAC;IAED,SAAS;QACL,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;IAClC,CAAC;IAED,eAAe;QACX,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC1D,CAAC;CACJ,CAAA;AAlCK,gBAAgB;IADrB,YAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;GACjD,gBAAgB,CAkCrB;AAED,IAAI,gBAAgB,EAAE,CAAA;AACtB,UAAU,CAAC;IACP,KAAK;IACL,mBAAmB,EAAE,IAAI;IACzB,mBAAmB,EAAE,GAAG;CAC3B,CAAC,CAAA;AAEF,OAAO,CAAC,GAAG,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAA;AAE9D,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { Microservice
|
|
3
|
-
import {
|
|
2
|
+
import { Microservice } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
5
|
const providerId = process.env.PROVIDER_ID || 'provider';
|
|
6
|
-
const transporter = new WebsocketTransporter({
|
|
7
|
-
heartbeatIntervalMs: 1000,
|
|
8
|
-
reconnectIntervalMs: 500,
|
|
9
|
-
});
|
|
10
|
-
transporter.connect(wsUrl);
|
|
11
6
|
let GreetingService = class GreetingService {
|
|
12
7
|
async hello(name) {
|
|
13
8
|
return `hello ${name} from ${providerId}`;
|
|
@@ -17,7 +12,11 @@ GreetingService = __decorate([
|
|
|
17
12
|
Microservice({ role: 'provider', mode: 'e2e' })
|
|
18
13
|
], GreetingService);
|
|
19
14
|
new GreetingService();
|
|
20
|
-
|
|
15
|
+
createMesh({
|
|
16
|
+
wsUrl,
|
|
17
|
+
heartbeatIntervalMs: 1000,
|
|
18
|
+
reconnectIntervalMs: 500,
|
|
19
|
+
});
|
|
21
20
|
console.log(`WebSocket e2e provider ready at ${wsUrl} (${providerId})`);
|
|
22
21
|
setInterval(() => undefined, 1000);
|
|
23
22
|
//# sourceMappingURL=websocket-e2e-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-provider.js","sourceRoot":"","sources":["../../examples/websocket-e2e-provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-provider.js","sourceRoot":"","sources":["../../examples/websocket-e2e-provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AACzD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,UAAU,CAAA;AAGxD,IAAM,eAAe,GAArB,MAAM,eAAe;IACjB,KAAK,CAAC,KAAK,CAAC,IAAY;QACpB,OAAO,SAAS,IAAI,SAAS,UAAU,EAAE,CAAA;IAC7C,CAAC;CACJ,CAAA;AAJK,eAAe;IADpB,YAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;GAC1C,eAAe,CAIpB;AAED,IAAI,eAAe,EAAE,CAAA;AACrB,UAAU,CAAC;IACP,KAAK;IACL,mBAAmB,EAAE,IAAI;IACzB,mBAAmB,EAAE,GAAG;CAC3B,CAAC,CAAA;AAEF,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,KAAK,UAAU,GAAG,CAAC,CAAA;AAEvE,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { Microservice
|
|
3
|
-
import {
|
|
2
|
+
import { Microservice } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
|
-
const transporterOptions = {
|
|
6
|
-
heartbeatIntervalMs: 1000,
|
|
7
|
-
reconnectIntervalMs: 500,
|
|
8
|
-
};
|
|
9
|
-
const transporter = new WebsocketTransporter(transporterOptions);
|
|
10
|
-
transporter.connect(wsUrl);
|
|
11
5
|
console.log('WebSocket reverse e2e client connected');
|
|
12
6
|
let ClientResponderService = class ClientResponderService {
|
|
13
7
|
async helloFromServer(name) {
|
|
@@ -18,6 +12,10 @@ ClientResponderService = __decorate([
|
|
|
18
12
|
Microservice({ role: 'client', mode: 'reverse-e2e' })
|
|
19
13
|
], ClientResponderService);
|
|
20
14
|
new ClientResponderService();
|
|
21
|
-
|
|
15
|
+
createMesh({
|
|
16
|
+
wsUrl,
|
|
17
|
+
heartbeatIntervalMs: 1000,
|
|
18
|
+
reconnectIntervalMs: 500,
|
|
19
|
+
});
|
|
22
20
|
setInterval(() => undefined, 1000);
|
|
23
21
|
//# sourceMappingURL=websocket-e2e-reverse-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-reverse-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-reverse-client.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-reverse-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-reverse-client.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AACzD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;AAGrD,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IACxB,KAAK,CAAC,eAAe,CAAC,IAAY;QAC9B,OAAO,SAAS,IAAI,cAAc,CAAA;IACtC,CAAC;CACJ,CAAA;AAJK,sBAAsB;IAD3B,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;GAChD,sBAAsB,CAI3B;AAED,IAAI,sBAAsB,EAAE,CAAA;AAC5B,UAAU,CAAC;IACP,KAAK;IACL,mBAAmB,EAAE,IAAI;IACzB,mBAAmB,EAAE,GAAG;CAC3B,CAAC,CAAA;AAEF,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { firstValueFrom, timeout } from 'rxjs';
|
|
2
|
-
import { RemoteServiceLinker
|
|
3
|
-
import {
|
|
2
|
+
import { RemoteServiceLinker } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
|
-
const transporterOptions = {
|
|
6
|
-
heartbeatIntervalMs: 1000,
|
|
7
|
-
reconnectIntervalMs: 500,
|
|
8
|
-
};
|
|
9
|
-
const transporter = new WebsocketTransporter(transporterOptions);
|
|
10
|
-
transporter.connect(wsUrl);
|
|
11
5
|
console.log('WebSocket reverse e2e server connected');
|
|
12
6
|
async function main() {
|
|
13
|
-
const mesh =
|
|
7
|
+
const { mesh } = createMesh({
|
|
8
|
+
wsUrl,
|
|
9
|
+
heartbeatIntervalMs: 1000,
|
|
10
|
+
reconnectIntervalMs: 500,
|
|
11
|
+
});
|
|
14
12
|
const responder = RemoteServiceLinker.link(mesh, {
|
|
15
13
|
service: 'ClientResponderService',
|
|
16
14
|
timeout: 3000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-reverse-server.js","sourceRoot":"","sources":["../../examples/websocket-e2e-reverse-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAmB,MAAM,MAAM,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-reverse-server.js","sourceRoot":"","sources":["../../examples/websocket-e2e-reverse-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAmB,MAAM,MAAM,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AAEzD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;AAMrD,KAAK,UAAU,IAAI;IACf,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QACxB,KAAK;QACL,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,GAAG;KAC3B,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAyB,IAAI,EAAE;QACrE,OAAO,EAAE,wBAAwB;QACjC,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,CAAC;KACX,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC1B,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,EAAE,KAAK,CAAC,CAAA;IAET,IAAI,CAAC;QACD,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAClF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;YAAS,CAAC;QACP,YAAY,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;AACL,CAAC;AAED,MAAM,IAAI,EAAE,CAAA"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { firstValueFrom, timeout } from 'rxjs';
|
|
2
|
-
import { RemoteServiceLinker
|
|
3
|
-
import {
|
|
2
|
+
import { RemoteServiceLinker } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
5
|
async function main() {
|
|
6
|
-
const
|
|
6
|
+
const { mesh } = createMesh({
|
|
7
|
+
wsUrl,
|
|
7
8
|
heartbeatIntervalMs: 1000,
|
|
8
9
|
reconnectIntervalMs: 500,
|
|
9
10
|
});
|
|
10
|
-
transporter.connect(wsUrl);
|
|
11
11
|
console.log('WebSocket round-robin client connected');
|
|
12
|
-
const mesh = new SpiderMesh({ transporters: [transporter] });
|
|
13
12
|
const greeter = RemoteServiceLinker.link(mesh, {
|
|
14
13
|
service: 'GreetingService',
|
|
15
14
|
timeout: 3000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-e2e-round-robin-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-round-robin-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAmB,MAAM,MAAM,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-e2e-round-robin-client.js","sourceRoot":"","sources":["../../examples/websocket-e2e-round-robin-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAmB,MAAM,MAAM,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AAMzD,KAAK,UAAU,IAAI;IACf,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QACxB,KAAK;QACL,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,GAAG;KAC3B,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;IAErD,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAkB,IAAI,EAAE;QAC5D,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,CAAC;KACX,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC1B,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,EAAE,KAAK,CAAC,CAAA;IAET,IAAI,CAAC;QACD,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;QAE1E,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9B,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;SACrE,CAAC,CAAA;QAEF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;YAAS,CAAC;QACP,YAAY,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;AACL,CAAC;AAED,MAAM,IAAI,EAAE,CAAA"}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { Microservice
|
|
3
|
-
import {
|
|
2
|
+
import { Microservice } from '@spider-mesh/core';
|
|
3
|
+
import { createMesh } from './helpers/createMesh.js';
|
|
4
4
|
const wsUrl = process.env.WS_URL || 'ws://127.0.0.1:8787';
|
|
5
|
-
const transporter = new WebsocketTransporter({
|
|
6
|
-
heartbeatIntervalMs: 5000,
|
|
7
|
-
reconnectIntervalMs: 1000,
|
|
8
|
-
});
|
|
9
|
-
transporter.connect(wsUrl);
|
|
10
5
|
let GreetingService = class GreetingService {
|
|
11
6
|
async hello(name) {
|
|
12
7
|
return `hello ${name} from provider`;
|
|
@@ -16,6 +11,10 @@ GreetingService = __decorate([
|
|
|
16
11
|
Microservice({ role: 'provider' })
|
|
17
12
|
], GreetingService);
|
|
18
13
|
new GreetingService();
|
|
19
|
-
|
|
14
|
+
createMesh({
|
|
15
|
+
wsUrl,
|
|
16
|
+
heartbeatIntervalMs: 5000,
|
|
17
|
+
reconnectIntervalMs: 1000,
|
|
18
|
+
});
|
|
20
19
|
console.log(`WebSocket provider started at ${wsUrl}`);
|
|
21
20
|
//# sourceMappingURL=websocket-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-provider.js","sourceRoot":"","sources":["../../examples/websocket-provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"websocket-provider.js","sourceRoot":"","sources":["../../examples/websocket-provider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,qBAAqB,CAAA;AAGzD,IAAM,eAAe,GAArB,MAAM,eAAe;IACjB,KAAK,CAAC,KAAK,CAAC,IAAY;QACpB,OAAO,SAAS,IAAI,gBAAgB,CAAA;IACxC,CAAC;CACJ,CAAA;AAJK,eAAe;IADpB,YAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;GAC7B,eAAe,CAIpB;AAED,IAAI,eAAe,EAAE,CAAA;AACrB,UAAU,CAAC;IACP,KAAK;IACL,mBAAmB,EAAE,IAAI;IACzB,mBAAmB,EAAE,IAAI;CAC5B,CAAC,CAAA;AAEF,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WebsocketRelayServer } from '../src/relay-server.js';
|
|
2
|
-
const host = process.env.WS_HOST || '
|
|
2
|
+
const host = process.env.WS_HOST || '0.0.0.0';
|
|
3
3
|
const port = Number(process.env.WS_PORT || 8787);
|
|
4
4
|
const server = new WebsocketRelayServer({ port, host });
|
|
5
5
|
console.log(`WebSocket relay server listening on ws://${host}:${server.port}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-server.js","sourceRoot":"","sources":["../../examples/websocket-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"websocket-server.js","sourceRoot":"","sources":["../../examples/websocket-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,SAAS,CAAA;AAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,CAAA;AAChD,MAAM,MAAM,GAAG,IAAI,oBAAoB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AAEvD,OAAO,CAAC,GAAG,CAAC,4CAA4C,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA"}
|
|
@@ -17,6 +17,7 @@ const nodeA = {
|
|
|
17
17
|
namespace: 'test',
|
|
18
18
|
version: 1,
|
|
19
19
|
node_id: 'node-a',
|
|
20
|
+
topics: [],
|
|
20
21
|
services: { GreetingService: {} },
|
|
21
22
|
nodes: {},
|
|
22
23
|
transporters: { websocket: {} },
|
|
@@ -26,6 +27,7 @@ const nodeB = {
|
|
|
26
27
|
namespace: 'test',
|
|
27
28
|
version: 1,
|
|
28
29
|
node_id: 'node-b',
|
|
30
|
+
topics: [],
|
|
29
31
|
services: {},
|
|
30
32
|
nodes: {},
|
|
31
33
|
transporters: { websocket: {} },
|
|
@@ -35,6 +37,7 @@ const nodeC = {
|
|
|
35
37
|
namespace: 'test',
|
|
36
38
|
version: 1,
|
|
37
39
|
node_id: 'node-c',
|
|
40
|
+
topics: [],
|
|
38
41
|
services: {},
|
|
39
42
|
nodes: {},
|
|
40
43
|
transporters: { websocket: {} },
|
|
@@ -93,7 +96,7 @@ async function main() {
|
|
|
93
96
|
method: 'hello',
|
|
94
97
|
args: ['world'],
|
|
95
98
|
};
|
|
96
|
-
await transporterA.send(packet, nodeB);
|
|
99
|
+
await transporterA.send(packet, nodeB.node_id);
|
|
97
100
|
const rpcEvent = await rpcMessage;
|
|
98
101
|
if (JSON.stringify(rpcEvent.rpc?.packet) !== JSON.stringify(packet)) {
|
|
99
102
|
throw new Error(`Unexpected RPC payload: ${JSON.stringify(rpcEvent.rpc?.packet)}`);
|
|
@@ -103,7 +106,7 @@ async function main() {
|
|
|
103
106
|
request_id: 'allowed-cancel',
|
|
104
107
|
source_node_id: nodeA.node_id,
|
|
105
108
|
target_node_id: nodeB.node_id,
|
|
106
|
-
}, nodeB);
|
|
109
|
+
}, nodeB.node_id);
|
|
107
110
|
await firstValueFrom(transporterB.pipe(filter(event => event?.rpc?.packet?.kind === 'cancel' && event.rpc.packet.request_id === 'allowed-cancel'), timeout(5000)));
|
|
108
111
|
await transporterB.send({
|
|
109
112
|
kind: 'request',
|
|
@@ -113,14 +116,14 @@ async function main() {
|
|
|
113
116
|
service: 'GreetingService',
|
|
114
117
|
method: 'hello',
|
|
115
118
|
args: ['blocked'],
|
|
116
|
-
}, nodeA);
|
|
119
|
+
}, nodeA.node_id);
|
|
117
120
|
await expectNoEvent(transporterA.pipe(filter(event => event?.rpc?.packet?.request_id === 'blocked-request')));
|
|
118
121
|
await transporterB.send({
|
|
119
122
|
kind: 'cancel',
|
|
120
123
|
request_id: 'blocked-cancel',
|
|
121
124
|
source_node_id: nodeB.node_id,
|
|
122
125
|
target_node_id: nodeA.node_id,
|
|
123
|
-
}, nodeA);
|
|
126
|
+
}, nodeA.node_id);
|
|
124
127
|
await expectNoEvent(transporterA.pipe(filter(event => event?.rpc?.packet?.kind === 'cancel' && event.rpc.packet.request_id === 'blocked-cancel')));
|
|
125
128
|
const sharedStreamA = transporterA.listen('updates');
|
|
126
129
|
const pubsubMessageA = firstValueFrom(sharedStreamA.pipe(timeout(5000)));
|
|
@@ -135,7 +138,7 @@ async function main() {
|
|
|
135
138
|
throw new Error(`Unexpected pubsub payload on server C: ${JSON.stringify(pubsubEventC)}`);
|
|
136
139
|
}
|
|
137
140
|
const offlineEventC = firstValueFrom(transporterC.pipe(filter(event => event?.offline === nodeA.node_id), timeout(5000)));
|
|
138
|
-
transporterA.close();
|
|
141
|
+
transporterA.close(serverWsUrl);
|
|
139
142
|
await offlineEventC;
|
|
140
143
|
const rawNodeId = 'raw-node';
|
|
141
144
|
const rawSocket = new WebSocket(clientWsUrl);
|
|
@@ -156,8 +159,8 @@ async function main() {
|
|
|
156
159
|
console.log('WebSocket binary smoke test passed');
|
|
157
160
|
}
|
|
158
161
|
finally {
|
|
159
|
-
transporterB.close();
|
|
160
|
-
transporterC.close();
|
|
162
|
+
transporterB.close(clientWsUrl);
|
|
163
|
+
transporterC.close(serverWsUrl);
|
|
161
164
|
server.close();
|
|
162
165
|
}
|
|
163
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-smoke-test.js","sourceRoot":"","sources":["../../examples/websocket-smoke-test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"websocket-smoke-test.js","sourceRoot":"","sources":["../../examples/websocket-smoke-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BehaviorSubject, Observable, Subject } from 'rxjs';
|
|
2
|
-
import type { DiscoveryTransporter, MdnsMessage, NodeMetadata, PubsubTransporter, RpcPacket, RpcTransporter
|
|
2
|
+
import type { DiscoveryTransporter, MdnsMessage, NodeMetadata, PubsubTransporter, RpcPacket, RpcTransporter } from '@spider-mesh/core';
|
|
3
3
|
export type WebsocketTransporterOptions = {
|
|
4
4
|
heartbeatIntervalMs?: number;
|
|
5
5
|
reconnectIntervalMs?: number;
|
|
@@ -21,10 +21,9 @@ export declare abstract class BaseWebsocketTransporter extends Subject<any> impl
|
|
|
21
21
|
protected options: WebsocketTransporterOptions;
|
|
22
22
|
readonly status$: BehaviorSubject<Map<string, string>>;
|
|
23
23
|
constructor(options?: WebsocketTransporterOptions);
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
send(packet: RpcPacket, node: SpiderMeshNode): Promise<void>;
|
|
24
|
+
connect(url: string): void;
|
|
25
|
+
close(url: string): void;
|
|
26
|
+
send(packet: RpcPacket, node_id?: string): Promise<void>;
|
|
28
27
|
broadcast(data: MdnsMessage<NodeMetadata>): Promise<void>;
|
|
29
28
|
publish<T>(topic: string, data: T): Promise<void>;
|
|
30
29
|
listen<T>(topic: string): Observable<T>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { decode, encode } from '@msgpack/msgpack';
|
|
2
|
-
import { BehaviorSubject, defer, finalize, from, fromEvent, ignoreElements, map, merge, ReplaySubject, retry, share, Subject, switchMap, take, tap, throwError, timer } from 'rxjs';
|
|
2
|
+
import { BehaviorSubject, defer, finalize, from, fromEvent, ignoreElements, map, merge, ReplaySubject, retry, share, Subject, switchMap, take, takeUntil, tap, throwError, timer } from 'rxjs';
|
|
3
3
|
import { decodeRelayFrame, encodeRelayFrame, normalizeRelayRawData } from './websocketProtocol.js';
|
|
4
4
|
const WEBSOCKET_CONNECTING = 0;
|
|
5
5
|
const WEBSOCKET_OPEN = 1;
|
|
@@ -14,32 +14,29 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
14
14
|
super();
|
|
15
15
|
this.options = options;
|
|
16
16
|
}
|
|
17
|
-
get metadata() {
|
|
18
|
-
return {};
|
|
19
|
-
}
|
|
20
17
|
connect(url) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
this.#
|
|
26
|
-
|
|
27
|
-
});
|
|
28
|
-
}
|
|
18
|
+
if (this.#connections.has(url))
|
|
19
|
+
return;
|
|
20
|
+
this.#setConnectionStatus(url, 'connecting');
|
|
21
|
+
this.#connections.set(url, {
|
|
22
|
+
subscription: this.#createConnectionLoop(url).subscribe(),
|
|
23
|
+
});
|
|
29
24
|
}
|
|
30
25
|
close(url) {
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
26
|
+
const connection = this.#connections.get(url);
|
|
27
|
+
const socket = connection?.socket;
|
|
28
|
+
this.#connections.delete(url);
|
|
29
|
+
this.#deleteConnectionStatus(url);
|
|
30
|
+
connection?.subscription.unsubscribe();
|
|
31
|
+
if (socket) {
|
|
32
|
+
this.#disconnectSocket(socket);
|
|
36
33
|
}
|
|
37
34
|
}
|
|
38
|
-
async send(packet,
|
|
39
|
-
const socket = this.#selectRpcSocket(
|
|
35
|
+
async send(packet, node_id) {
|
|
36
|
+
const socket = this.#selectRpcSocket(node_id || packet.target_node_id);
|
|
40
37
|
await this.#sendFrame(socket, {
|
|
41
38
|
type: packet.kind,
|
|
42
|
-
target_id:
|
|
39
|
+
target_id: node_id || packet.target_node_id,
|
|
43
40
|
payload: this.#encodeRpcPacket(packet),
|
|
44
41
|
});
|
|
45
42
|
}
|
|
@@ -89,13 +86,13 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
89
86
|
this.#setConnectionStatus(url, 'error');
|
|
90
87
|
}), switchMap(() => throwError(() => new Error(`WebSocket disconnected: ${url}`))));
|
|
91
88
|
const disconnection$ = merge(closed$, errored$).pipe(take(1));
|
|
92
|
-
const
|
|
89
|
+
const clearSocket = () => {
|
|
93
90
|
const connection = this.#connections.get(url);
|
|
94
91
|
if (connection && connection.socket === socket) {
|
|
95
92
|
delete connection.socket;
|
|
96
93
|
}
|
|
97
94
|
};
|
|
98
|
-
return
|
|
95
|
+
return fromEvent(socket, 'open').pipe(map(() => socket), takeUntil(disconnection$), tap(() => {
|
|
99
96
|
const connection = this.#connections.get(url);
|
|
100
97
|
if (connection) {
|
|
101
98
|
connection.socket = socket;
|
|
@@ -113,19 +110,13 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
113
110
|
if (!handler)
|
|
114
111
|
return;
|
|
115
112
|
handler.call(this, url, frame);
|
|
116
|
-
}), ignoreElements()),
|
|
113
|
+
}), ignoreElements()), timer(0, this.options.heartbeatIntervalMs || 30000).pipe(tap(() => {
|
|
117
114
|
if (socket.readyState === WEBSOCKET_OPEN) {
|
|
118
115
|
socket.ping?.();
|
|
119
116
|
}
|
|
120
|
-
}), ignoreElements()))), finalize(() => {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
socket.close();
|
|
124
|
-
}
|
|
125
|
-
else if (socket.readyState === WEBSOCKET_CONNECTING) {
|
|
126
|
-
socket.terminate?.();
|
|
127
|
-
socket.close();
|
|
128
|
-
}
|
|
117
|
+
}), ignoreElements()))), takeUntil(disconnection$), finalize(() => {
|
|
118
|
+
clearSocket();
|
|
119
|
+
this.#disconnectSocket(socket);
|
|
129
120
|
}));
|
|
130
121
|
})).pipe(retry({
|
|
131
122
|
delay: () => timer(this.options.reconnectIntervalMs || 1000),
|
|
@@ -177,9 +168,9 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
177
168
|
topic.subject.next(frame.payload);
|
|
178
169
|
}
|
|
179
170
|
}
|
|
180
|
-
#selectRpcSocket(
|
|
181
|
-
const relayUrl = this.#nodes.get(
|
|
182
|
-
const routedSocket = relayUrl ? this.#connections.get(relayUrl)?.socket :
|
|
171
|
+
#selectRpcSocket(node_id) {
|
|
172
|
+
const relayUrl = node_id ? this.#nodes.get(node_id)?.relayUrl : undefined;
|
|
173
|
+
const routedSocket = relayUrl ? this.#connections.get(relayUrl)?.socket : undefined;
|
|
183
174
|
if (routedSocket?.readyState === WEBSOCKET_OPEN) {
|
|
184
175
|
return routedSocket;
|
|
185
176
|
}
|
|
@@ -190,23 +181,6 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
190
181
|
}
|
|
191
182
|
throw new Error('WebSocket is not connected');
|
|
192
183
|
}
|
|
193
|
-
#resolveNode(nodeId) {
|
|
194
|
-
if (nodeId) {
|
|
195
|
-
const knownNode = this.#nodes.get(nodeId);
|
|
196
|
-
if (knownNode) {
|
|
197
|
-
return knownNode.node;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
return {
|
|
201
|
-
host: '',
|
|
202
|
-
namespace: '',
|
|
203
|
-
node_id: nodeId || '',
|
|
204
|
-
services: {},
|
|
205
|
-
transporters: {},
|
|
206
|
-
nodes: {},
|
|
207
|
-
version: 0,
|
|
208
|
-
};
|
|
209
|
-
}
|
|
210
184
|
async #announceLocalNode(localNode) {
|
|
211
185
|
await this.#sendFrameToAll({
|
|
212
186
|
type: 'hello',
|
|
@@ -265,6 +239,15 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
265
239
|
? event[0]
|
|
266
240
|
: (event && typeof event === 'object' && 'data' in event ? event.data : event);
|
|
267
241
|
}
|
|
242
|
+
#disconnectSocket(socket) {
|
|
243
|
+
if (socket.readyState === WEBSOCKET_OPEN) {
|
|
244
|
+
socket.close();
|
|
245
|
+
}
|
|
246
|
+
else if (socket.readyState === WEBSOCKET_CONNECTING) {
|
|
247
|
+
socket.terminate?.();
|
|
248
|
+
socket.close();
|
|
249
|
+
}
|
|
250
|
+
}
|
|
268
251
|
#setConnectionStatus(url, status) {
|
|
269
252
|
const currentStatus = this.status$.value.get(url);
|
|
270
253
|
if (currentStatus === status) {
|
|
@@ -274,5 +257,13 @@ export class BaseWebsocketTransporter extends Subject {
|
|
|
274
257
|
nextStatuses.set(url, status);
|
|
275
258
|
this.status$.next(nextStatuses);
|
|
276
259
|
}
|
|
260
|
+
#deleteConnectionStatus(url) {
|
|
261
|
+
if (!this.status$.value.has(url)) {
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
const nextStatuses = new Map(this.status$.value);
|
|
265
|
+
nextStatuses.delete(url);
|
|
266
|
+
this.status$.next(nextStatuses);
|
|
267
|
+
}
|
|
277
268
|
}
|
|
278
269
|
//# sourceMappingURL=BaseWebsocketTransporter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseWebsocketTransporter.js","sourceRoot":"","sources":["../../src/BaseWebsocketTransporter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseWebsocketTransporter.js","sourceRoot":"","sources":["../../src/BaseWebsocketTransporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../examples/websocket-client.ts","../examples/websocket-e2e-client.ts","../examples/websocket-e2e-matrix-client.ts","../examples/websocket-e2e-matrix-provider.ts","../examples/websocket-e2e-matrix-test.ts","../examples/websocket-e2e-provider.ts","../examples/websocket-e2e-reverse-client.ts","../examples/websocket-e2e-reverse-server.ts","../examples/websocket-e2e-reverse-test.ts","../examples/websocket-e2e-round-robin-client.ts","../examples/websocket-e2e-round-robin-test.ts","../examples/websocket-e2e-test.ts","../examples/websocket-provider.ts","../examples/websocket-server.ts","../examples/websocket-smoke-test.ts","../src/basewebsockettransporter.ts","../src/globalwebsockettransporter.ts","../src/websocketrelayserver.ts","../src/websockettransporter.ts","../src/browser.ts","../src/node.ts","../src/react-native.ts","../src/relay-server.ts","../src/websocketprotocol.ts"],"version":"6.0.3"}
|
|
1
|
+
{"root":["../examples/websocket-client.ts","../examples/websocket-e2e-client.ts","../examples/websocket-e2e-matrix-client.ts","../examples/websocket-e2e-matrix-provider.ts","../examples/websocket-e2e-matrix-test.ts","../examples/websocket-e2e-provider.ts","../examples/websocket-e2e-reverse-client.ts","../examples/websocket-e2e-reverse-server.ts","../examples/websocket-e2e-reverse-test.ts","../examples/websocket-e2e-round-robin-client.ts","../examples/websocket-e2e-round-robin-test.ts","../examples/websocket-e2e-test.ts","../examples/websocket-provider.ts","../examples/websocket-server.ts","../examples/websocket-smoke-test.ts","../examples/helpers/createmesh.ts","../src/basewebsockettransporter.ts","../src/globalwebsockettransporter.ts","../src/websocketrelayserver.ts","../src/websockettransporter.ts","../src/browser.ts","../src/node.ts","../src/react-native.ts","../src/relay-server.ts","../src/websocketprotocol.ts"],"version":"6.0.3"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spider-mesh/ws",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.42",
|
|
5
5
|
"description": "Built-in WebSocket transporter and relay server for Spider Mesh",
|
|
6
6
|
"repository": {
|
|
7
7
|
"url": "https://github.com/spider-mesh/ws"
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
"yarn.lock"
|
|
13
13
|
],
|
|
14
14
|
"peerDependencies": {
|
|
15
|
-
"@spider-mesh/core": "^2.0.
|
|
15
|
+
"@spider-mesh/core": "^2.0.42"
|
|
16
16
|
},
|
|
17
17
|
"devDependencies": {
|
|
18
|
-
"@spider-mesh/core": "^2.0.
|
|
18
|
+
"@spider-mesh/core": "^2.0.42",
|
|
19
19
|
"@types/bun": "^1.3.13",
|
|
20
20
|
"@types/node": "^25.6.0",
|
|
21
21
|
"@types/ws": "^8.18.1",
|