Moderating users by matching strings in their usernames or emoji #178

Open
opened 2025-02-05 20:52:18 +09:00 by naskya · 4 comments
Owner

What type of feature is this?

  • label: Server
  • label: Client
  • label: Feature

What feature would you like implemented?

A user would like to moderate (mute or block) users by their username and/or user emoji.

Why should we add this feature?

In a hypothetical scenario, a user is deeply incapable of talking to anyone called "Benny". Any one with that name, they would like to mute.

Alternatively, a user feel extremely upset every time they see the 💩 emoji, and would like to ensure that no user with that emoji flare appears on their timeline.

Version

v20240729

Instance

any instance

Contribution Guidelines

By submitting this issue, you agree to follow our Contribution Guidelines

  • I agree to follow this project's Contribution Guidelines
  • I have searched the issue tracker for similar requests, and this is not a duplicate.
    Apologies if this is a dupe, after several tries, none of my keywords landed a match

Are you willing to implement this feature? (optional)

  • Yes, I will open a merge request that closes this ticket.

I propose to find the user blocks code and adapt it to match on regexp by name, or by emoji. might be non-trivial to bring in the emoji code, but we'll see when we see.

<!-- This issue template is for feature requests. There are other issue templates for bug reports, refactor proposals, and discussions, so please use them if this is not a feature request. Also, you don't need to prefix the issue title with "Feature:", because it's managed by issue labels. --> <!-- 💖 Thanks for taking the time to fill out this feature request! 💁 Having trouble with deployment? [Ask the support chat.](https://matrix.to/#/#firefish-community:nitro.chat) 🔒 Found a security vulnerability? [Please disclose it responsibly.](https://firefish.dev/firefish/firefish/-/blob/develop/SECURITY.md) 🤝 By submitting this refactor proposal, you agree to follow our [Contribution Guidelines.](https://firefish.dev/firefish/firefish/-/blob/develop/CONTRIBUTING.md) --> ## What type of feature is this? <!-- If this happens on your device and has to do with the user interface, it's client-side. If this happens on either with the API or the backend, or you got a server-side error in the client, it's server-side. --> <!-- Uncomment (remove surrounding arrow signs) the following line(s) to specify the category of this issue. --> * label: Server * label: Client <!-- * label: Mobile --> <!-- * label: Third-party-client --> <!-- * label: Docs --> <!-- * label: Locale --> <!-- * label: Build from source --> <!-- * label: Container --> <!-- * label: Firefish API --> <!-- * label: Mastodon API --> <!-- Please do not edit the next line --> * label: Feature ## What feature would you like implemented? A user would like to moderate (mute or block) users by their username and/or user emoji. ## Why should we add this feature? In a hypothetical scenario, a user is deeply incapable of talking to anyone called "Benny". Any one with that name, they would like to mute. Alternatively, a user feel extremely upset every time they see the :poop: emoji, and would like to ensure that no user with that emoji flare appears on their timeline. ## Version <!-- What version of firefish is your instance running? You can find this by clicking your instance's logo at the bottom left and then clicking instance information. --> v20240729 ## Instance any instance ## Contribution Guidelines By submitting this issue, you agree to follow our [Contribution Guidelines](https://firefish.dev/firefish/firefish/-/blob/develop/CONTRIBUTING.md) - [x] I agree to follow this project's Contribution Guidelines - [x] I have searched the issue tracker for similar requests, and this is not a duplicate. Apologies if this is a dupe, after several tries, none of my keywords landed a match ## Are you willing to implement this feature? (optional) - [x] Yes, I will open a merge request that closes this ticket. <!-- Please tell us how to implement this feature. As noted in the contribution guidelines, there is a good chance that your merge request will not be merged if there is no agreement with the project maintainers. However, we are currently so understaffed that it is virtually impossible to respond to every single proposal. So, feel free to implement it if there is no response for more than a week or there is a thumbs-up emoji reaction from the project maintainer(s). Many thanks for your involvement! --> I propose to find the user blocks code and adapt it to match on regexp by name, or by emoji. might be non-trivial to bring in the emoji code, but we'll see when we see.
Author
Owner

Author: Benny Powers

mentioned in merge request !11252

*Author: Benny Powers* mentioned in merge request !11252
Author
Owner

Author: naskya

Do you think it's worth separating the keyword and username mutes?

I’m not opposed to separating them, but I personally don’t see the benefit of doing so. (but perhaps I’m not imaginative enough)

*Author: naskya* > Do you think it's worth separating the keyword and username mutes? I’m not opposed to separating them, but I personally don’t see the benefit of doing so. (but perhaps I’m not imaginative enough)
Author
Owner

Author: Benny Powers

yeah we can start with a soft mute, but eventually hard would be helpful. so i'm happy to do the first-step client-side soft-mute pr, but i believe the feature is still useful for hard blocks/mutes, once the backend refactor makes that feasible

Do you think it's worth separating the keyword and username mutes?

*Author: Benny Powers* yeah we can start with a soft mute, but eventually hard would be helpful. so i'm happy to do the first-step client-side soft-mute pr, but i believe the feature is still useful for hard blocks/mutes, once the backend refactor makes that feasible Do you think it's worth separating the keyword and username mutes?
Author
Owner

Author: naskya

Some custom emojis (like ablobcathyper) can cause PSE due to their violent flickering, so I can imagine the use cases for this feature.

The UI should probably something like this? (under the word mute settings)

From a maintainer perspective, it would be helpful for us if this was only for soft mutes (i.e., a client feature), as we are currently refactoring the backend, and an automatic mute/unmute feature (when users change their username) in the backend would increase the codebase complexity and server load.

*Author: naskya* Some custom emojis (like `ablobcathyper`) can cause [PSE](https://en.wikipedia.org/wiki/Photosensitive_epilepsy) due to their violent flickering, so I can imagine the use cases for this feature. The UI should probably something like this? (under the word mute settings) From a maintainer perspective, it would be helpful for us if this was only for soft mutes (i.e., a client feature), as we are currently refactoring the backend, and an automatic mute/unmute feature (when users change their username) in the backend would increase the codebase complexity and server load. ![](/uploads/69e4c5f3de40492a1fbaae42f21800eb/2024-08-07-00_35_48.png)
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
naskya/test#178
No description provided.