Versions in this module Expand all Collapse all v1 v1.0.0 Jul 3, 2023 Changes in this version + const RetrievalProtocolName + func DecodeMultiaddr(addr multiaddr.Multiaddr) (IPOrHost, IsHostName, PortNumber, error) + type IPInfo struct + ASN string + Bogon bool + City string + Continent string + Country string + IP string + ISP string + Latitude float32 + Loc string + Longitude float32 + Org string + Postal string + Region string + Timezone string + func GetPublicIPInfo(ctx context.Context, ip string, token string) (IPInfo, error) + func (i *IPInfo) Resolve() + type IPOrHost = string + type IsHostName = bool + type LocationResolver struct + func NewLocationResolver(ipInfoToken string, ttl time.Duration) LocationResolver + func (l LocationResolver) ResolveIP(ctx context.Context, ip net.IP) (IPInfo, error) + func (l LocationResolver) ResolveIPStr(ctx context.Context, ip string) (IPInfo, error) + func (l LocationResolver) ResolveMultiaddr(ctx context.Context, addr multiaddr.Multiaddr) (IPInfo, error) + func (l LocationResolver) ResolveMultiaddrs(ctx context.Context, addrs []multiaddr.Multiaddr) (IPInfo, error) + func (l LocationResolver) ResolveMultiaddrsBytes(ctx context.Context, bytesAddrs []abi.Multiaddrs) (IPInfo, error) + type MinerInfo struct + Multiaddrs []abi.Multiaddrs + MultiaddrsBase64Encoded []string + PeerId string + type PortNumber = int + type ProtocolProvider struct + func ProtocolResolver(host host.Host, timeout time.Duration) ProtocolProvider + func (p ProtocolProvider) GetRetrievalProtocols(parent context.Context, minerInfo peer.AddrInfo) ([]model.Protocol, error) + func (p ProtocolProvider) IsBoostProvider(ctx context.Context, minerInfo peer.AddrInfo) (bool, error) + type ProviderResolver struct + func NewProviderResolver(url string, token string, ttl time.Duration) (*ProviderResolver, error) + func (p *ProviderResolver) ResolveProvider(ctx context.Context, provider string) (MinerInfo, error)