I got around to reading the ActivityPub spec. and it's pretty nice! I'm wondering how implementations decide when to create a shared inbox. Seems like a potentially interesting algorithm.
@cwebber@octodon.social
@NicolasConstant @cwebber@octodon.social Sure, but in what circumstances would a shared inbox be created?
@NicolasConstant @cwebber@octodon.social
Thanks Nicolas, but I'm still not understanding something about the lifecycle of a shared inbox. I've probably got a bad assumption, so please help me.
Let's try an example. Suppose three users, A, B, and C on the same instance follow users D and E (on other instances like this:
* A follows D
* B follows E
* C follows D and E
Then A and C can use a shared inbox (for posts from D) and B and C can use another shared inbox (for posts from E), but it wouldn't be valid for A, B, and C to use a single shared inbox since A would then receive E's posts and B would then receive D's posts. Right?
At some point, someone or something has to decide when to create a shared inbox and it presumably has to satisfy the kind of constraints in the example above. Who or what creates a shared inbox and at what point?
@NicolasConstant @cwebber@octodon.social
Thanks, that's very helpful. I appreciate you taking the time to clarify things.
Just to finish off, please could you clarify how many shared inboxes there typically are in a given instance? I'm presuming one, which will be created automatically by the instance implementation and which will be added to (the endpoints mapping in) every Actor object transmitted from the instance.
It would be available by default (usually shared inbox are available for the whole instance).
For the discoverability part, Actors returns an URL for their inbox and an URL for their shared inbox (when available).