From 2b0aa6249bd69a6ffd7228f75164e7c065cc4d00 Mon Sep 17 00:00:00 2001 From: idranme <96647698+idranme@users.noreply.github.com> Date: Fri, 11 Oct 2024 00:50:06 +0800 Subject: [PATCH] fix: `at ` element --- src/ntqqapi/api/group.ts | 2 +- src/onebot11/helper/createMessage.ts | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/ntqqapi/api/group.ts b/src/ntqqapi/api/group.ts index 06a4f63..2bc90fc 100644 --- a/src/ntqqapi/api/group.ts +++ b/src/ntqqapi/api/group.ts @@ -73,7 +73,7 @@ export class NTQQGroupApi extends Service { cbCmd: 'nodeIKernelGroupListener/onMemberInfoChange', afterFirstCmd: false, cmdCB: payload => payload.members.has(uid), - timeout: 3000 + timeout: 2000 } ) return data.members.get(uid)! diff --git a/src/onebot11/helper/createMessage.ts b/src/onebot11/helper/createMessage.ts index 0d36fae..af5719d 100644 --- a/src/onebot11/helper/createMessage.ts +++ b/src/onebot11/helper/createMessage.ts @@ -67,8 +67,15 @@ export async function createSendElements( } else if (peer.chatType === ChatType.Group) { const uid = await ctx.ntUserApi.getUidByUin(atQQ) ?? '' - const atNmae = sendMsg.data?.name - const display = atNmae ? `@${atNmae}` : '' + let display = '' + if (sendMsg.data.name) { + display = `@${sendMsg.data.name}` + } else { + try { + const member = await ctx.ntGroupApi.getGroupMember(peer.peerUid, uid) + display = `@${member.cardName || member.nick}` + } catch { } + } sendElements.push(SendElement.at(atQQ, uid, AtType.One, display)) } }