To keep the most up-to-date and accurate read status of messages for all group channel members, the
markAsRead() method should be called every time one of the members reads messages by entering the channel from a channel list or bringing the chat view to the foreground.
For the member who sent the message to the channel, the Sendbird server updates the member's read receipt to the time when the message was sent. The read receipts of other channel members are updated when the
markAsRead() method is called.
If a member opens a channel and
markAsReadAll() is called, the Sendbird server updates both the unread message count of the individual channel and the total unread message count of all the group channels joined by the member. The server then triggers the
onUnreadMemberCountUpdated() method in the channel event handler to notify the change of read status to all other members' devices.
If a new member joins the channel, the method works differently based on the value of the
display_past_message property of your Sendbird application. If the property is set to
true, the new member’s read receipt is updated to the sent time of the last message in the channel. If set to
false, the property's value is
display_past_messageproperty determines whether to display past messages to newly joined members when they enter the channel. This property is also linked to the Chat history option, which can be managed on Sendbird Dashboard under Settings > Chat > Channels > Group channels.