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

Allow minimal ability to mute other users. #8040

Closed
showell opened this issue Jan 9, 2018 · 18 comments
Closed

Allow minimal ability to mute other users. #8040

showell opened this issue Jan 9, 2018 · 18 comments
Labels
area: settings (user) new feature A proposed new feature for the product priority: high

Comments

@showell
Copy link
Contributor

showell commented Jan 9, 2018

This is a repeat of #168, which is really old and has some discussion that may have gone a bit off the rails.

We occasionally get requests to be able to mute/block users.

We should try to figure out a very minimal foray into this feature. A simple V1 mute-user mechanism would only suppress unread counts and notifications for incoming PMs, and we wouldn't need to filter message feeds or anything like that, and we wouldn't need to address issue like notifying the other user that they're being muted, which might cause some community friction.

Note that we already have a way to deactivate users, so for situations where users aren't abiding by codes of conduct, there are already ways to deal with them.

The basic implementation for a V1 feature is this:

  • add a MutedUser model with fields user and muted_user
  • add a /mute_user endpoint
  • add menu options in JS
  • in the message-send path, set read flags and suppress notifications when the sender is muted_user in a relevant MutedUser row
@Kumar-Tarun
Copy link
Collaborator

@showell Can I work on this issue?

@showell
Copy link
Contributor Author

showell commented Jan 10, 2018

@Kumar-Tarun Yep, you can work on it. I would work on the backend pieces first:

  • add the database model
  • fix the message-send path to set "read" flags and suppress notifications

You'll want to be comfortable with writing good automated tests for the second bullet.

@Kumar-Tarun
Copy link
Collaborator

Since this is my first backend issue, I'll try my best to figure it out. Thanks @showell.

@Kumar-Tarun
Copy link
Collaborator

@zulipbot claim

@zulipbot
Copy link
Member

Hello @zulip/server-settings members, this issue was labeled with the area: settings (user) label, so you may want to check it out!

@showell
Copy link
Contributor Author

showell commented Jan 17, 2018

We are still deciding exactly what we want to do here. See discussion here:

https://chat.zulip.org/#narrow/stream/backend/subject/Difference.20between.20rawunread.20and.20unread/near/449605

@zulipbot
Copy link
Member

Hello @Kumar-Tarun, you claimed this issue to work on it, but this issue and any referenced pull requests haven't been updated for 10 days. Are you still working on this issue?

If so, please update this issue by leaving a comment on this issue to let me know that you're still working on it. Otherwise, I'll automatically remove you from this issue in 4 days.

If you've decided to work on something else, simply comment @zulipbot abandon so that someone else can claim it and continue from where you left off.

Thank you for your valuable contributions to Zulip!

@Kumar-Tarun
Copy link
Collaborator

I'm still working on this and will release a PR soon.

@zulipbot
Copy link
Member

zulipbot commented Feb 8, 2018

Hello @Kumar-Tarun, you have been unassigned from this issue because you have not updated this issue or any referenced pull requests for over 14 days.

You can reclaim this issue or claim any other issue by commenting @zulipbot claim on that issue.

Thanks for your contributions, and hope to see you again soon!

@FoggyFinder
Copy link

any news?

@alexreg
Copy link

alexreg commented Nov 29, 2019

Any update on this? It's quite disappointing not to have such a basic feature in Zulip still... it's kind of essential for interaction in any sizeable community (sadly).

@timabbott
Copy link
Sponsor Member

@alexreg @FoggyFinder there's significant work that's happened on this in #8318, which is very stale but I think could be adapted without too much trouble. It won't make the 2.1 release, but it's something we'll consider when planning priorities for 2.1.

@hackerkid this might be a good upcoming project for you. We should discuss strategy for whether to rebase or replace #8318 before starting work.

@luxaritas
Copy link

Is the ability for an administrator (or ideally, a "moderator" with limited capabilities?) to globally mute a user (perhaps for some limited period of time) in scope here? Is that worth another issue?

@timabbott
Copy link
Sponsor Member

Not for this, but it could be a follow-up. That said, I would expect many moderators/administrators to just deactivate the accounts of problematic users rather than globally muting them permanently.

@Gittenburg Gittenburg added the new feature A proposed new feature for the product label Jul 9, 2020
@abhijeetbodas2001
Copy link
Member

abhijeetbodas2001 commented Jan 16, 2021

Recently, the feature set for muted user was discussed on chat.zulip.org here
To summarize, on @showell `s recommendation, here's the rough plan for a V1. Say if Alice mutes Bob... (highest priority first)

  • When muting, any (pm/huddle/stream) unread messages from Bob will be marked as read immediately. Subsequent messages sent by Bob while being muted will automatically be marked as read and hence will not contribute towards notifications and unread counters.
  • For Alice, Bob won't appear in the right sidebar.
  • 1:1 PMs from/to Bob will be hidden everywhere (for example, in PMs narrow, in All messages view and in search narrows). Bob will not appear in the top left expanded list on clicking "Private messages"
  • Stream messages and huddle messages sent by Bob will appear in the same position as before, but will be tucked away under a "This message is hidden due to muting. Click to reveal" dialogue. Bob's name and profile picture will not be directly visible, but the timestamp of the message will be, to preserve context.
  • If someone quotes Bob's message, that too will be tucked like above. In V2 maybe we can decide if we want to hide only the quoted text instead of the entire message.

@alexreg
Copy link

alexreg commented Jan 16, 2021

@abhijeetbodas2001 Thanks, that all sounds very reasonable.

Regarding this future point:

In V2 maybe we can decide if we want to hide only the quoted text instead of the entire message.

It should probably be a preference setting.

@WesleyAC
Copy link
Contributor

WesleyAC commented Apr 20, 2021

I've made a design doc to consolidate thoughts on the exact UI/UX that this feature will have.

If you have opinions on what this should look like, feel free to comment, either in this issue, on that doc, or in the CZO thread!

@timabbott
Copy link
Sponsor Member

Closing as fixed in 67cd385.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: settings (user) new feature A proposed new feature for the product priority: high
Projects
None yet
Development

No branches or pull requests