RelayManager class

Constructors

RelayManager({bool? isWeb})

Properties

allowReconnectRelays bool
getter/setter pair
blockedRelays List<String>
getter/setter pair
blockedRelaysCount int
no setter
bootstrapRelays List<String>
getter/setter pair
cacheManager CacheManager
getter/setter pair
eventFilters List<EventFilter>
getter/setter pair
eventVerifier EventVerifier
getter/setter pair
hashCode int
The hash code for this object.
no setterinherited
httpClient HttpClient?
getter/setter pair
nostrRequests Map<String, NostrRequest>
final
relays Map<String, Relay>
Global relay registry by url
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
webSockets Map<String, WebSocketChannel>
Global webSocket registry by url
getter/setter pair

Methods

broadcastAddContact(String add, Iterable<String> relays, EventSigner signer) Future<ContactList>
broadcastAddFollowedCommunity(String toAdd, Iterable<String> relays, EventSigner signer) Future<ContactList>
broadcastAddFollowedEvent(String toAdd, Iterable<String> relays, EventSigner signer) Future<ContactList>
broadcastAddFollowedTag(String toAdd, Iterable<String> relays, EventSigner signer) Future<ContactList>
broadcastAddNip51ListElement(int kind, String tag, String value, Iterable<String> broadcastRelays, EventSigner signer, {bool private = false}) Future<Nip51List>
broadcastAddNip51ListRelay(int kind, String relayUrl, Iterable<String> broadcastRelays, EventSigner signer, {bool private = false}) Future<Nip51List>
broadcastAddNip51SetRelay(String relayUrl, String name, Iterable<String> broadcastRelays, EventSigner signer, {bool private = false}) Future<Nip51Set>
broadcastAddNip65Relay(String relayUrl, ReadWriteMarker marker, Iterable<String> broadcastRelays, EventSigner signer) Future<UserRelayList>
broadcastDeletion(String eventId, Iterable<String> relays, EventSigner signer) Future<Nip01Event>
broadcastEvent(Nip01Event event, Iterable<String> relays, EventSigner signer) Future<void>
broadcastMetadata(Metadata metadata, Iterable<String> broadcastRelays, EventSigner signer) Future<Metadata>
broadcastReaction(String eventId, Iterable<String> relays, EventSigner signer, {String reaction = "+"}) Future<Nip01Event>
broadcastRemoveContact(String toRemove, Iterable<String> relays, EventSigner signer) Future<ContactList?>
broadcastRemoveFollowedCommunity(String toRemove, Iterable<String> relays, EventSigner signer) Future<ContactList?>
broadcastRemoveFollowedEvent(String toRemove, Iterable<String> relays, EventSigner signer) Future<ContactList?>
broadcastRemoveFollowedTag(String toRemove, Iterable<String> relays, EventSigner signer) Future<ContactList?>
broadcastRemoveNip51ListElement(int kind, String tag, String value, Iterable<String> broadcastRelays, EventSigner signer) Future<Nip51List?>
broadcastRemoveNip51Relay(int kind, String relayUrl, Iterable<String> broadcastRelays, EventSigner signer, {List<String>? defaultRelaysIfEmpty}) Future<Nip51List?>
broadcastRemoveNip51SetRelay(String relayUrl, String name, Iterable<String> broadcastRelays, EventSigner signer, {List<String>? defaultRelaysIfEmpty, bool private = false}) Future<Nip51Set?>
broadcastRemoveNip65Relay(String relayUrl, Iterable<String> broadcastRelays, EventSigner signer) Future<UserRelayList?>
broadcastSignedEvent(Nip01Event event, String url) Future<void>
broadcastUpdateNip65RelayMarker(String relayUrl, ReadWriteMarker marker, Iterable<String> broadcastRelays, EventSigner signer) Future<UserRelayList?>
calculateRelaySet({required String name, required String ownerPubKey, required List<String> pubKeys, required RelayDirection direction, required int relayMinCountPerPubKey, dynamic onProgress(String, int, int)?}) Future<RelaySet>
relay -> list of pubKey mappings
closeAllSockets() Future<void>
closeNostrRequest(NostrRequest request) Future<void>
closeNostrRequestById(String id) Future<void>
closeSocket(dynamic url) Future<void>
connect({Iterable<String> urls = DEFAULT_BOOTSTRAP_RELAYS}) Future<void>
This will initialize the manager with bootstrap relays. If you don't give any, will use some predefined
connectRelay(String dirtyUrl, {int connectTimeout = DEFAULT_WEB_SOCKET_CONNECT_TIMEOUT}) Future<bool>
Connect a new relay
doNostrRequest(NostrRequest nostrRequest, Filter filter, RelaySet relaySet, {bool splitRequestsByPubKeyMappings = true}) Future<NostrRequest>
doRequest(String id, RelayRequest request) bool
ensureUpToDateContactListOrEmpty(EventSigner signer) Future<ContactList>
ensureUpToDateUserRelayList(EventSigner signer) Future<UserRelayList?>
filterEvent(Nip01Event event) bool
getCachedNip51List(int kind, EventSigner signer) Future<Nip51List?>
getCachedNip51RelaySet(String name, EventSigner signer) Future<Nip51Set?>
getConnectedRelays(Iterable<String> urls) List<Relay>
getNip51RelaySets(int kind, EventSigner signer, {bool forceRefresh = false}) Future<List<Nip51Set>?>
getRelay(String url) Relay?
getRelayInfo(String url) Future<RelayInfo?>
getRelaySet(String name, String pubKey) RelaySet?
getSingleMetadata(String pubKey, {bool forceRefresh = false, int idleTimeout = DEFAULT_STREAM_IDLE_TIMEOUT}) Future<Metadata?>
getSingleMetadataEvent(EventSigner signer) Future<Nip01Event?>
getSingleNip51List(int kind, EventSigner signer, {bool forceRefresh = false, int timeout = 5}) Future<Nip51List?>
getSingleNip51RelaySet(String name, EventSigner signer, {bool forceRefresh = false}) Future<Nip51Set?>
getSingleUserRelayList(String pubKey, {bool forceRefresh = false}) Future<UserRelayList?>
isRelayConnected(String url) bool
isRelayConnecting(String url) bool
isWebSocketOpen(String url) bool
loadContactList(String pubKey, {bool forceRefresh = false, int idleTimeout = DEFAULT_STREAM_IDLE_TIMEOUT}) Future<ContactList?>
loadMissingMetadatas(List<String> pubKeys, RelaySet relaySet, {bool splitRequestsByPubKeyMappings = true, dynamic onLoad(Metadata)?}) Future<List<Metadata>>
loadMissingRelayListsFromNip65OrNip02(List<String> pubKeys, {dynamic onProgress(String stepName, int count, int total)?, bool forceRefresh = false}) Future<void>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
query(Filter filter, RelaySet relaySet, {int idleTimeout = DEFAULT_STREAM_IDLE_TIMEOUT, bool splitRequestsByPubKeyMappings = true}) Future<NostrRequest>
reconnectRelay(String url, {bool force = false}) Future<bool>
reconnectRelays(Iterable<String> urls) Future<void>
requestRelays(Iterable<String> urls, Filter filter, {int timeout = DEFAULT_STREAM_IDLE_TIMEOUT, bool closeOnEOSE = true, dynamic onTimeout()?}) Future<NostrRequest>
saveRelaySet(RelaySet relaySet) Future<void>
send(String url, dynamic data) → void
startListeningToSocket(String url) → void
subscription(Filter filter, RelaySet relaySet, {bool splitRequestsByPubKeyMappings = true}) Future<NostrRequest>
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited