nostr:npub1y3rzjvyzrdzl2v8vqp37eg9x2gh954mc2muc9755fhcw7090qw4s9yyq9d 我用jumble 回复帖子,发现帖子能发到用户的relay上面,所以你的客户端讲用户的relay 添加到了relaypool里面了? 昨天我们讨论的 outbox,是否可以继续研究,将用户的relays 放在 tags[ "p":pubkey , relays,] 这样如果客户端都这么做,就可以顺腾摸瓜了。

Reply to this note

Please Login to reply.

Discussion

jumble 是实现了 outbox model 的,nostr-tools 内部维护了一个 relay pool。只是目前没有地方可以设置 relay 列表🤣 已经在写了,因为现阶段主要是给 nostr 老用户体验做测试,所以这个优先级没那么高,大部份老用户在其他客户端已经设置了这个列表。

协议里 p, e 两个 tag 的格式第三位确实是 relay,但不是数组。这个 jumble 没有实现,因为我觉得不是很有必要。因为只有一个 relay 地址,客户端不好判断该替用户选择哪个,万一发出去了用户不用这个 relay 了呢。我倾向于大家都将 10002 事件发送到几个大的公共 relay 上,客户端只需要连接一两个大 relay,就能快速获取各个用户的 relay 列表

我觉得,你把 用的profile或者作者的10002的relay放在 tag里就可以,至于这个是否其作用。那就不用关心了。只要client都这么干。用户的relay总会被找到。

添加也是有成本的呀🌝 既然都需要 client 合作实现,那都将 10002 发到大 relay 不是更好吗?获取也更高效

有用啊,例如 e 标签,填这个 event 你从哪里获得,还有第 5 位,填 pubkey。

没有这个中继地址,有时候会找不到这个 event。

不过感觉很多客户端都不会去使用这个值,毕竟大家都没有填。

e tag 的 pubkey 比 relay 有意义,我是觉得单填一个 relay 地址意义不大

e tag 大部份客户端没加 relay 的原因我猜是记录每条 event 是从哪个 relay 获取的这件事很麻烦,至少目前 js 的 sdk 不好追踪。而如果是将作者的任意一个 10002 中的 relay 填进去又可能是错的,事件不一定都发往了他所有的 10002 relay