github.com/status-im/status-go@v1.1.0/protocol/messenger_peers.go (about)

     1  package protocol
     2  
     3  import (
     4  	"crypto/ecdsa"
     5  
     6  	"github.com/libp2p/go-libp2p/core/peer"
     7  	"github.com/multiformats/go-multiaddr"
     8  
     9  	"github.com/ethereum/go-ethereum/p2p/enode"
    10  
    11  	"github.com/status-im/status-go/eth-node/types"
    12  )
    13  
    14  func (m *Messenger) AddStorePeer(address multiaddr.Multiaddr) (peer.ID, error) {
    15  	return m.transport.AddStorePeer(address)
    16  }
    17  
    18  func (m *Messenger) AddRelayPeer(address multiaddr.Multiaddr) (peer.ID, error) {
    19  	return m.transport.AddRelayPeer(address)
    20  }
    21  
    22  func (m *Messenger) DialPeer(address multiaddr.Multiaddr) error {
    23  	return m.transport.DialPeer(address)
    24  }
    25  
    26  func (m *Messenger) DialPeerByID(peerID peer.ID) error {
    27  	return m.transport.DialPeerByID(peerID)
    28  }
    29  
    30  func (m *Messenger) DropPeer(peerID peer.ID) error {
    31  	return m.transport.DropPeer(peerID)
    32  }
    33  
    34  func (m *Messenger) Peers() types.PeerStats {
    35  	return m.transport.Peers()
    36  }
    37  
    38  func (m *Messenger) RelayPeersByTopic(topic string) (*types.PeerList, error) {
    39  	return m.transport.RelayPeersByTopic(topic)
    40  }
    41  
    42  func (m *Messenger) ListenAddresses() ([]multiaddr.Multiaddr, error) {
    43  	return m.transport.ListenAddresses()
    44  }
    45  
    46  func (m *Messenger) ENR() (*enode.Node, error) {
    47  	return m.transport.ENR()
    48  }
    49  
    50  // Subscribe to a pubsub topic, passing an optional public key if the pubsub topic is protected
    51  func (m *Messenger) SubscribeToPubsubTopic(topic string, optPublicKey *ecdsa.PublicKey) error {
    52  	return m.transport.SubscribeToPubsubTopic(topic, optPublicKey)
    53  }
    54  
    55  func (m *Messenger) StorePubsubTopicKey(topic string, privKey *ecdsa.PrivateKey) error {
    56  	return m.transport.StorePubsubTopicKey(topic, privKey)
    57  }