@statewalker/httpeers-member 0.1.4 → 0.1.5
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/dist/join.js +4 -4
- package/package.json +3 -3
- package/src/join.ts +4 -4
package/dist/join.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { peerIdFromString } from "@libp2p/peer-id";
|
|
18
18
|
import { multiaddr } from "@multiformats/multiaddr";
|
|
19
|
-
import { hubRoute, reachHub } from "@statewalker/httpeers-libp2p";
|
|
19
|
+
import { dialWebRTC, hubRoute, reachHub } from "@statewalker/httpeers-libp2p";
|
|
20
20
|
import { peerRequest } from "./peer-request.js";
|
|
21
21
|
/**
|
|
22
22
|
* Dial `${relayAddr}/p2p-circuit/webrtc/p2p/${peerId}` explicitly, BEFORE
|
|
@@ -36,7 +36,7 @@ import { peerRequest } from "./peer-request.js";
|
|
|
36
36
|
*/
|
|
37
37
|
export async function preDialPeer(node, relayAddr, peerId) {
|
|
38
38
|
const target = multiaddr(`${relayAddr}/p2p-circuit/webrtc/p2p/${peerId}`);
|
|
39
|
-
await node
|
|
39
|
+
await dialWebRTC(node, target);
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
42
42
|
* "Make sure this peer can be called" -- the function
|
|
@@ -95,7 +95,7 @@ export function createRouteEnsurer(init) {
|
|
|
95
95
|
if (node.getConnections(target).some((conn) => conn.limits == null))
|
|
96
96
|
return;
|
|
97
97
|
if (init.hubPeerId != null && init.hubPeerId !== selfPeerId) {
|
|
98
|
-
await node
|
|
98
|
+
await dialWebRTC(node, multiaddr(hubRoute(init.hubPeerId, peerId)));
|
|
99
99
|
return;
|
|
100
100
|
}
|
|
101
101
|
const advertised = (init.meshView()?.members.find((m) => m.peerId === peerId)?.addrs ?? [])
|
|
@@ -106,7 +106,7 @@ export function createRouteEnsurer(init) {
|
|
|
106
106
|
// full dial timeout for each unreachable interface address the provider
|
|
107
107
|
// reported (a browser peer behind a relay routinely reports several).
|
|
108
108
|
if (advertised.length > 0)
|
|
109
|
-
await node
|
|
109
|
+
await dialWebRTC(node, advertised);
|
|
110
110
|
else
|
|
111
111
|
await preDialPeer(node, relayAddr, peerId);
|
|
112
112
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@statewalker/httpeers-member",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Everything a participant does: hold an identity, redeem or resume, connect, keep the link, advertise, discover, call, and serve.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
"@libp2p/peer-id": "^6.0.15",
|
|
45
45
|
"@multiformats/multiaddr": "^13.0.3",
|
|
46
46
|
"@statewalker/httpeers-access": "^0.1.3",
|
|
47
|
-
"@statewalker/httpeers-
|
|
48
|
-
"@statewalker/httpeers-
|
|
47
|
+
"@statewalker/httpeers-core": "^0.1.2",
|
|
48
|
+
"@statewalker/httpeers-libp2p": "^0.1.4"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
51
|
"@chainsafe/libp2p-noise": "^17.0.0",
|
package/src/join.ts
CHANGED
|
@@ -21,7 +21,7 @@ import { multiaddr } from "@multiformats/multiaddr";
|
|
|
21
21
|
import type { ChangeEntry, RevocationCache, RuleSet } from "@statewalker/httpeers-access";
|
|
22
22
|
import type { MeshView, PeerIdStr } from "@statewalker/httpeers-core";
|
|
23
23
|
import type { Peer } from "@statewalker/httpeers-libp2p";
|
|
24
|
-
import { hubRoute, reachHub } from "@statewalker/httpeers-libp2p";
|
|
24
|
+
import { dialWebRTC, hubRoute, reachHub } from "@statewalker/httpeers-libp2p";
|
|
25
25
|
import { peerRequest } from "./peer-request.js";
|
|
26
26
|
|
|
27
27
|
/**
|
|
@@ -46,7 +46,7 @@ export async function preDialPeer(
|
|
|
46
46
|
peerId: PeerIdStr,
|
|
47
47
|
): Promise<void> {
|
|
48
48
|
const target = multiaddr(`${relayAddr}/p2p-circuit/webrtc/p2p/${peerId}`);
|
|
49
|
-
await node
|
|
49
|
+
await dialWebRTC(node, target);
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
export interface RouteEnsurerInit {
|
|
@@ -126,7 +126,7 @@ export function createRouteEnsurer(init: RouteEnsurerInit): (peerId: PeerIdStr)
|
|
|
126
126
|
if (node.getConnections(target).some((conn) => conn.limits == null)) return;
|
|
127
127
|
|
|
128
128
|
if (init.hubPeerId != null && init.hubPeerId !== selfPeerId) {
|
|
129
|
-
await node
|
|
129
|
+
await dialWebRTC(node, multiaddr(hubRoute(init.hubPeerId, peerId)));
|
|
130
130
|
return;
|
|
131
131
|
}
|
|
132
132
|
|
|
@@ -138,7 +138,7 @@ export function createRouteEnsurer(init: RouteEnsurerInit): (peerId: PeerIdStr)
|
|
|
138
138
|
// addresses of a single peer itself, and a sequential loop would pay the
|
|
139
139
|
// full dial timeout for each unreachable interface address the provider
|
|
140
140
|
// reported (a browser peer behind a relay routinely reports several).
|
|
141
|
-
if (advertised.length > 0) await node
|
|
141
|
+
if (advertised.length > 0) await dialWebRTC(node, advertised);
|
|
142
142
|
else await preDialPeer(node, relayAddr, peerId);
|
|
143
143
|
};
|
|
144
144
|
}
|