1-click relay services are an awesome idea.
What I would do:
- Make it accept events by only one pub key by default. This limits liability. Only events written by the author can be uploaded to the relay via websockets. Anyone can download them. No other events get in.
- Internally, that relay software connects with every other relay service in existence to download everything with a p
tag of the owner and make it available for anyone trying to get info from this author.
- Once we have a Gossip model, each client then pings only every person's own upload relay to download their messages. On DMs, for instance, only 2 relays are used, one of each author.
Boom. Easy decentralization.