mirror of
https://github.com/nbd-wtf/go-nostr.git
synced 2025-03-17 21:32:56 +01:00
QuerySync() relay method.
This commit is contained in:
parent
e8bc11e4f9
commit
0c39530d57
15
relay.go
15
relay.go
@ -222,6 +222,21 @@ func (r *Relay) Subscribe(filters Filters) *Subscription {
|
||||
return sub
|
||||
}
|
||||
|
||||
func (r *Relay) QuerySync(filter Filter, timeout time.Duration) []Event {
|
||||
sub := r.Subscribe(Filters{filter})
|
||||
var events []Event
|
||||
for {
|
||||
select {
|
||||
case evt := <-sub.Events:
|
||||
events = append(events, evt)
|
||||
case <-sub.EndOfStoredEvents:
|
||||
return events
|
||||
case <-time.After(timeout):
|
||||
return events
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (r *Relay) PrepareSubscription() *Subscription {
|
||||
random := make([]byte, 7)
|
||||
rand.Read(random)
|
||||
|
Loading…
x
Reference in New Issue
Block a user