registerRelayBroadcast method
use this to register your broadcast against a relay,
this is needed so the response from a relay can be tracked back
Implementation
void registerRelayBroadcast({
required String relayUrl,
required Nip01Event eventToPublish,
}) {
final broadcastState = globalState.inFlightBroadcasts[eventToPublish.id];
if (broadcastState == null) {
Logger.log.w(
"registerRelayBroadcast: no broadcast state for ${eventToPublish.id}");
return;
}
// Store the event for potential retries on auth-required
broadcastState.event ??= eventToPublish;
// new tracking
if (broadcastState.broadcasts[relayUrl] == null) {
broadcastState.broadcasts[relayUrl] = RelayBroadcastResponse(
relayUrl: relayUrl,
);
} else {
// do not overwrite
Logger.log.w(
"registerRelayBroadcast: relay broadcast already registered for ${eventToPublish.id} $relayUrl, skipping");
}
}