Mastodon: Application-for-invite

Created on 21 Mar 2018  路  9Comments  路  Source: tootsuite/mastodon

The invite system added in 2.1.0 was a great way for instances that intend to mitigate abuse to filter out registrants without opening registration. It gets them part of the way to a cohesive system, but it could be taken further. Some admins add a Google Form or some other type of form for applicants to fill out for filtering potential users. It would help these instances greatly to provide this functionality "in-house" so to speak.

An important reason for this is the way these instances are reported to other services like instances.social - either they're closed, or they're open. This isn't accurate for the aforementioned instances, because while they appear closed according to the configuration, they provide invites for users that pass their filtering process. This is different from personal or organizational instances where all given instances are in a group of friends or colleagues. It doesn't require selection or prior knowledge of the person, and it is not a position to be filled. Providing application-for-invite will enable these instances with robust means to filter applicants (before they are users and can cause any violation of ToS or CoC) and remain "open" for the generalist potential user.

This is evidently more of a general idea, but one that I think could definitely benefit instances by more accurately delineating themselves as "open" or filtered. It would also provide instance owners or administrators with the means to filter new potential users without relying on a third party service. I am interested in discussing of this feature.


  • [x] I searched or browsed the repo鈥檚 other issues to ensure this is not a duplicate.
suggestion

Most helpful comment

Perhaps a "Request an invite" button would lead to a text-form, and generate an admin and/or mod notification, then? I think it might get too complex to include multiple boxes and a lot of rich survey features, though.

All 9 comments

It would be great if there was a third option aside from "open for registrations from anyone" and "closed to all", I agree! Like, I run a Minecraft server that has a whitelist and we have a google form for whitelist applications. Some people say when they sign up that they were actively looking for a server that had a whitelist, because it makes for a different social environment. And then if it was a thing on the instance picker(s), people could choose "I want somewhere I can sign up immediately" or "I want somewhere that requires a human's approval for new registrations", which is for a lot of people a helpful search preference.

What's stopping any admin from simply using Google Forms/etc already? They can include it as a custom message for closed registrations.

@trwnh They can and they do. Instances like slime.global, kitty.town, and cybr.es (my own) ask that the user get in contact with the admin or provide a form through Google Forms or the like to sign up. This brings up a couple of issues.

First is that it makes the instance hard to discover through common channels like instances.social, because they simply appear as "closed" instances even though anyone can apply. (This I explained more in-depth in the OP.) Also, if you look at all of the instances I mentioned above, only one of them uses actual forms. The rest just say basically, "get in contact with the admin." This is very unwelcoming - trying to justify joining an instance with only the description and CoC (which some might not even bother to read) to go off of evidently greatly reduces turnover rate. Simply said, an official (first-party) application process would likely greatly improve turnover rate.

I feel that my own instance's registration numbers reflect this. In the three months my instance's registration was open, two people joined without my solicitation. In the past six months since it's been closed, no one has requested to join. Google Forms would probably help a little, but I think it still looks lazy, and I would have to check my Gmail account, which I don't use.

Secondly, it can make it inconvenient for admins to maintain, because it relies on a third party. You have to separately maintain access to the information from the forms with other admins and moderators. The inconveniences seem very minor but the benefits of implementing application-for-invite make it much more appealing: everything can be contained in Mastodon's moderation UI, the access control is automatically managed, and an audit log can be maintained of accepted and denied applications. It might remove some of the flexibility of other forms, but I think it would make Mastodon more dependable for admins of clubs or societies.

Perhaps a "Request an invite" button would lead to a text-form, and generate an admin and/or mod notification, then? I think it might get too complex to include multiple boxes and a lot of rich survey features, though.

The one I have on a wiki I set up is like "name, email address, the username you want, and here's a box to write in why you want to join." It's very simple and it's all built into the wiki and it helps a lot, because you just click a link that says "approve" and blammo, it does it all for you.

Evidently adding rich survey features would be a bit much, I agree. I don't think most Google Forms for applications do much more than plain Q/A text anyways. It shouldn't be too difficult to abstract multiple questions - it would be pretty easy to recurse and display the same Q/A box for the provided questions. I presume the hard part would be providing decent security and validation for it on the server end.

Apart from the questions, all that would be required by the server is an email field, and would make sure the email is not in use and hasn't been rejected previously. Everything else is handled by the invite.

I just want to step in here for a second as the admin of an instance mentioned above, cybre.space, and clarify that our current policy is that you should reach out to any existing community member you may know, and request an invitation that way. We would not be interested in adding an application for invite system and do not recommend that you reach out to the admins for an invite if you don't already know them.

Now, with my mastodon maintainer hat I can definitely agree that as a general feature, this could be pretty useful.

There was a PR that proposed adding a similar feature, however unfortunately it slipped through the cracks and the author is no longer around: https://github.com/tootsuite/mastodon/pull/5141

I don't know if it's the most ideal way of moving forward here though鈥攚e would have to carefully think through the semantics of open/closed/ask-for-registration systems and how it intersects with invites, and it might be that we need to combine the two features somehow to reduce complexity

My apologies for including you without asking first - I removed you from the mentioned comment :)

Personally, I think that the two systems could/should co-exist, based on different use cases. For instance, in your case, you want registration closed, without application, and only allow new users who have a personal connection (which fits the invites use case). Creating a separate solution for each use case could definitely increase the complexity, especially if this feature is used on as many as 5% of existing instances. I definitely think invites are very valuable for all closed instances, in any case.

I don't know enough of the existing code at the moment to know about the current technical complexity. No time like the present to learn, I suppose.

In the interest of low complexity, we could simply have an option for 'Request for Invite' with a link to an external form. It would help the visibility of those instances, but it certainly wouldn't help with the auditing or convenience factors.

Was this page helpful?
0 / 5 - 0 ratings