@dxos/network-manager 2.33.9-dev.bba8fc00 → 2.33.9-dev.ceab0857

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/dist/src/network-manager.blueprint-test.d.ts +3 -1
  2. package/dist/src/network-manager.blueprint-test.d.ts.map +1 -1
  3. package/dist/src/network-manager.blueprint-test.js +46 -17
  4. package/dist/src/network-manager.blueprint-test.js.map +1 -1
  5. package/dist/src/network-manager.browser-test.js +1 -1
  6. package/dist/src/network-manager.browser-test.js.map +1 -1
  7. package/dist/src/network-manager.d.ts.map +1 -1
  8. package/dist/src/network-manager.js +6 -6
  9. package/dist/src/network-manager.js.map +1 -1
  10. package/dist/src/network-manager.test.js +5 -4
  11. package/dist/src/network-manager.test.js.map +1 -1
  12. package/dist/src/proto/gen/dxos/credentials.d.ts.map +1 -1
  13. package/dist/src/proto/gen/dxos/halo/keys.d.ts.map +1 -1
  14. package/dist/src/proto/gen/dxos/halo/keys.js.map +1 -1
  15. package/dist/src/proto/gen/dxos/mesh/signal.d.ts +52 -45
  16. package/dist/src/proto/gen/dxos/mesh/signal.d.ts.map +1 -1
  17. package/dist/src/proto/gen/dxos/mesh/signalMessage.d.ts +79 -0
  18. package/dist/src/proto/gen/dxos/mesh/signalMessage.d.ts.map +1 -0
  19. package/dist/src/proto/gen/dxos/mesh/signalMessage.js +3 -0
  20. package/dist/src/proto/gen/dxos/mesh/signalMessage.js.map +1 -0
  21. package/dist/src/proto/gen/google/protobuf.d.ts +6 -0
  22. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  23. package/dist/src/proto/gen/index.d.ts +17 -5
  24. package/dist/src/proto/gen/index.d.ts.map +1 -1
  25. package/dist/src/proto/gen/index.js +1 -1
  26. package/dist/src/proto/gen/index.js.map +1 -1
  27. package/dist/src/proto/substitutions.d.ts +4 -0
  28. package/dist/src/proto/substitutions.d.ts.map +1 -1
  29. package/dist/src/proto/substitutions.js +3 -1
  30. package/dist/src/proto/substitutions.js.map +1 -1
  31. package/dist/src/signal/in-memory-signal-manager.d.ts +7 -7
  32. package/dist/src/signal/in-memory-signal-manager.d.ts.map +1 -1
  33. package/dist/src/signal/in-memory-signal-manager.js +29 -8
  34. package/dist/src/signal/in-memory-signal-manager.js.map +1 -1
  35. package/dist/src/signal/index.d.ts +1 -2
  36. package/dist/src/signal/index.d.ts.map +1 -1
  37. package/dist/src/signal/index.js +1 -2
  38. package/dist/src/signal/index.js.map +1 -1
  39. package/dist/src/signal/integration.test.d.ts +2 -0
  40. package/dist/src/signal/integration.test.d.ts.map +1 -0
  41. package/dist/src/signal/integration.test.js +102 -0
  42. package/dist/src/signal/integration.test.js.map +1 -0
  43. package/dist/src/signal/message-router.d.ts +7 -7
  44. package/dist/src/signal/message-router.d.ts.map +1 -1
  45. package/dist/src/signal/message-router.js +6 -1
  46. package/dist/src/signal/message-router.js.map +1 -1
  47. package/dist/src/signal/message-router.test.js +15 -19
  48. package/dist/src/signal/message-router.test.js.map +1 -1
  49. package/dist/src/signal/signal-client.d.ts +33 -18
  50. package/dist/src/signal/signal-client.d.ts.map +1 -1
  51. package/dist/src/signal/signal-client.js +102 -92
  52. package/dist/src/signal/signal-client.js.map +1 -1
  53. package/dist/src/signal/signal-client.test.js +60 -77
  54. package/dist/src/signal/signal-client.test.js.map +1 -1
  55. package/dist/src/signal/{websocket-signal-manager.d.ts → signal-manager-impl.d.ts} +13 -11
  56. package/dist/src/signal/signal-manager-impl.d.ts.map +1 -0
  57. package/dist/src/signal/signal-manager-impl.js +151 -0
  58. package/dist/src/signal/signal-manager-impl.js.map +1 -0
  59. package/dist/src/signal/signal-manager.d.ts +12 -11
  60. package/dist/src/signal/signal-manager.d.ts.map +1 -1
  61. package/dist/src/signal/signal-rpc-client.d.ts +19 -0
  62. package/dist/src/signal/signal-rpc-client.d.ts.map +1 -0
  63. package/dist/src/signal/signal-rpc-client.js +108 -0
  64. package/dist/src/signal/signal-rpc-client.js.map +1 -0
  65. package/dist/src/signal/signal-rpc-client.test.d.ts +2 -0
  66. package/dist/src/signal/signal-rpc-client.test.d.ts.map +1 -0
  67. package/dist/src/signal/signal-rpc-client.test.js +74 -0
  68. package/dist/src/signal/signal-rpc-client.test.js.map +1 -0
  69. package/dist/src/swarm/connection.d.ts +3 -3
  70. package/dist/src/swarm/connection.d.ts.map +1 -1
  71. package/dist/src/swarm/connection.js +1 -4
  72. package/dist/src/swarm/connection.js.map +1 -1
  73. package/dist/src/swarm/swarm.d.ts +6 -7
  74. package/dist/src/swarm/swarm.d.ts.map +1 -1
  75. package/dist/src/swarm/swarm.js +21 -17
  76. package/dist/src/swarm/swarm.js.map +1 -1
  77. package/dist/src/swarm/swarm.test.js +156 -117
  78. package/dist/src/swarm/swarm.test.js.map +1 -1
  79. package/dist/src/topology/fully-connected-topology.d.ts +0 -1
  80. package/dist/src/topology/fully-connected-topology.d.ts.map +1 -1
  81. package/dist/src/topology/fully-connected-topology.js +1 -6
  82. package/dist/src/topology/fully-connected-topology.js.map +1 -1
  83. package/dist/src/topology/mmst-topology.d.ts +0 -1
  84. package/dist/src/topology/mmst-topology.d.ts.map +1 -1
  85. package/dist/src/topology/mmst-topology.js +1 -6
  86. package/dist/src/topology/mmst-topology.js.map +1 -1
  87. package/dist/src/topology/star-topology.d.ts +0 -1
  88. package/dist/src/topology/star-topology.d.ts.map +1 -1
  89. package/dist/src/topology/star-topology.js +1 -6
  90. package/dist/src/topology/star-topology.js.map +1 -1
  91. package/dist/src/topology/topology.d.ts +0 -6
  92. package/dist/src/topology/topology.d.ts.map +1 -1
  93. package/dist/src/transport/in-memory-transport.d.ts +2 -2
  94. package/dist/src/transport/in-memory-transport.d.ts.map +1 -1
  95. package/dist/src/transport/in-memory-transport.js.map +1 -1
  96. package/dist/src/transport/transport.d.ts +3 -3
  97. package/dist/src/transport/transport.d.ts.map +1 -1
  98. package/dist/src/transport/webrtc-transport.d.ts +3 -3
  99. package/dist/src/transport/webrtc-transport.d.ts.map +1 -1
  100. package/dist/src/transport/webrtc-transport.js.map +1 -1
  101. package/dist/tests-setup.js +1 -1
  102. package/dist/tsconfig.tsbuildinfo +1 -1
  103. package/package.json +14 -12
  104. package/src/network-manager.blueprint-test.ts +57 -22
  105. package/src/network-manager.browser-test.ts +1 -1
  106. package/src/network-manager.test.ts +8 -7
  107. package/src/network-manager.ts +8 -9
  108. package/src/proto/defs/dxos/mesh/signal.proto +53 -35
  109. package/src/proto/defs/dxos/mesh/signalMessage.proto +51 -0
  110. package/src/proto/gen/dxos/credentials.ts +1 -0
  111. package/src/proto/gen/dxos/halo/keys.ts +1 -0
  112. package/src/proto/gen/dxos/mesh/signal.ts +51 -45
  113. package/src/proto/gen/dxos/mesh/signalMessage.ts +83 -0
  114. package/src/proto/gen/google/protobuf.ts +7 -0
  115. package/src/proto/gen/index.ts +18 -6
  116. package/src/proto/substitutions.ts +3 -1
  117. package/src/signal/in-memory-signal-manager.ts +37 -12
  118. package/src/signal/index.ts +1 -2
  119. package/src/signal/integration.test.ts +117 -0
  120. package/src/signal/message-router.test.ts +36 -41
  121. package/src/signal/message-router.ts +22 -18
  122. package/src/signal/signal-client.test.ts +70 -92
  123. package/src/signal/signal-client.ts +119 -113
  124. package/src/signal/signal-manager-impl.ts +166 -0
  125. package/src/signal/signal-manager.ts +12 -12
  126. package/src/signal/signal-rpc-client.test.ts +86 -0
  127. package/src/signal/signal-rpc-client.ts +121 -0
  128. package/src/swarm/connection.ts +5 -8
  129. package/src/swarm/swarm.test.ts +208 -169
  130. package/src/swarm/swarm.ts +24 -20
  131. package/src/topology/fully-connected-topology.ts +1 -9
  132. package/src/topology/mmst-topology.ts +1 -9
  133. package/src/topology/star-topology.ts +1 -7
  134. package/src/topology/topology.ts +0 -7
  135. package/src/transport/in-memory-transport.ts +2 -2
  136. package/src/transport/transport.ts +3 -3
  137. package/src/transport/webrtc-transport.ts +3 -3
  138. package/dist/browser-mocha/bundle.js +0 -119286
  139. package/dist/browser-mocha/main.js +0 -27
  140. package/dist/src/signal/websocket-rpc.d.ts +0 -30
  141. package/dist/src/signal/websocket-rpc.d.ts.map +0 -1
  142. package/dist/src/signal/websocket-rpc.js +0 -203
  143. package/dist/src/signal/websocket-rpc.js.map +0 -1
  144. package/dist/src/signal/websocket-signal-manager.d.ts.map +0 -1
  145. package/dist/src/signal/websocket-signal-manager.js +0 -134
  146. package/dist/src/signal/websocket-signal-manager.js.map +0 -1
  147. package/src/signal/websocket-rpc.ts +0 -208
  148. package/src/signal/websocket-signal-manager.ts +0 -158
@@ -12,7 +12,6 @@ const wait_for_expect_1 = __importDefault(require("wait-for-expect"));
12
12
  const protocols_1 = require("@dxos/protocols");
13
13
  const signal_1 = require("@dxos/signal");
14
14
  const testutils_1 = require("@dxos/testutils");
15
- const util_1 = require("@dxos/util");
16
15
  const message_router_1 = require("./message-router");
17
16
  const signal_client_1 = require("./signal-client");
18
17
  (0, mocha_1.describe)('MessageRouter', () => {
@@ -20,19 +19,16 @@ const signal_client_1 = require("./signal-client");
20
19
  let peer1;
21
20
  let peer2;
22
21
  let broker1;
23
- const signalApiPort1 = (0, util_1.randomInt)(10000, 50000);
24
- const signalApiUrl1 = 'http://0.0.0.0:' + signalApiPort1;
25
22
  before(async () => {
26
- broker1 = await (0, signal_1.createTestBroker)(signalApiPort1);
23
+ broker1 = await (0, signal_1.createTestBroker)();
27
24
  });
28
25
  beforeEach(() => {
29
26
  topic = protocols_1.PublicKey.random();
30
27
  peer1 = protocols_1.PublicKey.random();
31
28
  peer2 = protocols_1.PublicKey.random();
32
29
  });
33
- after(async function () {
34
- this.timeout(0);
35
- await broker1.stop();
30
+ after(() => {
31
+ broker1.stop();
36
32
  });
37
33
  const createSignalClientAndMessageRouter = async ({ signalApiUrl, onSignal = (async () => { }), onOffer = async () => ({ accept: true }) }) => {
38
34
  // eslint-disable-next-line prefer-const
@@ -44,7 +40,7 @@ const signal_client_1 = require("./signal-client");
44
40
  onOffer: onOffer
45
41
  });
46
42
  (0, testutils_1.afterTest)(() => router.destroy());
47
- api = new signal_client_1.SignalClient(signalApiUrl, (async () => { }), async (msg) => router.receiveMessage(msg));
43
+ api = new signal_client_1.SignalClient(signalApiUrl, async (msg) => router.receiveMessage(msg));
48
44
  (0, testutils_1.afterTest)(() => api.close());
49
45
  return {
50
46
  api,
@@ -53,8 +49,8 @@ const signal_client_1 = require("./signal-client");
53
49
  };
54
50
  (0, mocha_1.it)('signaling between 2 clients', async () => {
55
51
  const signalMock1 = (0, earljs_1.mockFn)().resolvesTo();
56
- const { api: api1 } = await createSignalClientAndMessageRouter({ signalApiUrl: signalApiUrl1, onSignal: signalMock1 });
57
- const { api: api2, router: router2 } = await createSignalClientAndMessageRouter({ signalApiUrl: signalApiUrl1 });
52
+ const { api: api1 } = await createSignalClientAndMessageRouter({ signalApiUrl: broker1.url(), onSignal: signalMock1 });
53
+ const { api: api2, router: router2 } = await createSignalClientAndMessageRouter({ signalApiUrl: broker1.url() });
58
54
  await api1.join(topic, peer1);
59
55
  await api2.join(topic, peer2);
60
56
  const msg = {
@@ -62,7 +58,7 @@ const signal_client_1 = require("./signal-client");
62
58
  remoteId: peer1,
63
59
  sessionId: protocols_1.PublicKey.random(),
64
60
  topic,
65
- data: { signal: { json: '{"asd": "asd"}' } }
61
+ data: { signal: { json: JSON.stringify({ 'asd': 'asd' }) } }
66
62
  };
67
63
  await router2.signal(msg);
68
64
  await (0, wait_for_expect_1.default)(() => {
@@ -71,12 +67,12 @@ const signal_client_1 = require("./signal-client");
71
67
  }).timeout(5000);
72
68
  (0, mocha_1.it)('offer/answer', async () => {
73
69
  const { api: api1, router: router1 } = await createSignalClientAndMessageRouter({
74
- signalApiUrl: signalApiUrl1,
70
+ signalApiUrl: broker1.url(),
75
71
  onSignal: (async () => { }),
76
72
  onOffer: async () => ({ accept: true })
77
73
  });
78
74
  const { api: api2 } = await createSignalClientAndMessageRouter({
79
- signalApiUrl: signalApiUrl1,
75
+ signalApiUrl: broker1.url(),
80
76
  onSignal: (async () => { }),
81
77
  onOffer: async () => ({ accept: true })
82
78
  });
@@ -94,19 +90,19 @@ const signal_client_1 = require("./signal-client");
94
90
  (0, mocha_1.it)('signaling between 3 clients', async () => {
95
91
  const signalMock1 = (0, earljs_1.mockFn)().resolvesTo();
96
92
  const { api: api1, router: router1 } = await createSignalClientAndMessageRouter({
97
- signalApiUrl: signalApiUrl1,
93
+ signalApiUrl: broker1.url(),
98
94
  onSignal: signalMock1,
99
95
  onOffer: async () => ({ accept: true })
100
96
  });
101
97
  const signalMock2 = (0, earljs_1.mockFn)().resolvesTo();
102
98
  const { api: api2, router: router2 } = await createSignalClientAndMessageRouter({
103
- signalApiUrl: signalApiUrl1,
99
+ signalApiUrl: broker1.url(),
104
100
  onSignal: signalMock2,
105
101
  onOffer: async () => ({ accept: true })
106
102
  });
107
103
  const signalMock3 = (0, earljs_1.mockFn)().resolvesTo();
108
104
  const { api: api3, router: router3 } = await createSignalClientAndMessageRouter({
109
- signalApiUrl: signalApiUrl1,
105
+ signalApiUrl: broker1.url(),
110
106
  onSignal: signalMock3,
111
107
  onOffer: async () => ({ accept: true })
112
108
  });
@@ -153,12 +149,12 @@ const signal_client_1 = require("./signal-client");
153
149
  }).timeout(5000);
154
150
  (0, mocha_1.it)('two offers', async () => {
155
151
  const { api: api1, router: router1 } = await createSignalClientAndMessageRouter({
156
- signalApiUrl: signalApiUrl1,
152
+ signalApiUrl: broker1.url(),
157
153
  onSignal: (async () => { }),
158
154
  onOffer: async () => ({ accept: true })
159
155
  });
160
156
  const { api: api2, router: router2 } = await createSignalClientAndMessageRouter({
161
- signalApiUrl: signalApiUrl1,
157
+ signalApiUrl: broker1.url(),
162
158
  onSignal: (async () => { }),
163
159
  onOffer: async () => ({ accept: true })
164
160
  });
@@ -228,7 +224,7 @@ const signal_client_1 = require("./signal-client");
228
224
  remoteId: protocols_1.PublicKey.random(),
229
225
  sessionId: protocols_1.PublicKey.random(),
230
226
  topic: protocols_1.PublicKey.random(),
231
- data: { signal: { json: 'asd' } }
227
+ data: { signal: { json: JSON.stringify({ 'asd': 'asd' }) } }
232
228
  });
233
229
  });
234
230
  // expect to receive 3 messages.
@@ -1 +1 @@
1
- {"version":3,"file":"message-router.test.js","sourceRoot":"","sources":["../../../src/signal/message-router.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-router.test.js","sourceRoot":"","sources":["../../../src/signal/message-router.test.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,33 @@
1
1
  import { Event } from '@dxos/async';
2
2
  import { PublicKey } from '@dxos/protocols';
3
- import { Answer, Message } from '../proto/gen/dxos/mesh/signal';
3
+ import { SwarmEvent } from '../proto/gen/dxos/mesh/signal';
4
+ import { SignalMessage } from '../proto/gen/dxos/mesh/signalMessage';
4
5
  import { SignalApi } from './signal-api';
6
+ declare enum State {
7
+ /** Connection is being established. */
8
+ CONNECTING = "CONNECTING",
9
+ /** Connection is being re-established. */
10
+ RE_CONNECTING = "RE_CONNECTING",
11
+ /** Connected. */
12
+ CONNECTED = "CONNECTED",
13
+ /** Server terminated the connection. Socket will be reconnected. */
14
+ DISCONNECTED = "DISCONNECTED",
15
+ /** Socket was closed. */
16
+ CLOSED = "CLOSED"
17
+ }
18
+ export declare type Status = {
19
+ host: string;
20
+ state: State;
21
+ error?: string;
22
+ reconnectIn: number;
23
+ connectionStarted: number;
24
+ lastStateChange: number;
25
+ };
5
26
  /**
6
27
  * Establishes a websocket connection to signal server and provides RPC methods.
7
28
  */
8
29
  export declare class SignalClient {
9
30
  private readonly _host;
10
- private readonly _onOffer;
11
31
  private readonly _onSignal;
12
32
  private _state;
13
33
  private _lastError?;
@@ -25,32 +45,27 @@ export declare class SignalClient {
25
45
  private _lastStateChange;
26
46
  private _reconnectIntervalId?;
27
47
  private _client;
28
- private _clientCleanup;
29
- readonly statusChanged: Event<SignalApi.Status>;
48
+ private _cleanupSubscriptions;
49
+ readonly statusChanged: Event<Status>;
30
50
  readonly commandTrace: Event<SignalApi.CommandTrace>;
51
+ readonly swarmEvent: Event<[topic: PublicKey, swarmEvent: SwarmEvent]>;
52
+ private readonly _swarmStreams;
53
+ private readonly _messageStreams;
31
54
  /**
32
55
  * @param _host Signal server websocket URL.
33
- * @param _onOffer See `SignalApi.offer`.
34
56
  * @param _onSignal See `SignalApi.signal`.
35
57
  */
36
- constructor(_host: string, _onOffer: (message: Message) => Promise<Answer>, _onSignal: (message: Message) => Promise<void>);
58
+ constructor(_host: string, _onSignal: (message: SignalMessage) => Promise<void>);
37
59
  private _setState;
38
60
  private _createClient;
39
61
  private _reconnect;
40
62
  close(): Promise<void>;
41
63
  getStatus(): SignalApi.Status;
42
- join(topic: PublicKey, peerId: PublicKey): Promise<PublicKey[]>;
64
+ join(topic: PublicKey, peerId: PublicKey): Promise<void>;
43
65
  leave(topic: PublicKey, peerId: PublicKey): Promise<void>;
44
- lookup(topic: PublicKey): Promise<PublicKey[]>;
45
- /**
46
- * Routes an offer to the other peer's _onOffer callback.
47
- * @returns Other peer's _onOffer callback return value.
48
- * @deprecated
49
- */
50
- offer(msg: Message): Promise<Answer>;
51
- /**
52
- * Routes an offer to the other peer's _onSignal callback.
53
- */
54
- signal(message: Message): Promise<void>;
66
+ signal(message: SignalMessage): Promise<void>;
67
+ private _subscribeSwarmEvents;
68
+ private _subscribeMessages;
55
69
  }
70
+ export {};
56
71
  //# sourceMappingURL=signal-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signal-client.d.ts","sourceRoot":"","sources":["../../../src/signal/signal-client.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAOzC;;GAEG;AACH,qBAAa,YAAY;IAmCrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IApC5B,OAAO,CAAC,MAAM,CAA8B;IAE5C,OAAO,CAAC,UAAU,CAAC,CAAQ;IAE3B;;OAEG;IACH,OAAO,CAAC,eAAe,CAA6B;IAEpD;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAAc;IAExC;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAAc;IAEtC,OAAO,CAAC,oBAAoB,CAAC,CAAiB;IAE9C,OAAO,CAAC,OAAO,CAAgB;IAE/B,OAAO,CAAC,cAAc,CAAsB;IAE5C,QAAQ,CAAC,aAAa,0BAAiC;IACvD,QAAQ,CAAC,YAAY,gCAAuC;IAE5D;;;;OAIG;gBAEgB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,EAC/C,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC;IAMjE,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,aAAa;IA2ErB,OAAO,CAAC,UAAU;IAuBZ,KAAK;IAYX,SAAS,IAAK,SAAS,CAAC,MAAM;IAWxB,IAAI,CAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAQhE,KAAK,CAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAO1D,MAAM,CAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAOrD;;;;OAIG;IACG,KAAK,CAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAU3C;;OAEG;IACG,MAAM,CAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAW/C"}
1
+ {"version":3,"file":"signal-client.d.ts","sourceRoot":"","sources":["../../../src/signal/signal-client.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,EAAgB,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,OAAO,EAAW,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAOzC,aAAK,KAAK;IACR,uCAAuC;IACvC,UAAU,eAAe;IAEzB,0CAA0C;IAC1C,aAAa,kBAAkB;IAE/B,iBAAiB;IACjB,SAAS,cAAc;IAEvB,oEAAoE;IACpE,YAAY,iBAAiB;IAE7B,yBAAyB;IACzB,MAAM,WAAW;CAClB;AAED,oBAAY,MAAM,GAAG;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED;;GAEG;AACH,qBAAa,YAAY;IAqCrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IArC5B,OAAO,CAAC,MAAM,CAAoB;IAElC,OAAO,CAAC,UAAU,CAAC,CAAQ;IAE3B;;OAEG;IACH,OAAO,CAAC,eAAe,CAA6B;IAEpD;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAAc;IAExC;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAAc;IAEtC,OAAO,CAAC,oBAAoB,CAAC,CAAiB;IAE9C,OAAO,CAAC,OAAO,CAAmB;IAElC,OAAO,CAAC,qBAAqB,CAA2B;IACxD,QAAQ,CAAC,aAAa,gBAAuB;IAE7C,QAAQ,CAAC,YAAY,gCAAuC;IAC5D,QAAQ,CAAC,UAAU,oDAA2D;IAE9E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqE;IACnG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkE;IAClG;;;OAGG;gBAEgB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC;IAMvE,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,aAAa;IAoDrB,OAAO,CAAC,UAAU;IAuBZ,KAAK;IAYX,SAAS,IAAK,SAAS,CAAC,MAAM;IAWxB,IAAI,CAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzD,KAAK,CAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAU1D,MAAM,CAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;YAStC,qBAAqB;YAkBrB,kBAAkB;CAyBjC"}
@@ -2,34 +2,50 @@
2
2
  //
3
3
  // Copyright 2020 DXOS.org
4
4
  //
5
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
6
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
7
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
8
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
5
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
6
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
7
13
  };
8
14
  Object.defineProperty(exports, "__esModule", { value: true });
9
15
  exports.SignalClient = void 0;
16
+ const assert_1 = __importDefault(require("assert"));
10
17
  const debug_1 = __importDefault(require("debug"));
11
18
  const async_1 = require("@dxos/async");
12
- const debug_2 = require("@dxos/debug");
13
- const protocols_1 = require("@dxos/protocols");
19
+ const util_1 = require("@dxos/util");
14
20
  const gen_1 = require("../proto/gen");
15
- const signal_api_1 = require("./signal-api");
16
- const websocket_rpc_1 = require("./websocket-rpc");
21
+ const signal_rpc_client_1 = require("./signal-rpc-client");
17
22
  const log = (0, debug_1.default)('dxos:network-manager:signal-client');
18
23
  const DEFAULT_RECONNECT_TIMEOUT = 1000;
24
+ var State;
25
+ (function (State) {
26
+ /** Connection is being established. */
27
+ State["CONNECTING"] = "CONNECTING";
28
+ /** Connection is being re-established. */
29
+ State["RE_CONNECTING"] = "RE_CONNECTING";
30
+ /** Connected. */
31
+ State["CONNECTED"] = "CONNECTED";
32
+ /** Server terminated the connection. Socket will be reconnected. */
33
+ State["DISCONNECTED"] = "DISCONNECTED";
34
+ /** Socket was closed. */
35
+ State["CLOSED"] = "CLOSED";
36
+ })(State || (State = {}));
19
37
  /**
20
38
  * Establishes a websocket connection to signal server and provides RPC methods.
21
39
  */
22
40
  class SignalClient {
23
41
  /**
24
42
  * @param _host Signal server websocket URL.
25
- * @param _onOffer See `SignalApi.offer`.
26
43
  * @param _onSignal See `SignalApi.signal`.
27
44
  */
28
- constructor(_host, _onOffer, _onSignal) {
45
+ constructor(_host, _onSignal) {
29
46
  this._host = _host;
30
- this._onOffer = _onOffer;
31
47
  this._onSignal = _onSignal;
32
- this._state = signal_api_1.SignalApi.State.CONNECTING;
48
+ this._state = State.CONNECTING;
33
49
  /**
34
50
  * Number of milliseconds after which the connection will be attempted again in case of error.
35
51
  */
@@ -42,10 +58,13 @@ class SignalClient {
42
58
  * Timestamp of last state change.
43
59
  */
44
60
  this._lastStateChange = Date.now();
45
- this._clientCleanup = [];
61
+ this._cleanupSubscriptions = new util_1.SubscriptionGroup();
46
62
  this.statusChanged = new async_1.Event();
47
63
  this.commandTrace = new async_1.Event();
48
- this._setState(signal_api_1.SignalApi.State.CONNECTING);
64
+ this.swarmEvent = new async_1.Event();
65
+ this._swarmStreams = new util_1.ComplexMap(key => key.toHex());
66
+ this._messageStreams = new util_1.ComplexMap(key => key.toHex());
67
+ this._setState(State.CONNECTING);
49
68
  this._createClient();
50
69
  }
51
70
  _setState(newState) {
@@ -57,93 +76,72 @@ class SignalClient {
57
76
  _createClient() {
58
77
  this._connectionStarted = Date.now();
59
78
  try {
60
- this._client = new websocket_rpc_1.WebsocketRpc(this._host);
79
+ this._client = new signal_rpc_client_1.SignalRPCClient(this._host);
61
80
  }
62
81
  catch (error) {
63
- if (this._state === signal_api_1.SignalApi.State.RE_CONNECTING) {
82
+ if (this._state === State.RE_CONNECTING) {
64
83
  this._reconnectAfter *= 2;
65
84
  }
66
85
  this._lastError = error;
67
- this._setState(signal_api_1.SignalApi.State.DISCONNECTED);
86
+ this._setState(State.DISCONNECTED);
68
87
  this._reconnect();
69
88
  }
70
- this._client.addHandler('offer', (message) => this._onOffer({
71
- id: protocols_1.PublicKey.from(message.id),
72
- remoteId: protocols_1.PublicKey.from(message.remoteId),
73
- topic: protocols_1.PublicKey.from(message.topic),
74
- sessionId: protocols_1.PublicKey.from(message.sessionId),
75
- data: message.data
76
- }));
77
- this._client.subscribe('signal', (msg) => {
78
- var _a;
79
- return this._onSignal({
80
- id: protocols_1.PublicKey.from(msg.id),
81
- remoteId: protocols_1.PublicKey.from(msg.remoteId),
82
- topic: protocols_1.PublicKey.from(msg.topic),
83
- sessionId: protocols_1.PublicKey.from(msg.sessionId),
84
- data: gen_1.schema.getCodecForType('dxos.mesh.signal.MessageData').decode((_a = msg.data) !== null && _a !== void 0 ? _a : (0, debug_2.failUndefined)()),
85
- // Field that MessageRouter adds, so on lower level it not always defined.
86
- messageId: msg.messageId ? protocols_1.PublicKey.from(msg.messageId) : undefined
87
- });
88
- });
89
- this._clientCleanup.push(this._client.connected.on(() => {
90
- log('Socket connected');
89
+ this._cleanupSubscriptions.push(this._client.connected.on(() => {
91
90
  this._lastError = undefined;
92
91
  this._reconnectAfter = DEFAULT_RECONNECT_TIMEOUT;
93
- this._setState(signal_api_1.SignalApi.State.CONNECTED);
92
+ this._setState(State.CONNECTED);
94
93
  }));
95
- this._clientCleanup.push(this._client.error.on(error => {
94
+ this._cleanupSubscriptions.push(this._client.error.on(error => {
96
95
  log(`Socket error: ${error.message}`);
97
- if (this._state === signal_api_1.SignalApi.State.CLOSED) {
96
+ if (this._state === State.CLOSED) {
98
97
  return;
99
98
  }
100
- if (this._state === signal_api_1.SignalApi.State.RE_CONNECTING) {
99
+ if (this._state === State.RE_CONNECTING) {
101
100
  this._reconnectAfter *= 2;
102
101
  }
103
102
  this._lastError = error;
104
- this._setState(signal_api_1.SignalApi.State.DISCONNECTED);
103
+ this._setState(State.DISCONNECTED);
105
104
  this._reconnect();
106
105
  }));
107
- this._clientCleanup.push(this._client.disconnected.on(() => {
106
+ this._cleanupSubscriptions.push(this._client.disconnected.on(() => {
108
107
  log('Socket disconnected');
109
108
  // This is also called in case of error, but we already have disconnected the socket on error, so no need to do anything here.
110
- if (this._state !== signal_api_1.SignalApi.State.CONNECTING && this._state !== signal_api_1.SignalApi.State.RE_CONNECTING) {
109
+ if (this._state !== State.CONNECTING && this._state !== State.RE_CONNECTING) {
111
110
  return;
112
111
  }
113
- if (this._state === signal_api_1.SignalApi.State.RE_CONNECTING) {
112
+ if (this._state === State.RE_CONNECTING) {
114
113
  this._reconnectAfter *= 2;
115
114
  }
116
- this._setState(signal_api_1.SignalApi.State.DISCONNECTED);
115
+ this._setState(State.DISCONNECTED);
117
116
  this._reconnect();
118
117
  }));
119
- this._clientCleanup.push(this._client.commandTrace.on(trace => this.commandTrace.emit(trace)));
120
118
  }
121
119
  _reconnect() {
120
+ log(`Reconnecting in ${this._reconnectAfter}ms`);
122
121
  if (this._reconnectIntervalId !== undefined) {
123
122
  console.error('Signal api already reconnecting.');
124
123
  return;
125
124
  }
126
- if (this._state === signal_api_1.SignalApi.State.CLOSED) {
125
+ if (this._state === State.CLOSED) {
127
126
  return;
128
127
  }
129
128
  this._reconnectIntervalId = setTimeout(() => {
130
129
  this._reconnectIntervalId = undefined;
131
- this._clientCleanup.forEach(cb => cb());
132
- this._clientCleanup = [];
130
+ this._cleanupSubscriptions.unsubscribe();
133
131
  // Close client if it wasn't already closed.
134
132
  this._client.close().catch(() => { });
135
- this._setState(signal_api_1.SignalApi.State.RE_CONNECTING);
133
+ this._setState(State.RE_CONNECTING);
136
134
  this._createClient();
137
135
  }, this._reconnectAfter);
138
136
  }
139
137
  async close() {
140
- this._clientCleanup.forEach(cb => cb());
141
- this._clientCleanup = [];
138
+ this._cleanupSubscriptions.unsubscribe();
142
139
  if (this._reconnectIntervalId !== undefined) {
143
140
  clearTimeout(this._reconnectIntervalId);
144
141
  }
145
142
  await this._client.close();
146
- this._setState(signal_api_1.SignalApi.State.CLOSED);
143
+ this._setState(State.CLOSED);
144
+ log('Closed.');
147
145
  }
148
146
  getStatus() {
149
147
  var _a;
@@ -157,54 +155,66 @@ class SignalClient {
157
155
  };
158
156
  }
159
157
  async join(topic, peerId) {
160
- const peers = await this._client.call('join', {
161
- id: peerId.asBuffer(),
162
- topic: topic.asBuffer()
163
- });
164
- return peers.map(id => protocols_1.PublicKey.from(id));
158
+ log(`Join: topic=${topic} peerId=${peerId}`);
159
+ await this._subscribeMessages(peerId);
160
+ await this._subscribeSwarmEvents(topic, peerId);
165
161
  }
166
162
  async leave(topic, peerId) {
167
- await this._client.call('leave', {
168
- id: peerId.asBuffer(),
169
- topic: topic.asBuffer()
170
- });
163
+ var _a, _b;
164
+ log(`Leave: topic=${topic} peerId=${peerId}`);
165
+ (_a = this._swarmStreams.get(topic)) === null || _a === void 0 ? void 0 : _a.close();
166
+ this._swarmStreams.delete(topic);
167
+ (_b = this._messageStreams.get(topic)) === null || _b === void 0 ? void 0 : _b.close();
168
+ this._messageStreams.delete(topic);
171
169
  }
172
- async lookup(topic) {
173
- const peers = await this._client.call('lookup', {
174
- topic: topic.asBuffer()
175
- });
176
- return peers.map(id => protocols_1.PublicKey.from(id));
170
+ async signal(message) {
171
+ const payload = {
172
+ type_url: 'dxos.mesh.signalMessage.SignalMessage',
173
+ value: gen_1.schema.getCodecForType('dxos.mesh.signalMessage.SignalMessage').encode(message)
174
+ };
175
+ return this._client.sendMessage(message.id, message.remoteId, payload);
177
176
  }
178
- /**
179
- * Routes an offer to the other peer's _onOffer callback.
180
- * @returns Other peer's _onOffer callback return value.
181
- * @deprecated
182
- */
183
- async offer(msg) {
184
- var _a, _b, _c, _d;
185
- return this._client.call('offer', {
186
- id: (_a = msg.id) === null || _a === void 0 ? void 0 : _a.asBuffer(),
187
- remoteId: (_b = msg.remoteId) === null || _b === void 0 ? void 0 : _b.asBuffer(),
188
- topic: (_c = msg.topic) === null || _c === void 0 ? void 0 : _c.asBuffer(),
189
- sessionId: (_d = msg.sessionId) === null || _d === void 0 ? void 0 : _d.asBuffer(),
190
- data: msg.data
177
+ async _subscribeSwarmEvents(topic, peerId) {
178
+ (0, assert_1.default)(!this._swarmStreams.has(topic));
179
+ const swarmStream = await this._client.join(topic, peerId);
180
+ // Subscribing to swarm events.
181
+ // TODO(mykola): What happens when the swarm stream is closed? Maybe send leave event for each peer?
182
+ swarmStream.subscribe((swarmEvent) => {
183
+ this.swarmEvent.emit([topic, swarmEvent]);
184
+ });
185
+ // Saving swarm stream.
186
+ this._swarmStreams.set(topic, swarmStream);
187
+ this._cleanupSubscriptions.push(() => {
188
+ swarmStream.close();
189
+ this._swarmStreams.delete(topic);
191
190
  });
192
191
  }
193
- /**
194
- * Routes an offer to the other peer's _onSignal callback.
195
- */
196
- async signal(message) {
197
- var _a, _b, _c, _d, _e, _f;
198
- const signalMessage = {
199
- messageId: (_a = message.messageId) === null || _a === void 0 ? void 0 : _a.asBuffer(),
200
- id: (_b = message.id) === null || _b === void 0 ? void 0 : _b.asBuffer(),
201
- remoteId: (_c = message.remoteId) === null || _c === void 0 ? void 0 : _c.asBuffer(),
202
- topic: (_d = message.topic) === null || _d === void 0 ? void 0 : _d.asBuffer(),
203
- sessionId: (_e = message.sessionId) === null || _e === void 0 ? void 0 : _e.asBuffer(),
204
- data: Buffer.from(gen_1.schema.getCodecForType('dxos.mesh.signal.MessageData').encode((_f = message.data) !== null && _f !== void 0 ? _f : (0, debug_2.failUndefined)()))
205
- };
206
- return this._client.emit('signal', signalMessage);
192
+ async _subscribeMessages(peerId) {
193
+ // Subscribing to messages.
194
+ const messageStream = await this._client.receiveMessages(peerId);
195
+ messageStream.subscribe(async (message) => {
196
+ if (message.payload.type_url === 'dxos.mesh.signalMessage.SignalMessage') {
197
+ const signalMessage = gen_1.schema.getCodecForType('dxos.mesh.signalMessage.SignalMessage').decode(message.payload.value);
198
+ log('Message received: ' + JSON.stringify(signalMessage));
199
+ (0, assert_1.default)(signalMessage.remoteId.equals(peerId));
200
+ await this._onSignal(signalMessage);
201
+ }
202
+ else {
203
+ log('Unknown message type: ' + message.payload.type_url);
204
+ }
205
+ });
206
+ // Saving message stream.
207
+ if (!this._messageStreams.has(peerId)) {
208
+ this._messageStreams.set(peerId, messageStream);
209
+ }
210
+ this._cleanupSubscriptions.push(() => {
211
+ messageStream.close();
212
+ this._messageStreams.delete(peerId);
213
+ });
207
214
  }
208
215
  }
216
+ __decorate([
217
+ async_1.synchronized
218
+ ], SignalClient.prototype, "_subscribeSwarmEvents", null);
209
219
  exports.SignalClient = SignalClient;
210
220
  //# sourceMappingURL=signal-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signal-client.js","sourceRoot":"","sources":["../../../src/signal/signal-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signal-client.js","sourceRoot":"","sources":["../../../src/signal/signal-client.ts"],"names":[],"mappings":"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"}