- swarm.addrs
- swarm.connect
- swarm.disconnect
- swarm.localAddrs
- swarm.peers
- swarm.filters.add (not implemented yet)
- swarm.filters.rm (not implemented yet)
List of known addresses of each peer connected.
Returns
Type | Description |
---|---|
Promise<{ id: String, addrs: Multiaddr[] }> |
A promise that resolves to an object with id and addrs . id is a String - the peer's ID and addrs is an array of Multiaddr - addresses for the peer. |
Example:
const peerInfos = await ipfs.swarm.addrs()
peerInfos.forEach(info => {
console.log(info.id)
/*
QmcZf59bWwK5XFi76CZX8cbJ4BhTzzA3gU1ZjYZcYW3dwt
*/
info.addrs.forEach(addr => console.log(addr.toString()))
/*
/ip4/147.75.94.115/udp/4001/quic
/ip6/2604:1380:3000:1f00::1/udp/4001/quic
/dnsaddr/bootstrap.libp2p.io
/ip6/2604:1380:3000:1f00::1/tcp/4001
/ip4/147.75.94.115/tcp/4001
*/
})
A great source of examples can be found in the tests for this API.
Open a connection to a given address.
Where addr
is of type multiaddr
Returns
Type | Description |
---|---|
Promise<void> |
If action is successfully completed. Otherwise an error will be thrown |
Example:
await ipfs.swarm.connect(addr)
A great source of examples can be found in the tests for this API.
Close a connection on a given address.
Where addr
is of type multiaddr
Returns
Type | Description |
---|---|
Promise<void> |
If action is successfully completed. Otherwise an error will be thrown |
Example:
await ipfs.swarm.disconnect(addr)
A great source of examples can be found in the tests for this API.
Local addresses this node is listening on.
Returns
Type | Description |
---|---|
Promise<Multiaddr[]> |
An array of Multiaddr representing the local addresses the node is listening |
Example:
const multiAddrs = await ipfs.swarm.localAddrs()
console.log(multiAddrs)
A great source of examples can be found in the tests for this API.
List out the peers that we have connections with.
options
an optional object with the following properties:
direction
- set totrue
to return connection direction information. Defaultfalse
streams
- set totrue
to return information about open muxed streams. Defaultfalse
verbose
- set totrue
to return all extra information. Defaultfalse
latency
- set totrue
to return latency information. Defaultfalse
Returns
Type | Description |
---|---|
Promise<Object[]> |
An array with the list of peers that the node have connections with |
The returned array has the following form:
addr: Multiaddr
peer: String
latency: String
- Only ifverbose: true
was passedmuxer: String
- The type of stream muxer the peer is usngstreams: string[]
- Only ifverbose: true
, a list of currently open streamsdirection: number
- Inbound or outbound connection
If an error occurs trying to create an individual object, it will have the properties:
error: Error
- the error that occurredrawPeerInfo: Object
- the raw data for the peer
All other properties may be undefined
.
Example:
const peerInfos = await ipfs.swarm.peers()
console.log(peerInfos)
A great source of examples can be found in the tests for this API.
NOT IMPLEMENTED YET
Display current multiaddr filters. Filters are a way to set up rules for the network connections established.
Returns
Type | Description |
---|---|
Promise<Array> |
An array of multiaddrs that represent the filters being applied |
Example:
const filters = await ipfs.swarm.filters()
Add another filter.
Where filter
is of type multiaddr
Returns
Type | Description |
---|---|
Promise<void> |
If action is successfully completed. Otherwise an error will be thrown |
Example:
await ipfs.swarm.filters.add(filter)
Remove a filter
Where filter
is of type multiaddr
Returns
Type | Description |
---|---|
Promise<void> |
If action is successfully completed. Otherwise an error will be thrown |
Example:
await ipfs.swarm.filters.rm(filter)