细节优化

This commit is contained in:
🌌 2023-06-28 19:57:42 +08:00
parent 018fa28460
commit a8eede7601
3 changed files with 35 additions and 31 deletions

View File

@ -10,7 +10,7 @@ import path from 'node:path'
* @param msg 消息 * @param msg 消息
*/ */
function relpyPrivate (userId, 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 消息数组 * @param msg 消息数组
*/ */
function makeForwardMsg (e, msg = []) { function makeForwardMsg (e, msg = []) {
let forwardMsg = [] const forwardMsg = []
msg.forEach(v => { forwardMsg.push({ message: v }) }) for (const i of msg)
forwardMsg.push({ message: i })
/** 制作转发内容 */ if (e?.group?.makeForwardMsg)
if (e.group) {
return e.group.makeForwardMsg(forwardMsg) return e.group.makeForwardMsg(forwardMsg)
} else if (e.friend) { else if (e?.friend?.makeForwardMsg)
return e.friend.makeForwardMsg(forwardMsg) return e.friend.makeForwardMsg(forwardMsg)
} else { else
return false return Bot.makeForwardMsg(forwardMsg)
}
} }
export default { sleep, relpyPrivate, downFile, makeForwardMsg } export default { sleep, relpyPrivate, downFile, makeForwardMsg }

View File

@ -169,27 +169,27 @@ Bot.adapter.push(new class ComWeChatAdapter {
}) })
} }
async getGroupMemberArray(data) { async getMemberArray(data) {
return (await data.sendApi("get_group_member_list", { return (await data.sendApi("get_group_member_list", {
group_id: data.group_id, group_id: data.group_id,
})).data })).data
} }
async getGroupMemberList(data) { async getMemberList(data) {
const array = [] const array = []
for (const i of (await this.getGroupMemberArray(data))) for (const i of (await this.getMemberArray(data)))
array.push(i.user_id) array.push(i.user_id)
return array return array
} }
async getGroupMemberMap(data) { async getMemberMap(data) {
const map = new Map() 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) map.set(i.user_id, i)
return map return map
} }
getGroupMemberInfo(data) { getMemberInfo(data) {
return data.sendApi("get_group_member_info", { return data.sendApi("get_group_member_info", {
group_id: data.group_id, group_id: data.group_id,
user_id: data.user_id, user_id: data.user_id,
@ -230,8 +230,8 @@ Bot.adapter.push(new class ComWeChatAdapter {
return { return {
...this.pickFriend(i, user_id), ...this.pickFriend(i, user_id),
...i, ...i,
getInfo: () => this.getGroupMemberInfo(i), getInfo: () => this.getMemberInfo(i),
getAvatarUrl: async () => (await this.getGroupMemberInfo(i))["wx.avatar"], 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), sendFile: (file, name) => this.sendFile(i, msg => this.sendGroupMsg(i, msg), file, name),
getInfo: () => this.getGroupInfo(i), getInfo: () => this.getGroupInfo(i),
getAvatarUrl: async () => (await this.getGroupInfo(i))["wx.avatar"], getAvatarUrl: async () => (await this.getGroupInfo(i))["wx.avatar"],
getMemberArray: () => this.getGroupMemberArray(i), getMemberArray: () => this.getMemberArray(i),
getMemberList: () => this.getGroupMemberList(i), getMemberList: () => this.getMemberList(i),
getMemberMap: () => this.getGroupMemberMap(i), getMemberMap: () => this.getMemberMap(i),
pickMember: user_id => this.pickMember(i, i.group_id, user_id), 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.message_type = data.detail_type
data.raw_message = data.alt_message data.raw_message = data.alt_message
data.sender = {
...data.bot.fl.get(data.user_id),
user_id: data.user_id,
}
const message = [] const message = []
for (const i of data.message) for (const i of data.message)
switch (i.type) { switch (i.type) {

View File

@ -199,27 +199,27 @@ Bot.adapter.push(new class gocqhttpAdapter {
}) })
} }
async getGroupMemberArray(data) { async getMemberArray(data) {
return (await data.sendApi("get_group_member_list", { return (await data.sendApi("get_group_member_list", {
group_id: data.group_id, group_id: data.group_id,
})).data })).data
} }
async getGroupMemberList(data) { async getMemberList(data) {
const array = [] const array = []
for (const i of (await this.getGroupMemberArray(data))) for (const i of (await this.getMemberArray(data)))
array.push(i.user_id) array.push(i.user_id)
return array return array
} }
async getGroupMemberMap(data) { async getMemberMap(data) {
const map = new Map() 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) map.set(i.user_id, i)
return map return map
} }
getGroupMemberInfo(data) { getMemberInfo(data) {
return data.sendApi("get_group_member_info", { return data.sendApi("get_group_member_info", {
group_id: data.group_id, group_id: data.group_id,
user_id: data.user_id, user_id: data.user_id,
@ -455,7 +455,7 @@ Bot.adapter.push(new class gocqhttpAdapter {
return { return {
...this.pickFriend(i, user_id), ...this.pickFriend(i, user_id),
...i, ...i,
getInfo: () => this.getGroupMemberInfo(i), getInfo: () => this.getMemberInfo(i),
poke: () => this.sendGroupMsg(i, segment.poke(user_id)), 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), sendFile: (file, name) => this.sendGroupFile(i, file, undefined, name),
getInfo: () => this.getGroupInfo(i), getInfo: () => this.getGroupInfo(i),
getAvatarUrl: () => `https://p.qlogo.cn/gh/${group_id}/${group_id}/0`, getAvatarUrl: () => `https://p.qlogo.cn/gh/${group_id}/${group_id}/0`,
getMemberArray: () => this.getGroupMemberArray(i), getMemberArray: () => this.getMemberArray(i),
getMemberList: () => this.getGroupMemberList(i), getMemberList: () => this.getMemberList(i),
getMemberMap: () => this.getGroupMemberMap(i), getMemberMap: () => this.getMemberMap(i),
pickMember: user_id => this.pickMember(i, group_id, user_id), pickMember: user_id => this.pickMember(i, group_id, user_id),
pokeMember: user_id => this.sendGroupMsg(i, segment.poke(user_id)), pokeMember: user_id => this.sendGroupMsg(i, segment.poke(user_id)),
setName: group_name => this.setGroupName(i, group_name), setName: group_name => this.setGroupName(i, group_name),