-
Notifications
You must be signed in to change notification settings - Fork 394
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
MSC4005: Explicit read receipts for sent events #4005
base: main
Are you sure you want to change the base?
MSC4005: Explicit read receipts for sent events #4005
Conversation
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
12d5f8c
to
3f5f2e0
Compare
FYI, I'm going to take a shot at implementing this in Synapse over the next few weeks when I find some time. |
"where the user has read up to" is simplified to just a read receipt, where previously it was the | ||
greater value of the user's read receipt and their last sent event. If the event is "in a thread" | ||
(using the definition from [threaded read receipts](https://spec.matrix.org/v1.7/client-server-api/#threaded-read-receipts)) | ||
the generated read receipt should be a threaded read receipt. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I read this correctly, I think it is saying that if an event is in the main
timeline, the server should generate an unthreaded read receipt.
I think this would produce unexpected behaviour in a thread-aware client: if I send a message in the main timeline in my thread-aware client, I would not expect all unread threads to become read.
It's possible we need the client to tell the server whether the event it is sending is within the main
timeline in a threaded context, or in an unthreaded context.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While I agree this isn't ideal, I think it's no worse than the status quo today. I believe that for the purpose of calculating notification counts for example, the homeserver will clear notification counts from threads when a message is sent to the the main
timeline.
I agree with your thinking on how to solve it (clients need to declare their thread-awareness when sending a message somehow) but I also think this could be merged without tackling this problem.
See this thread here: #4005 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe that for the purpose of calculating notification counts for example, the homeserver will clear notification counts from threads when a message is sent to the the main timeline.
Given matrix-org/synapse#14837 I find this hard to believe
Rendered