Class to lookup the hostname, port and host headers of a given Matrix servername according to the server discovery section of the spec.

Hierarchy

  • MatrixHostResolver

Constructors

  • Parameters

    • opts: {
          axios?: Axios;
          currentTimeMs?: number;
          dns?: DnsInterface;
      } = {}
      • Optional axios?: Axios
      • Optional currentTimeMs?: number
      • Optional dns?: DnsInterface

    Returns MatrixHostResolver

Accessors

  • get currentTime(): number
  • Returns number

Methods

  • Resolves a Matrix serverName into the baseURL for federated requests, and the Host header to use when serving requests.

    Results are cached by default. Please note that failures are cached, determined by the constant CacheFailureForMS.

    Returns

    The baseurl of the Matrix server (excluding /_matrix/federation suffix), and the hostHeader to be used.

    Parameters

    • hostname: string

      The Matrix hostname to resolve. e.g. matrix.org

    • skipCache: boolean = false

      Should the request be executed regardless of the cached value? Existing cached values will be overwritten.

    Returns Promise<{
        hostHeader: string;
        url: URL;
    }>

  • Resolves a Matrix serverName, fetching any delegated information. This request is NOT cached. For general use, please use resolveMatrixServer.

    Returns

    An object describing the delegated details for the host.

    Parameters

    • hostname: string

      The Matrix hostname to resolve. e.g. matrix.org

    Returns Promise<HostResolveResult>

Generated using TypeDoc