Get group message readers
Query paginated lists of group members who have read or not read a specific message.
Tracking member-level group read status is a Commercial Edition capability. Query group members who have either read or not read a specific message using pagination.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
conversationID | string | Yes | Target group conversation ID. |
clientMsgID | string | Yes | The clientMsgID of the message being queried. |
filter | OpenIMGroupMessageReaderFilter | Yes | Use OpenIMGroupMessageReaderFilterRead for readers, or OpenIMGroupMessageReaderFilterUnread for unread members. |
offset | number | Yes | Pagination offset; supply 0 for the first page. |
count | number | Yes | Maximum number of members to fetch in this page. |
Code example
import {
OpenIMGroupMessageReaderFilterRead,
getGroupMessageReaderList,
} from '@/uni_modules/unix-openim-sdk'
const clientMsgID = message.clientMsgID
if (clientMsgID == null) return
const result = await getGroupMessageReaderList({
conversationID,
clientMsgID,
filter: OpenIMGroupMessageReaderFilterRead,
offset: 0,
count: 50,
})
const readers = result?.readers ?? []Return value
The Promise resolves with an OpenIMGetGroupMessageReaderListResult | null object. Retrieved member records are available in readers (OpenIMGroupMemberItem[]). Deduplicate and merge members using groupID:userID. When the returned array contains fewer items than count, the end of the member list has been reached.
State changes after the call
This call retrieves a point-in-time snapshot and does not emit receipt events. To stay updated with incoming read receipts, listen to the read receipt events documented in Send group read receipts.
Was this page helpful?