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

feat(Room): Check if the user is allowed to do a room mention before trying to send a call notify event. #4271

Merged
merged 2 commits into from
Nov 18, 2024

Conversation

toger5
Copy link
Contributor

@toger5 toger5 commented Nov 15, 2024

  • Public API changes documented in changelogs (optional)

Signed-off-by:

Copy link

codecov bot commented Nov 15, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 85.05%. Comparing base (cefd5a2) to head (4f52929).
Report is 7 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4271      +/-   ##
==========================================
+ Coverage   85.00%   85.05%   +0.04%     
==========================================
  Files         274      274              
  Lines       29945    29949       +4     
==========================================
+ Hits        25456    25474      +18     
+ Misses       4489     4475      -14     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@toger5 toger5 marked this pull request as ready for review November 15, 2024 15:17
@toger5 toger5 requested a review from a team as a code owner November 15, 2024 15:17
@toger5 toger5 requested review from stefanceriu and removed request for a team November 15, 2024 15:17
Comment on lines +2978 to +2981
if !self.can_user_trigger_room_notification(self.own_user_id()).await? {
return Ok(());
}

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a description on the PR as to why this change is needed and more importantly why not still send the call notification but without Mentions::with_room_mention?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At the moment we just do not need it. All clients would just ignore a non mention notify event.
But your question makes me think. We could say we still want to send it.
We do use the notify event for the timeline rendering atm. But this really is not what it is supposed to be used for.
Those are really ephemeral events (but we do not have custom ephemeral events).
So sending them if no client reacts to them is just unnecassary.

The question is if we might want to introduce more complexity and allow ringing in rooms that do have all messages notification settings to still ring even though a user sends a "non mention" ring event...

Which is sth I like:

  • A non mention notify will only ring for users that set the room to "all messages"
  • A mention notify will ring for all mentioned users.

So both sides have some control.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So basically we need a lot of UX discussions (also about when to ring and when to just notify)
This is an okay addition to what we have now before we converge on a general behaviour we want for all combinations of this:

  • ring, notify
  • mention, non mention

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, fair enough 👍

@stefanceriu stefanceriu merged commit 21bb85a into main Nov 18, 2024
76 checks passed
@stefanceriu stefanceriu deleted the toger5/dont-send-call-notify-if-not-allowed branch November 18, 2024 14:15
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

Successfully merging this pull request may close these issues.

2 participants