Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The Circle Plan #58

Open
mwild1 opened this issue Sep 2, 2021 · 3 comments
Open

The Circle Plan #58

mwild1 opened this issue Sep 2, 2021 · 3 comments

Comments

@mwild1
Copy link
Member

mwild1 commented Sep 2, 2021

In the beginning, there was a server, and everyone within the server saw each other.

Then, we implemented Circles, to allow multiple such groups of people within the same domain (separate your friends and family, etc.). To avoid major disruption, the transition to Circles was designed to keep the server operating exactly as before, for people who did not make any changes (such as creating new circles or modifying circle membership).

One thing we strongly want to avoid is a user being invited and having an empty contact list. As well as being a bad experience, such a scenario makes no sense for a Snikket server - which is designed with social relationships as a guiding principle.

For this reason we do not currently allow circle-less invitations.

That's the then and now. It was intended from the start that this circle-only design was just a first step, so now let's move on to the future.


New admin settings in web portal

  • Allow users to invite new users to join this Snikket instance

Required plumbing

Future
We want to be able to allow people to invite new users to circles as well. Within the app this can be an option in the menu of the circle's MUC.

@horazont
Copy link
Contributor

horazont commented Sep 2, 2021

We want to be able to allow people to invite new users to circles as well. Within the app this can be an option in the menu of the circle's MUC.

That should ideally somehow work across servers…

@distefam
Copy link
Contributor

distefam commented Sep 2, 2021

One thing we strongly want to avoid is a user being invited and having an empty contact list. As well as being a bad experience, such a scenario makes no sense for a Snikket server - which is designed with social relationships as a guiding principle.

The easiest way to avoid this I think would simply be to populate the invitee's contact list with the member who invited them as a contact. That is, of course, if the invite is not for inclusion in a specific circle in which case their contact list would be populated with everyone in that circle.

There could also be the "MySpace solution" where every invitee gets a specific user added to their contact list, which would likely be the admin but could also be a server preference (perhaps a [email protected] contact, for example) just as Tom was everyone's friend on MySpace. This could be in addition to the solution suggested above.

@distefam
Copy link
Contributor

distefam commented Sep 2, 2021

My use case, for what its worth is that circles have a very limited use case (not to say not useful at all). Primarily, for families or close-knit groups of people who want everyone to be mutual contacts. This generally means pretty small groups. MUCs, on the other hand, tend to have people in them who don't necessarily want everyone in that MUC in their contacs list.

Ideally, I'd be able to set an admin for individual circles. For example, just yesterday one of my friends (who is in my circle) asked me if he could get invites for his children, whom he wants to communicate with via Snikket. So, I created a circle for his family and gave him a group invite. That worked in this case but it would be nice for him to be able to invite other family members to that circle without my intervention.

So, the current setup of: every circle has a MUC but not every MUC has a circle works for me if circles can have admins and I can invite users to Snikket (maybe even to automatically join a specific MUC though that's not crucial) without membership in a circle.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants