Here: #[0]

(Not the final version anyway)

I also found the terminology a bit confusing at first too. Maybe "inbox/outbox" can work better, but I don't see a big difference in the end, each term is a bridge to "read/write" which is the actual actions.

Reply to this note

Please Login to reply.

Discussion

I use inbox and outbox terminology in my code. There can be additional logic that wraps before or after. Publish and query could also work perhaps.

Basically it’s a middleware pattern - which I think makes the most sense long term.

Still have a dumb pool of relays you keep connected to, however you can still connect to a relay on demand (e.g a DM in outbox could run a function to pick which relays to attempt publishing to).

You then need to consider failures to send, or outages, or some M/N OK result threshold to keep trying until that’s happy.

And if your eager in a client app, you could self-throttle push listing events - however you shouldn’t really hit limits as a human.