RocketChat / RocketChat/Rocket.Chat

Email Notifications in Threads Sent to All Participants Instead of Only Tagged Users

Open
#35,211 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
46.1k
Forks
13.9k
Avg merge
3d 3h
Merged PRs (30d)
130

Description

Currently, when a user replies to a thread in Rocket.Chat, email notifications are sent to all users who have participated in that thread, even if they are not explicitly mentioned in the new message. This causes unnecessary email clutter and may lead to users receiving notifications that are not relevant to them.

Expected Behavior:
  • Email notifications should only be sent to users who are explicitly mentioned (@username) in the new reply.
  • Users who were previously part of the thread but are not tagged in the latest reply should not receive an email unless they have explicitly subscribed to the thread.
Current Behavior:
  • All users who have participated in the thread receive an email notification whenever a new message is posted in that thread, regardless of whether they are mentioned in that particular reply.
Steps to Reproduce:
  1. Create a new thread in Rocket.Chat and add multiple users.
  2. Post a reply and mention only one specific user using @username.
  3. Observe that all users in the thread receive an email notification instead of only the mentioned user.
Possible Fix:
  • Modify the email notification logic to check if the user is explicitly mentioned in the new message before sending an email.
  • Add a setting that allows users to opt in or out of receiving thread notifications even when not tagged.
Environment Details:
  • Rocket.Chat Version: [Specify the version]
  • Deployment Method: [Self-hosted / Cloud]
  • Operating System: [Linux / Windows / macOS]
Additional Context:

This behavior leads to unnecessary email clutter, especially in large teams where many users are involved in threads. Fixing this issue would improve user experience and reduce redundant email notifications.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file, test, or entry point is named. Start by locating Rocket.Chat's email notification logic for thread replies and how explicit mentions and thread subscriptions are represented. Done means untagged participants no longer receive these emails unless subscribed, while mentioned users do; add or update regression coverage for the behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.