Email or username:

Password:

Forgot your password?
Top-level
Григорий Клюшников

Sebastian, groups are a fully completely solved problem at this point.

8 comments
Liaizon Wakest

@grishka @sl007 the standardization is not yet solved though and thats the harder part

Григорий Клюшников

˗ˏˋ wakest ˎˊ˗, my approach is to start with the UX and work my way down from there. I can never let the UX be driven by the underlying layers — users won't care about that. They'll see that things are wonky. They won't care that the underlying protocol is technically beautiful but restrictive in practice in ways that leak into the UX.

Pixelfed groups *should* be compatible with Smithereen, at least that's what @dansup@mastodon.social told me. I've never had the chance to test them myself.

Michael Vogel
@dansup @grishka How does this group implementation work in detail? Can Smithereen host groups? I really would like to test Friendica's group implementation against otrher implementations.
Григорий Клюшников

Michael, Smithereen groups aren't like Friendica groups from what I gather. Yes, of course Smithereen can host groups. The idea with Smithereen groups is that they're completely separate entities from your profile. You post straight into a group and your followers have no idea.

In short, for basic functionality to work:
- The actor must be of type "Group" or "Organization"
- It must implement a wall according to FEP-400e (https://codeberg.org/fediverse/fep/src/branch/main/feps/fep-400e.md), also see https://github.com/grishka/Smithereen/blob/master/FEDERATION.md

Group invitations are Invite{Group} activities, sent both to the recipient and to the group actor. You accept an invitation by simply joining the group (Join{Group} or Follow{Group}). You decline it by sending Reject{Invite{Group}} to the group actor. For now, one can only send group invitations to their friends (mutual follows). A group itself, via its admins, can cancel a pending invitation anytime by sending Undo{Invite{Group}} to the invitee.

Closed/private groups are much more complex. There are "actor tokens" and all that stuff I gotta document in detail sometime later, probably in that FEDERATION.md file.

For a group to show up as an event, it needs to have an Event object in its "attachment" field, preferably with start and end time. Oh and then there's also tentative membership... It's optional.

Michael, Smithereen groups aren't like Friendica groups from what I gather. Yes, of course Smithereen can host groups. The idea with Smithereen groups is that they're completely separate entities from your profile. You post straight into a group and your followers have no idea.

In short, for basic functionality to work:
- The actor must be of type "Group" or "Organization"
- It must implement a wall according to FEP-400e (https://codeberg.org/fediverse/fep/src/branch/main/feps/fep-400e.md), also see

Sebastian Lasse

@grishka

Tried to look it up.
Can't find an official extension in the W3C docs.
The last adopted is as:alsoKnownAs –
Is there anything written about it?

It is strange because 30 people talked about it together in May and June (groups by topics, relay groups, groups with roles and permissions, the “Describing Potential Actions” thing which was already diiscussed before AS2 etc.)
Also about Controlled Vocabularies for the context field.
Everyone has very different requirements for Groups, defining permissions and capabilities.

@liaizon

@grishka

Tried to look it up.
Can't find an official extension in the W3C docs.
The last adopted is as:alsoKnownAs –
Is there anything written about it?

It is strange because 30 people talked about it together in May and June (groups by topics, relay groups, groups with roles and permissions, the “Describing Potential Actions” thing which was already diiscussed before AS2 etc.)
Also about Controlled Vocabularies for the context field.
Everyone has very different requirements for Groups, defining permissions...

Григорий Клюшников

Sebastian, yes, because I spent that time actually writing real code instead of endlessly discussing theoretical all-encompassing specifications and never settling on anything. I wrote that code and it works — that's what matters. I will eventually document it.

Go Up