浏览 SDKs · React Native
SDKsReact Native

获取收到的入群申请

查询当前账号收到的入群申请。

复制

群主或管理员可以调用 getGroupApplicationListAsRecipient() 查询收到的入群申请。

const applications = await OpenIMSDK.getGroupApplicationListAsRecipient({
  groupIDs: ['group-001'],
  handleResults: [ApplicationHandleResult.Unprocessed],
  offset: 0,
  count: 20,
});

参数说明

参数类型是否必填说明
groupIDsstring[]要查询的群组 ID 数组;传空数组表示不按群组筛选。
handleResultsnumber[]要查询的申请处理结果;传空数组表示不按处理结果筛选。
offsetnumber分页偏移量,第一页传 0
countnumber本次读取的申请数量。

ApplicationHandleResult 的常用值如下:

枚举值数值含义
ApplicationHandleResult.Unprocessed0待处理。
ApplicationHandleResult.Agree1已同意。
ApplicationHandleResult.Reject-1已拒绝。

返回结果

调用完成后返回当前账号有权处理的 GroupApplicationItem[]

入群申请字段

字段类型说明
groupIDstring申请加入的群组 ID。
userIDstring申请人的用户 ID。
nicknamestring申请记录中的申请人昵称。
userFaceURLstring申请记录中的申请人头像地址。
reqMsgstring入群申请附言。
reqTimenumber申请时间。
joinSourceGroupJoinSource入群申请来源。
handleResultApplicationHandleResult当前处理结果。
handleUserIDstring处理申请的用户 ID。
handledMsgstring处理申请时填写的说明。
handledTimenumber处理时间。
groupNamestring申请记录中的群组名称。
groupFaceURLstring申请记录中的群组头像地址。
groupTypeGroupType群组类型。
ownerUserIDstring群主用户 ID。
creatorUserIDstring群组创建者用户 ID。
introductionstring申请记录中的群组简介。
notificationstring申请记录中的群组公告。
memberCountnumber申请记录中的群成员数量。
statusGroupStatus申请记录中的群组状态。
createTimenumber申请记录创建时间,Unix 毫秒时间戳。
exstring申请记录扩展字符串。

申请记录中的昵称、头像和群组资料以记录创建时的内容为准。需要展示最新资料时,分别查询当前用户资料或群组资料。

监听入群申请变化

新增、处理或删除入群申请时,分别触发 OnGroupApplicationAddedOnGroupApplicationAcceptedOnGroupApplicationRejectedOnGroupApplicationDeleted商业版。事件回调直接接收 GroupApplicationItem

const handleApplicationChanged = (application: GroupApplicationItem) => {
  // 按 groupID 和 userID 更新申请记录
};

const handleApplicationDeleted = (application: GroupApplicationItem) => {
  // 按 groupID 和 userID 删除申请记录
};

// 设置监听
OpenIMSDK.on(OpenIMEvent.OnGroupApplicationAdded, handleApplicationChanged);
OpenIMSDK.on(OpenIMEvent.OnGroupApplicationAccepted, handleApplicationChanged);
OpenIMSDK.on(OpenIMEvent.OnGroupApplicationRejected, handleApplicationChanged);
OpenIMSDK.on(OpenIMEvent.OnGroupApplicationDeleted, handleApplicationDeleted);

// 取消监听
OpenIMSDK.off(OpenIMEvent.OnGroupApplicationAdded, handleApplicationChanged);
OpenIMSDK.off(OpenIMEvent.OnGroupApplicationAccepted, handleApplicationChanged);
OpenIMSDK.off(OpenIMEvent.OnGroupApplicationRejected, handleApplicationChanged);
OpenIMSDK.off(OpenIMEvent.OnGroupApplicationDeleted, handleApplicationDeleted);

退出登录、切换账号或销毁申请列表状态时,取消这些监听。