From 820a7b78fc4f85f4c4ba96a8972a7464d0f3f6de Mon Sep 17 00:00:00 2001 From: Rock Chin <1010553892@qq.com> Date: Thu, 18 May 2023 20:12:36 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A4=84=E7=90=86=E8=BF=87=E7=A8=8B?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=BC=BA=E5=88=B6=E5=BB=B6=E8=BF=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/qqbot/process.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pkg/qqbot/process.py b/pkg/qqbot/process.py index 545886d1..5af3c084 100644 --- a/pkg/qqbot/process.py +++ b/pkg/qqbot/process.py @@ -80,6 +80,10 @@ def process_message(launcher_type: str, launcher_id: int, text_message: str, mes text_message = text_message.strip() + + # 为强制消息延迟计时 + start_time = time.time() + # 处理消息 try: @@ -168,4 +172,23 @@ def process_message(launcher_type: str, launcher_id: int, text_message: str, mes finally: pkg.openai.session.get_session(session_name).release_response_lock() + # 检查延迟时间 + if config.force_delay_range[1] == 0: + delay_time = 0 + else: + import random + + # 从延迟范围中随机取一个值(浮点) + rdm = random.uniform(config.force_delay_range[0], config.force_delay_range[1]) + + spent = time.time() - start_time + + # 如果花费时间小于延迟时间,则延迟 + delay_time = rdm - spent if rdm - spent > 0 else 0 + + # 延迟 + if delay_time > 0: + logging.info("[风控] 强制延迟{:.2f}秒(如需关闭,请到config.py修改force_delay_range字段)".format(delay_time)) + time.sleep(delay_time) + return MessageChain(reply)