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


  • MatrixHostResolver


  • Parameters

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

    Returns MatrixHostResolver


  • get currentTime(): number
  • Returns number


  • 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.


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


    • hostname: string

      The Matrix hostname to resolve. e.g.

    • 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.


    An object describing the delegated details for the host.


    • hostname: string

      The Matrix hostname to resolve. e.g.

    Returns Promise<HostResolveResult>

Generated using TypeDoc