some changes and fixes related to sub.Sub().

This commit is contained in:
fiatjaf 2022-05-04 12:34:12 -03:00
parent 5f3221e966
commit 1f1d3cfe7f
3 changed files with 14 additions and 4 deletions

View File

@ -7,7 +7,7 @@ import (
"strings"
)
func queryName(fullname string) string {
func QueryIdentifier(fullname string) string {
spl := strings.Split(fullname, "@")
if len(spl) != 2 {
return ""
@ -30,3 +30,11 @@ func queryName(fullname string) string {
pubkey, _ := result.Names[name]
return pubkey
}
func NormalizeIdentifier(fullname string) string {
if strings.HasPrefix(fullname, "_@") {
return fullname[2:]
}
return fullname
}

View File

@ -205,7 +205,7 @@ func (r *RelayPool) Sub(filters Filters) *Subscription {
random := make([]byte, 7)
rand.Read(random)
subscription := Subscription{filters: filters}
subscription := Subscription{}
subscription.channel = hex.EncodeToString(random)
subscription.relays = make(map[string]*Connection)
for relay, policy := range r.Relays {
@ -218,7 +218,7 @@ func (r *RelayPool) Sub(filters Filters) *Subscription {
subscription.UniqueEvents = make(chan Event)
r.subscriptions[subscription.channel] = &subscription
subscription.Sub()
subscription.Sub(filters)
return &subscription
}

View File

@ -35,7 +35,9 @@ func (subscription Subscription) Unsub() {
}
}
func (subscription Subscription) Sub() {
func (subscription *Subscription) Sub(filters Filters) {
subscription.filters = filters
for _, conn := range subscription.relays {
message := []interface{}{
"REQ",