From 2f08b72d694b7eec6d2ec3db413bdd0f3295186e Mon Sep 17 00:00:00 2001 From: Alen Date: Thu, 24 Oct 2024 23:00:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=BE=A4=E6=88=90=E5=91=98=E6=8B=89?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/core/apis/group.ts | 12 +++++++----- src/core/listeners/NodeIKernelGroupListener.ts | 3 ++- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/core/apis/group.ts b/src/core/apis/group.ts index abe83383..e67c9f9c 100644 --- a/src/core/apis/group.ts +++ b/src/core/apis/group.ts @@ -319,18 +319,20 @@ export class NTQQGroupApi { async tryGetGroupMembersV2(modeListener = false, groupQQ: string, num = 30, timeout = 500): Promise { const sceneId = this.context.session.getGroupService().createMemberListScene(groupQQ, 'groupMemberList_MainWindow_1'); const once = this.core.eventWrapper.registerListen('NodeIKernelGroupListener/onMemberListChange', 1, timeout, (params) => params.sceneId === sceneId) - .catch(); + .catch(() => {}); const result = await this.context.session.getGroupService().getNextMemberList(sceneId, undefined, num); - let resMode2; if (result.errCode !== 0) { throw new Error('获取群成员列表出错,' + result.errMsg); } + let resMode2; if (modeListener) { - const ret = (await once); - resMode2 = ret[0]; + const ret = (await once)?.[0]; + if (ret) { + resMode2 = ret; + } } this.context.session.getGroupService().destroyMemberListScene(sceneId); - return modeListener ? resMode2 : result.result; + return resMode2 || result.result; } async getGroupMembersV2(groupQQ: string): Promise> { diff --git a/src/core/listeners/NodeIKernelGroupListener.ts b/src/core/listeners/NodeIKernelGroupListener.ts index a3c18555..e3899b9b 100644 --- a/src/core/listeners/NodeIKernelGroupListener.ts +++ b/src/core/listeners/NodeIKernelGroupListener.ts @@ -71,7 +71,8 @@ export class NodeIKernelGroupListener { sceneId: string, ids: string[], infos: Map, // uid -> GroupMember - finish: boolean, + hasPrev: boolean, + hasNext: boolean, hasRobot: boolean }) { }