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

Display why an event caused a (highlight) notification #24927

Closed
clokep opened this issue Mar 24, 2023 · 15 comments
Closed

Display why an event caused a (highlight) notification #24927

clokep opened this issue Mar 24, 2023 · 15 comments

Comments

@clokep
Copy link

clokep commented Mar 24, 2023

Currently users may not understand why a particular event caused a highlight notification and is colored red. This can be confusing if e.g. the user configured a keyword that they forgot about (see also #8821).

Although this problem exists today, MSC3952 may make it slightly worse as a user can be "CCed" onto a message without actually being mentioned (having a pill) in the text content of the message. It maybe useful to surface:

  • Why this caused a notification: "The user explicitly mentioned you."
  • A quick action to take if this was abusive: "Block this user? Report this user?"
  • Other users which are CCed.

This would benefit from some design help. 😄

The MSC includes some information about abuse potential and ways to combat it.

@daniellekirkwood
Copy link
Contributor

How would a user be mentioned without having a pill in the message?

👀 @clokep & @kerryarchibald ?

@t3chguy
Copy link
Member

t3chguy commented Mar 30, 2023

Keywords or the message event can include the MXID in the intentional mentions part but there's no pill matching the mention in the text, server can't validate it due to encryption

@clokep
Copy link
Author

clokep commented Mar 30, 2023

the message event can include the MXID in the intentional mentions part but there's no pill matching the mention in the text, server can't validate it due to encryption

Yeah, this 100%, except there isn't anything to validate -- this is a completely valid thing to do according to the MSC. You can do something similar in today's mentions system, it is just harder.

@daniellekirkwood
Copy link
Contributor

daniellekirkwood commented Mar 30, 2023

How would a user send that message? (not keywords, a mention that's not a mention)

@t3chguy
Copy link
Member

t3chguy commented Mar 30, 2023

Devtools, API, or a non Element client

@kerryarchibald
Copy link
Contributor

Made a very quick experiment adding a tooltip:
Screenshot 2023-04-05 at 17 24 47
Screenshot 2023-04-05 at 17 24 29

This takes the matched push rule and attaches it to the event at the same points as event.pushActions are set. Notifications from the server are reprocessed to find the rule match on the client (for now).

I'm less sure about the pills approach from the design - to me pills imply an entity/clickability, and for keywords there is none. Push processing also only matches one rule, so a message containing multiple keywords, or an @mention plus a keyword would only pillify one thing.
Screenshot 2023-04-05 at 17 41 19

@daniellekirkwood
Copy link
Contributor

I'm less sure about the pills approach from the design - to me pills imply an entity/clickability, and for keywords there is none. Push processing also only matches one rule, so a message containing multiple keywords, or an @mention plus a keyword would only pillify one thing.

That's really good to know. @janogarcia FYI as I think you're likely to start thinking about how we handle keywords in the timeline in the future

As to the tool tip - I think it looks great. Paging @rufuskahler who's been working with us on this

@clokep
Copy link
Author

clokep commented Apr 5, 2023

Made a very quick experiment adding a tooltip:

Just wanted to say that this looks awesome and was what I was naively thinking! 👍

@kerryarchibald
Copy link
Contributor

Drafted MSC here matrix-org/matrix-spec-proposals#3994

@kerryarchibald
Copy link
Contributor

Another quick sketch is to put it in the message action bar:
Screenshot 2023-04-06 at 17 16 08

Which could then open a modal with anti-abuse or notification management options
Screenshot 2023-04-06 at 17 18 24

@daniellekirkwood
Copy link
Contributor

I'm really digging that idea!

@Johennes
Copy link
Contributor

Johennes commented May 9, 2023

The message action bar approach was rejected in design review: matrix-org/matrix-react-sdk#10599 (comment)

I have my doubts about using the action bar for the reasons Danielle mentioned. Furthermore, I'd like to discuss other ways of solving the problem closer to the root cause, e.g with Compound, we're moving away from red highlighted text for notifications. [...] This sounds like more consensus is needed between Product & Design.

We're in a slightly weird spot now because matrix-org/matrix-js-sdk#3284 was already merged. We need to figure out where to go from here.

@Johennes
Copy link
Contributor

I suggest that we do not revert the JS SDK change. It's not excessively big, has test coverage and will be needed once we pick this issue back up.

@kerryarchibald / @andybalaam happy to be vetoed if you disagree.

@andybalaam
Copy link
Member

Yep, annotating the event with what caused a notification seems helpful to other users of js-sdk, so no need to revert it.

@gaelledel
Copy link

We are currently re exploring how mentions get displayed in the leftpannel and this may have some repercussion to clarify things in the timeline too. Regarding keywords, it is expected that users know what keyword that have entered in their settings and make the link with the result in the notifications and pills. Unfortunately, it is not possible to make all information visible at first glance for a variety of reasons and users should rely on their own configurations especially for things like setting up specific keywords.

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

Successfully merging a pull request may close this issue.

8 participants