🐛 尝试修复进群验证e.repmy未定义#I9LCDN
This commit is contained in:
@@ -166,7 +166,7 @@ Bot.on?.("message.group", async(e) => {
|
||||
delete temp[e.user_id + e.group_id]
|
||||
clearTimeout(kickTimer)
|
||||
clearTimeout(remindTimer)
|
||||
return await e.reply(SuccessMsgs[e.group_id] || SuccessMsgs[0] || "✅ 验证成功,欢迎入群")
|
||||
return await sendMsg(e, SuccessMsgs[e.group_id] || SuccessMsgs[0] || "✅ 验证成功,欢迎入群")
|
||||
} else {
|
||||
temp[e.user_id + e.group_id].remainTimes -= 1
|
||||
|
||||
@@ -176,11 +176,11 @@ Bot.on?.("message.group", async(e) => {
|
||||
await e.recall()
|
||||
|
||||
const msg = `\n❎ 验证失败\n你还有「${remainTimes}」次机会\n请发送「${nums[0]} ${operator} ${nums[1]}」的运算结果`
|
||||
return await e.reply([ segment.at(e.user_id), msg ])
|
||||
return await sendMsg(e, [ segment.at(e.user_id), msg ])
|
||||
}
|
||||
clearTimeout(kickTimer)
|
||||
clearTimeout(remindTimer)
|
||||
await e.reply([ segment.at(e.user_id), "\n验证失败,请重新申请" ])
|
||||
await sendMsg(e, [ segment.at(e.user_id), "\n验证失败,请重新申请" ])
|
||||
delete temp[e.user_id + e.group_id]
|
||||
return await e.group.kickMember(e.user_id)
|
||||
}
|
||||
@@ -198,7 +198,7 @@ Bot.on?.("notice.group.decrease", async(e) => {
|
||||
|
||||
delete temp[e.user_id + e.group_id]
|
||||
|
||||
e.group.sendMsg(`「${e.user_id}」主动退群,验证流程结束`)
|
||||
sendMsg(e, `「${e.user_id}」主动退群,验证流程结束`)
|
||||
})
|
||||
|
||||
// 发送验证信息
|
||||
@@ -227,7 +227,7 @@ async function verify(userId, groupId, e) {
|
||||
const verifyCode = String(operator === "-" ? m - n : m + n)
|
||||
logger.mark(`[Yenai-Plugin][进群验证]答案:${verifyCode}`)
|
||||
const kickTimer = setTimeout(async() => {
|
||||
e.reply([ segment.at(userId), "\n验证超时,移出群聊,请重新申请" ])
|
||||
sendMsg(e, [ segment.at(userId), "\n验证超时,移出群聊,请重新申请" ])
|
||||
|
||||
delete temp[userId + groupId]
|
||||
|
||||
@@ -242,7 +242,7 @@ async function verify(userId, groupId, e) {
|
||||
if (shouldRemind && temp[userId + groupId].remindTimer) {
|
||||
const msg = ` \n验证仅剩最后一分钟\n请发送「${m} ${operator} ${n}」的运算结果\n否则将会被移出群聊`
|
||||
|
||||
await e.reply([ segment.at(userId), msg ])
|
||||
await sendMsg(e, [ segment.at(userId), msg ])
|
||||
}
|
||||
clearTimeout(remindTimer)
|
||||
}, Math.abs(time * 1000 - 60000))
|
||||
@@ -250,7 +250,7 @@ async function verify(userId, groupId, e) {
|
||||
const msg = ` 欢迎!\n请在「${time}」秒内发送\n「${m} ${operator} ${n}」的运算结果\n否则将会被移出群聊`
|
||||
|
||||
// 消息发送成功才写入
|
||||
if (await e.reply([ segment.at(userId), msg ])) {
|
||||
if (await sendMsg(e, [ segment.at(userId), msg ])) {
|
||||
temp[userId + groupId] = {
|
||||
remainTimes: times,
|
||||
nums: [ m, n ],
|
||||
@@ -265,3 +265,25 @@ async function verify(userId, groupId, e) {
|
||||
clearTimeout(kickTimer)
|
||||
}
|
||||
}
|
||||
async function sendMsg(e, msg) {
|
||||
const sendMsgFunctions = {
|
||||
reply: async() => e.reply(msg),
|
||||
group: async() => e.group.sendMsg(msg),
|
||||
bot: async() => e.bot.pinkGroup(e.group_id).sendMsg(msg),
|
||||
self_id: async() => Bot[e.self_id].pinkGroup(e.group_id).sendMsg(msg)
|
||||
}
|
||||
|
||||
for (const key in sendMsgFunctions) {
|
||||
if (e[key]) {
|
||||
try {
|
||||
const sendFunction = sendMsgFunctions[key]
|
||||
let res = await sendFunction()
|
||||
return res
|
||||
} catch (error) {
|
||||
logger.debug(`[Yenai-Plugin][进群验证]发送消息失败: ${error.message}`)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
throw Error("[Yenai-Plugin][进群验证]未获取到发送消息函数")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user