From 753548db6dc488d8a9580650bbfd17b5a0d4a39a Mon Sep 17 00:00:00 2001 From: sliverp Date: Thu, 29 Jan 2026 12:36:13 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=81=BF=E5=85=8D=E5=9B=9E=E5=A4=8D?= =?UTF-8?q?=E8=A2=ABQQ=E8=AF=86=E5=88=AB=E4=B8=BAURL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gateway.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/gateway.ts b/src/gateway.ts index 1bf5f47..0dca038 100644 --- a/src/gateway.ts +++ b/src/gateway.ts @@ -230,9 +230,18 @@ export async function startGateway(ctx: GatewayContext): Promise { timeoutId = null; } - const replyText = payload.text ?? ""; + let replyText = payload.text ?? ""; if (!replyText.trim()) return; + // 处理回复内容,避免被 QQ 识别为 URL + // 把文件扩展名中的点替换为下划线,如 README.md -> README_md + const originalText = replyText; + replyText = replyText.replace(/(\w+)\.(\w{2,4})\b/g, "$1_$2"); + const hasReplacement = replyText !== originalText; + if (hasReplacement) { + replyText += "\n\n(由于平台限制,回复中的部分符号已被替换)"; + } + try { if (event.type === "c2c") { await sendC2CMessage(freshToken, event.senderId, replyText, event.messageId);