discourse/plugins/chat
David Battersby 67d568f709
FIX: stuck notification for mentions within threads (#30546)
For mentions within threads, the mentioned user can experience a stuck notification. This is due to thread memberships only being created for users who interact with a thread. Without the membership we cannot track if the message containing the mention was read by the user.

The solution to this explored in this PR is:

- auto add memberships for mentioned users (only direct mentions for performance reasons).
- update channel/thread unread queries to check notification read status AND thread membership last read message id when counting mentions.

Previously the mention count would remain until the user notification (containing the mention) was read. However this only happens if the user clicks the notification or clicks dismiss all notifications. When a user navigated to the thread without clicking the notification, the green/urgent badge on chat would remain even after a hard page refresh.
2025-01-06 17:26:37 +04:00
..
admin/assets/javascripts DEV: Introduce <DPageHeader /> and <DPageSubheader /> components (#30146) 2024-12-18 08:13:39 +10:00
app FIX: stuck notification for mentions within threads (#30546) 2025-01-06 17:26:37 +04:00
assets FIX: stuck notification for mentions within threads (#30546) 2025-01-06 17:26:37 +04:00
config UX: Admin setting page consistency - Navigation (#30574) 2025-01-06 17:44:33 +11:00
db DEV: Make sure chat migration is in plugin directory (#29867) 2024-11-20 14:50:15 -07:00
lib FIX: add server-side limit for DM channels (#30300) 2024-12-16 18:36:29 +01:00
public
spec FIX: stuck notification for mentions within threads (#30546) 2025-01-06 17:26:37 +04:00
test/javascripts DEV: Run prettier correctly for bundled-plugin test directories (#30338) 2024-12-18 12:02:28 +00:00
plugin.rb FIX: better handle race condition when a channel is deleted (#30403) 2024-12-21 00:49:21 +01:00
README.md

This plugin is still in active development and may change frequently

Documentation

The Discourse Chat plugin adds chat functionality to your Discourse so it can natively support both long-form and short-form communication needs of your online community.

For user documentation, see Discourse Chat.

For developer documentation, see Discourse Documentation.