nextcloud / nextcloud/talk-android
Messages are marked as read even though the message has not been read
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 739
- Forks
- 321
- Avg merge
- 14h 59m
- Merged PRs (30d)
- 151
Description
Steps to reproduce
- User A sends a message to User B
- User B has Talk installed on Android, app is not open
- Push notification arrives on User B's device
- Message is immediately marked as read for User A, without User B opening the chat
Expected behaviour
Messages should not instantly be marked as read
Actual behaviour
Messages sent to an user with android are instantly marked as read, even though the User receiving the message is offline and the app is not open.
Device brand and model
Samsung s24
Android version
Unknown
Nextcloud Talk app version
23.0.1
Nextcloud server version
34.0.0.12
Talk version
No response
Custom Signaling server configured
Yes (specify version in Additional Information)
Custom TURN server configured
Yes
Custom STUN server configured
None
Android logs
No response
Server log
{"user":"audi","method":"GET","url":"/ocs/v2.php/apps/spreed/api/v1/chat/h92fgma6?lastKnownMessageId=57708&setReadMarker=1&timeout=30&lookIntoFuture=1","userAgent":"Mozilla/5.0 (Android) Nextcloud-Talk v23.0.1"}
Additional information
The Android app polls with setReadMarker=1 during background activity triggered by push notifications. The user appears offline simultaneously (no active HPB/WebSocket session), confirming the app is not in the foreground. Background polls should use setReadMarker=0.
High performance backend version: 2.1.1~docker
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the Android background activity triggered by push notifications and the poll request shown in the issue, including its setReadMarker parameter. Verify that background polling does not mark messages read while the app is closed, and confirm that messages are still marked read when the user actually opens the chat.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100