nip11

package
v0.52.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 18, 2025 License: MIT Imports: 7 Imported by: 24

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type RelayFeesDocument added in v0.17.1

type RelayFeesDocument struct {
	Admission []struct {
		Amount int    `json:"amount"`
		Unit   string `json:"unit"`
	} `json:"admission,omitempty"`
	Subscription []struct {
		Amount int    `json:"amount"`
		Unit   string `json:"unit"`
		Period int    `json:"period"`
	} `json:"subscription,omitempty"`
	Publication []struct {
		Kinds  []int  `json:"kinds"`
		Amount int    `json:"amount"`
		Unit   string `json:"unit"`
	} `json:"publication,omitempty"`
}

type RelayInformationDocument

type RelayInformationDocument struct {
	URL string `json:"-"`

	Name          string `json:"name"`
	Description   string `json:"description"`
	PubKey        string `json:"pubkey"`
	Contact       string `json:"contact"`
	SupportedNIPs []any  `json:"supported_nips"`
	Software      string `json:"software"`
	Version       string `json:"version"`

	Limitation     *RelayLimitationDocument  `json:"limitation,omitempty"`
	RelayCountries []string                  `json:"relay_countries,omitempty"`
	LanguageTags   []string                  `json:"language_tags,omitempty"`
	Tags           []string                  `json:"tags,omitempty"`
	PostingPolicy  string                    `json:"posting_policy,omitempty"`
	PaymentsURL    string                    `json:"payments_url,omitempty"`
	Fees           *RelayFeesDocument        `json:"fees,omitempty"`
	Retention      []*RelayRetentionDocument `json:"retention,omitempty"`
	Icon           string                    `json:"icon"`
	Banner         string                    `json:"banner"`
}

func Fetch added in v0.13.0

func Fetch(ctx context.Context, u string) (info RelayInformationDocument, err error)

Fetch fetches the NIP-11 metadata for a relay.

It will always return `info` with at least `URL` filled -- even if we can't connect to the relay or if it doesn't have a NIP-11 handler -- although in that case it will also return an error.

func (*RelayInformationDocument) AddSupportedNIP added in v0.25.7

func (info *RelayInformationDocument) AddSupportedNIP(number int)

func (*RelayInformationDocument) AddSupportedNIPs added in v0.47.0

func (info *RelayInformationDocument) AddSupportedNIPs(numbers []int)

type RelayLimitationDocument added in v0.17.1

type RelayLimitationDocument struct {
	MaxMessageLength    int   `json:"max_message_length,omitempty"`
	MaxSubscriptions    int   `json:"max_subscriptions,omitempty"`
	MaxLimit            int   `json:"max_limit,omitempty"`
	DefaultLimit        int   `json:"default_limit,omitempty"`
	MaxSubidLength      int   `json:"max_subid_length,omitempty"`
	MaxEventTags        int   `json:"max_event_tags,omitempty"`
	MaxContentLength    int   `json:"max_content_length,omitempty"`
	MinPowDifficulty    int   `json:"min_pow_difficulty,omitempty"`
	CreatedAtLowerLimit int64 `json:"created_at_lower_limit"`
	CreatedAtUpperLimit int64 `json:"created_at_upper_limit"`
	AuthRequired        bool  `json:"auth_required"`
	PaymentRequired     bool  `json:"payment_required"`
	RestrictedWrites    bool  `json:"restricted_writes"`
}

type RelayRetentionDocument added in v0.47.0

type RelayRetentionDocument struct {
	Time  int64   `json:"time,omitempty"`
	Count int     `json:"count,omitempty"`
	Kinds [][]int `json:"kinds,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL