From 417ef5d335da279f3bc83117add1adead1679185 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=8B=E7=93=9C=E4=B8=80=E5=8D=81=E9=9B=AA?= Date: Sun, 17 Nov 2024 11:21:48 +0800 Subject: [PATCH] Revert "fix" This reverts commit 9c534f8afd94b85dc67ad26350f2c5c60e81e0f5. --- src/onebot/index.ts | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/onebot/index.ts b/src/onebot/index.ts index 651ffc45..c10e903f 100644 --- a/src/onebot/index.ts +++ b/src/onebot/index.ts @@ -547,14 +547,16 @@ export class NapCatOneBot11Adapter { this.context.logger.logDebug('收到新消息 RawMessage', message); try { const ob11Msg = await this.apis.MsgApi.parseMessageV2(message); - if (ob11Msg) { - const isSelfMsg = this.isSelfMessage(ob11Msg); - this.context.logger.logDebug('转化为 OB11Message', ob11Msg); - const msgMap = this.createMsgMap(network, ob11Msg, isSelfMsg, message); - this.handleDebugNetwork(network, msgMap, message); - this.handleNotReportSelfNetwork(network, msgMap, isSelfMsg); - this.networkManager.emitEventByNames(msgMap); - } + if (!ob11Msg) return; + + const isSelfMsg = this.isSelfMessage(ob11Msg); + this.context.logger.logDebug('转化为 OB11Message', ob11Msg); + + const msgMap = this.createMsgMap(network, ob11Msg, isSelfMsg, message); + this.handleDebugNetwork(network, msgMap, message); + this.handleNotReportSelfNetwork(network, msgMap, isSelfMsg); + + this.networkManager.emitEventByNames(msgMap); } catch (e) { this.context.logger.logError('constructMessage error: ', e); } @@ -573,7 +575,7 @@ export class NapCatOneBot11Adapter { private createMsgMap(network: Array, ob11Msg: any, isSelfMsg: boolean, message: RawMessage): Map { const msgMap: Map = new Map(); - network.filter(e => e.enable).forEach(e => { + network.flat().filter(e => e.enable).forEach(e => { if (e.messagePostFormat == 'string') { msgMap.set(e.name, structuredClone(ob11Msg.stringMsg)); } else { @@ -588,7 +590,7 @@ export class NapCatOneBot11Adapter { } private handleDebugNetwork(network: Array, msgMap: Map, message: RawMessage) { - const debugNetwork = network.filter(e => e.enable && e.debug); + const debugNetwork = network.flat().filter(e => e.enable && e.debug); if (debugNetwork.length > 0) { debugNetwork.forEach(adapter => { const msg = msgMap.get(adapter.name); @@ -603,7 +605,7 @@ export class NapCatOneBot11Adapter { private handleNotReportSelfNetwork(network: Array, msgMap: Map, isSelfMsg: boolean) { if (isSelfMsg) { - const notReportSelfNetwork = network.filter(e => e.enable && (('reportSelfMessage' in e && !e.reportSelfMessage) || !('reportSelfMessage' in e))); + const notReportSelfNetwork = network.flat().filter(e => e.enable && (('reportSelfMessage' in e && !e.reportSelfMessage) || !('reportSelfMessage' in e))); notReportSelfNetwork.forEach(adapter => { msgMap.delete(adapter.name); });