From 2ab062f4f2d837de1693602f68e5dfe6777ff9e7 Mon Sep 17 00:00:00 2001 From: Zyy955 <74231782+Zyy955@users.noreply.github.com> Date: Mon, 16 Oct 2023 03:56:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E4=B8=AA=E6=8D=95=E8=8E=B7=EF=BC=8C?= =?UTF-8?q?=E9=98=B2=E6=AD=A2=E6=97=A0=E6=84=8F=E4=B9=89=E7=9A=84=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E5=AF=BC=E8=87=B4=E8=BD=AC=E5=8F=91=E6=95=B4=E4=B8=AA?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E5=8F=91=E9=80=81=20(#284)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 加个捕获,防止无意义的报错导致转发整个无法发送 * 更新 common.js --- lib/common/common.js | 50 +++++++++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/lib/common/common.js b/lib/common/common.js index cf82dd7..f0e500e 100644 --- a/lib/common/common.js +++ b/lib/common/common.js @@ -77,8 +77,12 @@ async function makeForwardMsg (e, msg = [], dec = '', msgsscr = false) { let id = msgsscr ? e.user_id : Bot.uin if (e.isGroup) { - let info = await e.bot.getGroupMemberInfo(e.group_id, id) - name = info.card || info.nickname + try { + let info = await e.bot.getGroupMemberInfo(e.group_id, id) + name = info.card || info.nickname + } catch (err) { + logger.error(err) + } } let userInfo = { @@ -98,27 +102,31 @@ async function makeForwardMsg (e, msg = [], dec = '', msgsscr = false) { } /** 制作转发内容 */ - if (e?.group?.makeForwardMsg) { - forwardMsg = await e.group.makeForwardMsg(forwardMsg) - } else if (e?.friend?.makeForwardMsg) { - forwardMsg = await e.friend.makeForwardMsg(forwardMsg) - } else { - return msg.join('\n') - } - - if (dec) { - /** 处理描述 */ - if (typeof (forwardMsg.data) === 'object') { - let detail = forwardMsg.data?.meta?.detail - if (detail) { - detail.news = [{ text: dec }] - } + try { + if (e?.group?.makeForwardMsg) { + forwardMsg = await e.group.makeForwardMsg(forwardMsg) + } else if (e?.friend?.makeForwardMsg) { + forwardMsg = await e.friend.makeForwardMsg(forwardMsg) } else { - forwardMsg.data = forwardMsg.data - .replace(/\n/g, '') - .replace(/(.+?)<\/title>/g, '___') - .replace(/___+/, `<title color="#777777" size="26">${dec}`) + return msg.join('\n') } + + if (dec) { + /** 处理描述 */ + if (typeof (forwardMsg.data) === 'object') { + let detail = forwardMsg.data?.meta?.detail + if (detail) { + detail.news = [{ text: dec }] + } + } else { + forwardMsg.data = forwardMsg.data + .replace(/\n/g, '') + .replace(/(.+?)<\/title>/g, '___') + .replace(/___+/, `<title color="#777777" size="26">${dec}`) + } + } + } catch (err) { + logger.error(err) } return forwardMsg