From fa4d42db2612840f55264115b87f16b9a31afcfb Mon Sep 17 00:00:00 2001 From: Shining Hu <40261893+nethawkhu@users.noreply.github.com> Date: Tue, 19 Nov 2024 23:34:49 +0800 Subject: [PATCH] =?UTF-8?q?Update=20main.py=20=E5=A2=9E=E5=8A=A0=E5=85=81?= =?UTF-8?q?=E8=AE=B8=E9=80=9A=E7=9F=A5=E7=9A=84=E6=97=B6=E9=97=B4=EF=BC=8C?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=94=99=E8=AF=AF=E6=97=B6=E5=8F=AF=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=9A=84=E9=99=84=E5=8A=A0=E6=B6=88=E6=81=AF=E6=94=BE?= =?UTF-8?q?=E5=88=B0=E9=85=8D=E7=BD=AE=E4=B8=AD=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=A4=87=E6=B3=A8=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加允许通知的时间,更新错误时可添加的附加消息放到配置中,增加用户备注。 以上功能需同时更新 config.py 中的对应配置项。 --- main.py | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/main.py b/main.py index 183d1da..3a3c5b8 100644 --- a/main.py +++ b/main.py @@ -1,11 +1,14 @@ import aiohttp import argparse import asyncio +from datetime import datetime from api.qinglong import QlApi, QlOpenApi from api.send import SendApi from config import ( qinglong_data, user_datas, + MESSAGE_TIME_RANGES, + ADDITIONAL_MESSAGE ) import cv2 import json @@ -616,20 +619,25 @@ async def main(mode: str = None): return username[:start] + '****' + username[start + 4:] return username # 如果用户名长度不足,则不进行修改 - masked_success_users = [mask_username(user) for user in success_users] - masked_failed_users = [mask_username(user) for user in failed_users] - - # 附加消息 - additional_message = "\n 解决办法:ABCD!" + masked_success_users = ["[" + user_datas.get(user, {}).get("remark", "NoMark") + "] " + mask_username(user) for user in success_users] + masked_failed_users = ["[" + user_datas.get(user, {}).get("remark", "NoMark") + "] " + mask_username(user) for user in failed_users] # 最终发送消息 - if masked_success_users: - success_msg = "更新成功的用户:\n" + "\n".join(masked_success_users) + "\n" - await send_msg(send_api, send_type=0, msg=success_msg) - if masked_failed_users: - failed_msg = "更新失败的用户:\n" + "\n".join(masked_failed_users) + "\n" + additional_message - await send_msg(send_api, send_type=1, msg=failed_msg) - + current_time = datetime.now().strftime("%H:%M") + + can_send_message = any(start <= current_time <= end for start, end in MESSAGE_TIME_RANGES) + + if can_send_message: + logger.info(f"当前时间 {current_time} 在允许的时间段内,发送消息。") + if masked_success_users: + success_msg = "更新成功的用户:\n" + "\n".join(masked_success_users) + "\n" + await send_msg(send_api, send_type=0, msg=success_msg) + if masked_failed_users: + failed_msg = "更新失败的用户:\n" + "\n".join(masked_failed_users) + "\n" + ADDITIONAL_MESSAGE + await send_msg(send_api, send_type=1, msg=failed_msg) + else: + logger.info(f"当前时间 {current_time} 不在允许的时间段内,消息不会被发送。") + except Exception as e: traceback.print_exc()