获取未读消息数
超级群业务支持从客户端 SDK 获取未读消息数,具体如下:
- 当前用户加入的所有超级群、指定超级群、或指定频道未读消息数。
- 当前用户加入的所有超级群、指定超级群、或指定频道的未读 @ 消息数。
返回的未读数最大值为 999。如果实际未读数超过 999,接口 仍返回 999。
获取所有会话的未读消息数
通过 getAllUltraGroupUnreadCount 获取当前用户加入的所有超级群会话的未读消息数的总和。
代码示例
RongIMLib.getAllUltraGroupUnreadCount().then((res) => {
if (res.code === 0) {
console.log(res.data)
} else {
console.log(res.code, res.msg)
}
})
获取所有会话的未读 @ 消息数
通过 getAllUltraGroupUnreadMentionedCount 获取当前用户加入的所有超级群会话中的未读 @ 消息数的总和。
代码示例
RongIMLib.getAllUltraGroupUnreadMentionedCount().then((res) => {
if (res.code === 0) {
console.log(res.data)
} else {
console.log(res.code, res.msg)
}
})
获取指定会话的未读消息数
通过 getUltraGroupUnreadCountByTargetId 获取当前用户在指定超级群会话中的未读消息数。
参数 | 类型 | 必填 | 说明 | 支持版本 |
---|---|---|---|---|
targetId | String | 是 | 超级群 ID | |
levels | NotificationLevel[] | 否 | 会话的免打扰级别设置。SDK 会根据该参数查找匹配的会话,并计算未读消息数。参考免打扰级别 。传空数组则统计全部免打扰级别会话中的未读数。 | 5.5.1 |
代码示例
const targetId = '超级群 ID'
RongIMLib.getUltraGroupUnreadCountByTargetId(targetId).then((res) => {
if (res.code === 0) {
console.log(res.data)
} else {
console.log(res.code, res.msg)
}
})
获取指定会话的未读 @ 消息数
通过 getUltraGroupUnreadMentionedCountByTargetId 获取当前用户在指定超级群会话中的未读 @ 消息数。
参数 | 类型 | 必填 | 说明 | 支持版本 |
---|---|---|---|---|
targetId | String | 是 | 超级群 ID | |
levels | NotificationLevel[] | 否 | 会话的免打扰级别设置。SDK 会根据该参数查找匹配的会话,并计算未读 @ 消息数。参考免打扰级别 。传空数组则统计全部免打扰级别会话中的全部未读 @ 消息数。 | 5.5.1 |
代码示例
const targetId = '超级群 ID'
RongIMLib.getUltraGroupUnreadMentionedCountByTargetId(targetId).then((res) => {
if (res.code === 0) {
console.log(res.data)
} else {
console.log(res.code, res.msg)
}
})
获取指定频道的未读消息数
通过 getUnreadCount 获取当前用户在超级群会话指定的频道中的未读消息数。注意,获取指定频道的未读消息数要求必须传入超级群频道 ID(channelId
)。
参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
targetId | String | 是 | 超级群 ID |
conversationType | Number | 是 | RongIMLib.ConversationType.ULTRA_GROUP 。会话类型,参考 ConversationType。 |
channelId | String | 否 | 超级群频道 ID |
代码示例
const conversationType = RongIMLib.ConversationType.ULTRA_GROUP
const targetId = '超级群 ID'
const channelId = '超级群频道 ID'
RongIMLib.getUnreadCount({ conversationType, targetId, channelId })
.then((res) => {
if (res.code === 0) {
console.log(res.code, res.data)
} else {
console.log(res.code, res.msg)
}
})
.catch((error) => {
console.log(error)
})
获取指定频道 @ 未读数
通过 getUnreadMentionedCount 获取当前用户在指定超级群会话指定频道的未读 @ 消息数。注意,获取指定频道的未读 @ 消息数要求必须传入超级群频道 ID(channelId
)
参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
targetId | String | 是 | 超级群 ID |
conversationType | Number | 是 | RongIMLib.ConversationType.ULTRA_GROUP 。会话类型,参考 ConversationType。 |
channelId | String | 否 | 超级群频道 ID。 |
代码示例
const conversationType = RongIMLib.ConversationType.ULTRA_GROUP
const targetId = '超级群 ID'
const channelId = '超级群频道 ID'
RongIMLib.getUnreadMentionedCount({ conversationType, targetId, channelId })
.then((res) => {
if (res.code === 0) {
console.log(res.code, res.data)
} else {
console.log(res.code, res.msg)
}
})
.catch((error) => {
console.log(error)
})