浏览 SDKs · uni-app / uni-app x
平台
SDKsuni-app / uni-app x

查询已订阅用户状态

获取当前账号已订阅用户的在线状态。

复制

查询已订阅用户状态接口获取当前账号已经订阅的用户状态快照,不接收业务参数。

import { getSubscribeUsersStatus } from '@/uni_modules/unix-openim-sdk'

const result = await getSubscribeUsersStatus()
const states = result?.statuses ?? []

states.forEach((state) => {
  presenceByUserID.set(state.userID, state)
})

返回结果

Promise 成功后返回 OpenIMUserStatusListResult | null。非空结果的 statuses 是 OpenIMUserStatusItem[],每项包含 userID、汇总 status 和当前在线的 platformIDs;字段含义见订阅用户在线状态。

该查询返回调用时的状态,不会触发在线状态事件。目标用户尚未订阅时,应先通过订阅用户在线状态建立订阅;查询结果为空时,不要自行把未返回用户判定为离线,应先确认订阅是否建立成功。

首次进入页面、网络恢复或需要确认当前状态时可以重新查询。后续增量变化请参考订阅用户在线状态中的用户状态变更事件监听与处理。