Versions in this module Expand all Collapse all v0 v0.7.6 Oct 23, 2025 v0.7.5 Jun 30, 2025 Changes in this version + var Counters = []prometheus.CounterDefinition + func WithBootNodes(nodes []multiaddr.Multiaddr) func(*Config) + func WithBootNodesReachabilityInterval(d time.Duration) func(cfg *Config) + func WithConnectionLimit(n uint) func(cfg *Config) + func WithConnectionThreshold(n uint) func(*Config) + func WithDialBackAddress(a string) func(*Config) + func WithDialBackPeers(peers []bls.Peer) func(*Config) + func WithDialBackPeersLimit(n uint) func(*Config) + func WithDialBackPort(n uint) func(*Config) + func WithDialBackWebsocketPort(n uint) func(*Config) + func WithDisabledResourceLimits(b bool) func(cfg *Config) + func WithDiscoveryInterval(d time.Duration) func(*Config) + func WithEnableP2PRelay(b bool) func(cfg *Config) + func WithMustReachBootNodes(b bool) func(*Config) + func WithPrivateKey(filepath string) func(*Config) + func WithWebsocket(b bool) func(*Config) + func WithWebsocketPort(port uint) func(*Config) + type Config struct + BootNodes []multiaddr.Multiaddr + BootNodesReachabilityCheckInterval time.Duration + ConnectionLimit uint + ConnectionThreshold uint + DialBackAddress string + DialBackPeers []bls.Peer + DialBackPeersLimit uint + DialBackPort uint + DialBackWebsocketPort uint + DisableResourceLimits bool + DiscoveryInterval time.Duration + EnableP2PRelay bool + MustReachBootNodes bool + PrivateKey string + Websocket bool + WebsocketPort uint + type Host struct + func New(log zerolog.Logger, address string, port uint, options ...func(*Config)) (*Host, error) + func (h *Host) Addresses() []string + func (h *Host) ConnectToBootNodes(ctx context.Context) error + func (h *Host) ConnectToDialbackPeers(ctx context.Context) error + func (h *Host) ConnectToKnownPeers(ctx context.Context) error + func (h *Host) DiscoverPeers(ctx context.Context, topic string) error + func (h *Host) InitPubSub(ctx context.Context) error + func (h *Host) JoinTopic(topic string) (*pubsub.Topic, error) + func (h *Host) PrivateKey() crypto.PrivKey + func (h *Host) PublicKey() crypto.PubKey + func (h *Host) Publish(ctx context.Context, topic *pubsub.Topic, payload []byte) error + func (h *Host) SendMessage(ctx context.Context, to peer.ID, payload []byte) error + func (h *Host) SendMessageOnProtocol(ctx context.Context, to peer.ID, payload []byte, protocol protocol.ID) error + func (h *Host) Subscribe(topic string) (*pubsub.Topic, *pubsub.Subscription, error) + type Notifiee struct + func NewNotifee(log zerolog.Logger, store bls.PeerStore) *Notifiee + func (n *Notifiee) Connected(network network.Network, conn network.Conn) + func (n *Notifiee) Disconnected(_ network.Network, conn network.Conn) + func (n *Notifiee) Listen(_ network.Network, _ multiaddr.Multiaddr) + func (n *Notifiee) ListenClose(_ network.Network, _ multiaddr.Multiaddr)