From a8eede7601adc43f17bc9324efd3ec00f7cf15f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=F0=9F=8C=8C?= Date: Wed, 28 Jun 2023 19:57:42 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=86=E8=8A=82=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/common/common.js | 19 +++++++++---------- plugins/adapter/ComWeChat.js | 27 ++++++++++++++++----------- plugins/adapter/go-cqhttp.js | 20 ++++++++++---------- 3 files changed, 35 insertions(+), 31 deletions(-) diff --git a/lib/common/common.js b/lib/common/common.js index 9e7b33a..1c5265c 100644 --- a/lib/common/common.js +++ b/lib/common/common.js @@ -10,7 +10,7 @@ import path from 'node:path' * @param msg 消息 */ function relpyPrivate (userId, msg) { - return Bot.pickUser(userId).sendMsg(msg) + return Bot.pickFriend(userId).sendMsg(msg) } /** @@ -57,17 +57,16 @@ function mkdirs (dirname) { * @param msg 消息数组 */ function makeForwardMsg (e, msg = []) { - let forwardMsg = [] - msg.forEach(v => { forwardMsg.push({ message: v }) }) + const forwardMsg = [] + for (const i of msg) + forwardMsg.push({ message: i }) - /** 制作转发内容 */ - if (e.group) { + if (e?.group?.makeForwardMsg) return e.group.makeForwardMsg(forwardMsg) - } else if (e.friend) { + else if (e?.friend?.makeForwardMsg) return e.friend.makeForwardMsg(forwardMsg) - } else { - return false - } + else + return Bot.makeForwardMsg(forwardMsg) } -export default { sleep, relpyPrivate, downFile, makeForwardMsg } +export default { sleep, relpyPrivate, downFile, makeForwardMsg } \ No newline at end of file diff --git a/plugins/adapter/ComWeChat.js b/plugins/adapter/ComWeChat.js index 64b571b..11454f9 100644 --- a/plugins/adapter/ComWeChat.js +++ b/plugins/adapter/ComWeChat.js @@ -169,27 +169,27 @@ Bot.adapter.push(new class ComWeChatAdapter { }) } - async getGroupMemberArray(data) { + async getMemberArray(data) { return (await data.sendApi("get_group_member_list", { group_id: data.group_id, })).data } - async getGroupMemberList(data) { + async getMemberList(data) { const array = [] - for (const i of (await this.getGroupMemberArray(data))) + for (const i of (await this.getMemberArray(data))) array.push(i.user_id) return array } - async getGroupMemberMap(data) { + async getMemberMap(data) { const map = new Map() - for (const i of (await this.getGroupMemberArray(data))) + for (const i of (await this.getMemberArray(data))) map.set(i.user_id, i) return map } - getGroupMemberInfo(data) { + getMemberInfo(data) { return data.sendApi("get_group_member_info", { group_id: data.group_id, user_id: data.user_id, @@ -230,8 +230,8 @@ Bot.adapter.push(new class ComWeChatAdapter { return { ...this.pickFriend(i, user_id), ...i, - getInfo: () => this.getGroupMemberInfo(i), - getAvatarUrl: async () => (await this.getGroupMemberInfo(i))["wx.avatar"], + getInfo: () => this.getMemberInfo(i), + getAvatarUrl: async () => (await this.getMemberInfo(i))["wx.avatar"], } } @@ -250,9 +250,9 @@ Bot.adapter.push(new class ComWeChatAdapter { sendFile: (file, name) => this.sendFile(i, msg => this.sendGroupMsg(i, msg), file, name), getInfo: () => this.getGroupInfo(i), getAvatarUrl: async () => (await this.getGroupInfo(i))["wx.avatar"], - getMemberArray: () => this.getGroupMemberArray(i), - getMemberList: () => this.getGroupMemberList(i), - getMemberMap: () => this.getGroupMemberMap(i), + getMemberArray: () => this.getMemberArray(i), + getMemberList: () => this.getMemberList(i), + getMemberMap: () => this.getMemberMap(i), pickMember: user_id => this.pickMember(i, i.group_id, user_id), } } @@ -307,6 +307,11 @@ Bot.adapter.push(new class ComWeChatAdapter { data.message_type = data.detail_type data.raw_message = data.alt_message + data.sender = { + ...data.bot.fl.get(data.user_id), + user_id: data.user_id, + } + const message = [] for (const i of data.message) switch (i.type) { diff --git a/plugins/adapter/go-cqhttp.js b/plugins/adapter/go-cqhttp.js index 6236044..5d72531 100644 --- a/plugins/adapter/go-cqhttp.js +++ b/plugins/adapter/go-cqhttp.js @@ -199,27 +199,27 @@ Bot.adapter.push(new class gocqhttpAdapter { }) } - async getGroupMemberArray(data) { + async getMemberArray(data) { return (await data.sendApi("get_group_member_list", { group_id: data.group_id, })).data } - async getGroupMemberList(data) { + async getMemberList(data) { const array = [] - for (const i of (await this.getGroupMemberArray(data))) + for (const i of (await this.getMemberArray(data))) array.push(i.user_id) return array } - async getGroupMemberMap(data) { + async getMemberMap(data) { const map = new Map() - for (const i of (await this.getGroupMemberArray(data))) + for (const i of (await this.getMemberArray(data))) map.set(i.user_id, i) return map } - getGroupMemberInfo(data) { + getMemberInfo(data) { return data.sendApi("get_group_member_info", { group_id: data.group_id, user_id: data.user_id, @@ -455,7 +455,7 @@ Bot.adapter.push(new class gocqhttpAdapter { return { ...this.pickFriend(i, user_id), ...i, - getInfo: () => this.getGroupMemberInfo(i), + getInfo: () => this.getMemberInfo(i), poke: () => this.sendGroupMsg(i, segment.poke(user_id)), } } @@ -500,9 +500,9 @@ Bot.adapter.push(new class gocqhttpAdapter { sendFile: (file, name) => this.sendGroupFile(i, file, undefined, name), getInfo: () => this.getGroupInfo(i), getAvatarUrl: () => `https://p.qlogo.cn/gh/${group_id}/${group_id}/0`, - getMemberArray: () => this.getGroupMemberArray(i), - getMemberList: () => this.getGroupMemberList(i), - getMemberMap: () => this.getGroupMemberMap(i), + getMemberArray: () => this.getMemberArray(i), + getMemberList: () => this.getMemberList(i), + getMemberMap: () => this.getMemberMap(i), pickMember: user_id => this.pickMember(i, group_id, user_id), pokeMember: user_id => this.sendGroupMsg(i, segment.poke(user_id)), setName: group_name => this.setGroupName(i, group_name),