Class Dialer

property

{PeerStore} peerStore

property

{TransportManager} transportManager

property

{(addresses: Address[]) => Address[]} [options.addressSorter = publicAddressesFirst] - Sort the known addresses of a peer before trying to dial.

property

{number} [concurrency = MAX_PARALLEL_DIALS] - Number of max concurrent dials.

property

{number} [perPeerLimit = MAX_PER_PEER_DIALS] - Number of max concurrent dials per peer.

property

{number} [timeout = DIAL_TIMEOUT] - How long a dial attempt is allowed to take.

property

{Record<string, Resolver>} [resolvers = {}] - multiaddr resolvers to use when dialing

property

{string} id

property

{Multiaddr[]} addrs

property

{DialRequest} dialRequest

property

{TimeoutController} controller

property

{Promise} promise

property

{function():void} destroy

Hierarchy

  • Dialer

Index

References

Address

Re-exports Address

Connection

Re-exports Connection

DialTarget

Re-exports DialTarget

DialerOptions

Re-exports DialerOptions

DialerProperties

Re-exports DialerProperties

Multiaddr

Re-exports Multiaddr

PeerId

Re-exports PeerId

PeerStore

Re-exports PeerStore

PendingDial

Re-exports PendingDial

Resolver

Re-exports Resolver

TransportManager

Re-exports TransportManager

Constructors

constructor

  • new Dialer(__namedParameters: { addressSorter: undefined | ((addresses: Address[]) => Address[]); concurrency: undefined | number; peerStore: PeerStore; perPeerLimit: undefined | number; resolvers: undefined | Record<string, (addr: Multiaddr) => Promise<string[]>>; timeout: undefined | number; transportManager: TransportManager }): Dialer
  • Parameters

    • __namedParameters: { addressSorter: undefined | ((addresses: Address[]) => Address[]); concurrency: undefined | number; peerStore: PeerStore; perPeerLimit: undefined | number; resolvers: undefined | Record<string, (addr: Multiaddr) => Promise<string[]>>; timeout: undefined | number; transportManager: TransportManager }
      • addressSorter: undefined | ((addresses: Address[]) => Address[])
      • concurrency: undefined | number
      • peerStore: PeerStore
      • perPeerLimit: undefined | number
      • resolvers: undefined | Record<string, (addr: Multiaddr) => Promise<string[]>>
      • timeout: undefined | number
      • transportManager: TransportManager

    Returns Dialer

Properties

Private _createDialTarget

_createDialTarget: any

Creates a DialTarget. The DialTarget is used to create and track the DialRequest to a given peer. If a multiaddr is received it should be the first address attempted.

param

A PeerId or Multiaddr

returns

Private _createPendingDial

_createPendingDial: any

Creates a PendingDial that wraps the underlying DialRequest

param
param
param

An AbortController signal

returns

_pendingDials

_pendingDials: Map<any, any>

addressSorter

addressSorter: (addresses: Address[]) => Address[]

Type declaration

concurrency

concurrency: number

peerStore

peerStore: PeerStore

perPeerLimit

perPeerLimit: number

timeout

timeout: number

tokens

tokens: number[]

transportManager

transportManager: TransportManager

Methods

_resolve

_resolveRecord

  • Resolve a given multiaddr. If this fails, an empty array will be returned

    Parameters

    Returns Promise<Multiaddr[]>

connectToPeer

  • connectToPeer(peer: PeerId | Multiaddr | string, options?: { signal?: AbortSignal | undefined } | undefined): Promise<Connection>
  • Connects to a given peer by dialing all of its known addresses. The dial to the first address that is successfully able to upgrade a connection will be used.

    Parameters

    • peer: PeerId | Multiaddr | string

      The peer to dial

    • Optional options: { signal?: AbortSignal | undefined } | undefined

    Returns Promise<Connection>

destroy

  • destroy(): void
  • Clears any pending dials

    Returns void

getTokens

  • getTokens(num: any): number[]
  • Parameters

    • num: any

    Returns number[]

releaseToken

  • releaseToken(token: any): void
  • Parameters

    • token: any

    Returns void