Automatic category/community assignment on received object
-
I'm wondering how content on threadiverse is automatically assigned its community when received by the software (e.g. PieFed, Lemmy, Mbin).
The answer I am expecting is "if the community is addressed (
to
,cc
,audience
), then it is slotted into that community".However that causes issues for compatibility with microblogs... for example, [email protected] recently authored a post that mentioned
[[email protected]](https://community.nodebb.org/category/[email protected])
and it got slotted into that community on NodeBB, which isn't correct since that group is private.Better practice would be to only trust the addressed community if it is
Announce
'd by the community directly, but would fall short if my instance does not receive theAnnounce
(say, if nobody follows the community), in which case we'd fall back to "uncategorized", which is where all microblog posts currently go. Then it's neither correct nor incorrect, I suppose.I think this might be an issue where NodeBB tries to be too many things at once (microblog and threadiverse compatible).
-
I'm wondering how content on threadiverse is automatically assigned its community when received by the software (e.g. PieFed, Lemmy, Mbin).
The answer I am expecting is "if the community is addressed (
to
,cc
,audience
), then it is slotted into that community".However that causes issues for compatibility with microblogs... for example, [email protected] recently authored a post that mentioned
[[email protected]](https://community.nodebb.org/category/[email protected])
and it got slotted into that community on NodeBB, which isn't correct since that group is private.Better practice would be to only trust the addressed community if it is
Announce
'd by the community directly, but would fall short if my instance does not receive theAnnounce
(say, if nobody follows the community), in which case we'd fall back to "uncategorized", which is where all microblog posts currently go. Then it's neither correct nor incorrect, I suppose.I think this might be an issue where NodeBB tries to be too many things at once (microblog and threadiverse compatible).
I think it's important to get an
Announce
, because the actor who addressed the community might be blocked by that community, or might not be a member of it (if the community is private).
You can try to retrieve the outbox of the addressed community to verify that a post was actuallyAnnounce
'd -
I think it's important to get an
Announce
, because the actor who addressed the community might be blocked by that community, or might not be a member of it (if the community is private).
You can try to retrieve the outbox of the addressed community to verify that a post was actuallyAnnounce
'd[email protected] I thought about checking against the outbox, but there's a potential race condition that could occur if I receive the
Create(Note)
at roughly the same time as the community, but the community hasn't processed the activity yet. In that scenario, the activity would not be in the outbox for checking.The same thing would happen if there was some out-of-band check for object membership in a collection (not that there is one right now).
-
I'm wondering how content on threadiverse is automatically assigned its community when received by the software (e.g. PieFed, Lemmy, Mbin).
The answer I am expecting is "if the community is addressed (
to
,cc
,audience
), then it is slotted into that community".However that causes issues for compatibility with microblogs... for example, [email protected] recently authored a post that mentioned
[[email protected]](https://community.nodebb.org/category/[email protected])
and it got slotted into that community on NodeBB, which isn't correct since that group is private.Better practice would be to only trust the addressed community if it is
Announce
'd by the community directly, but would fall short if my instance does not receive theAnnounce
(say, if nobody follows the community), in which case we'd fall back to "uncategorized", which is where all microblog posts currently go. Then it's neither correct nor incorrect, I suppose.I think this might be an issue where NodeBB tries to be too many things at once (microblog and threadiverse compatible).
I still think it would be good to update the synchronization function in admin settings to automatically slot any synced community/category into the local category, even if the sync only goes one way (e.g. with Lemmy not being able to remote follow category actors).
-
I still think it would be good to update the synchronization function in admin settings to automatically slot any synced community/category into the local category, even if the sync only goes one way (e.g. with Lemmy not being able to remote follow category actors).
[email protected] it'll work better once cross-posting is built into NodeBB I think
-
@julian Does NodeBB support creating new topics by mentioning a group/category?
I wonder how
context
should be assigned in this case. -
@julian Does NodeBB support creating new topics by mentioning a group/category?
I wonder how
context
should be assigned in this case.[email protected] yes, it should. Mentioning the category means it will be addressed and NodeBB will slot the received content in the first group object it finds.
-
If I create a topic this way, I will be the owner of the
context
collection. But if the conversation is to be moderated, it should be owned by the group.Am I correct?
(there is a parallel discussion happening at https://codeberg.org/streams/streams/issues/229)
-
If I create a topic this way, I will be the owner of the
context
collection. But if the conversation is to be moderated, it should be owned by the group.Am I correct?
(there is a parallel discussion happening at https://codeberg.org/streams/streams/issues/229)
I suppose you're right in a way. The context owner is not supposed to be set by someone other than the context owner. It's a fallback mechanism intended for better compatibility with Mastodon.
When a group is addressed and it is one of the local NodeBB categories, it will assume control
If it is another group that it knows about but isn't same origin to the author, then no category is assumed.