From 1e6fe182a3fe04dba26cc9632b938ba110edbc19 Mon Sep 17 00:00:00 2001 From: yihong0618 Date: Mon, 24 Nov 2025 20:46:45 +0800 Subject: [PATCH] fix: command start Signed-off-by: yihong0618 --- handlers/summary/__init__.py | 2 +- handlers/summary/utils.py | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/handlers/summary/__init__.py b/handlers/summary/__init__.py index 784b829..ed9d72b 100644 --- a/handlers/summary/__init__.py +++ b/handlers/summary/__init__.py @@ -366,7 +366,7 @@ if settings.openai_api_key: confirm_command, commands=["confirm"], pass_bot=True ) bot.register_message_handler( - handle_message, func=partial(filter_message, bot=bot), pass_bot=True + handle_message, func=partial(filter_message, bot=bot, check_chinese=True), pass_bot=True ) # 启动提肛提醒定时任务 diff --git a/handlers/summary/utils.py b/handlers/summary/utils.py index 80f10e9..a870dc0 100644 --- a/handlers/summary/utils.py +++ b/handlers/summary/utils.py @@ -18,15 +18,22 @@ def contains_non_ascii(text: str) -> bool: return not text.isascii() -def filter_message(message: Message, bot: TeleBot) -> bool: - """过滤消息,排除非文本消息和命令消息""" +def filter_message(message: Message, bot: TeleBot, check_chinese: bool = False) -> bool: + """过滤消息,排除非文本消息和命令消息 + + Args: + message: 消息对象 + bot: Bot 实例 + check_chinese: 是否允许检查中文消息(即不过滤命令) + """ if not message.text: return False if not message.from_user: return False if message.from_user.id == bot.get_me().id: return False - if message.text.startswith("/"): + # 如果需要检查中文,则不过滤命令消息(让 handle_message 处理) + if not check_chinese and message.text.startswith("/"): return False return True