diff --git a/config/settings.py b/config/settings.py index 4f9fd9b..d651434 100644 --- a/config/settings.py +++ b/config/settings.py @@ -40,21 +40,23 @@ def get_all_dingtalk_configs() -> List[Dict[str, str]]: 获取所有钉钉机器人配置(支持多群) 环境变量格式: - DINGTALK_WEBHOOK_1=xxx - DINGTALK_SECRET_1=xxx - DINGTALK_WEBHOOK_2=xxx - DINGTALK_SECRET_2=xxx + 群1: DINGTALK_WEBHOOK + DINGTALK_SECRET(不带编号) + 群2: DINGTALK_WEBHOOK_2 + DINGTALK_SECRET_2 + 群3: DINGTALK_WEBHOOK_3 + DINGTALK_SECRET_3 ... - 如果没有编号配置,则使用 DINGTALK_WEBHOOK 和 DINGTALK_SECRET - Returns: list: 配置列表,每项包含 webhook 和 secret """ configs = [] - # 查找编号配置 - i = 1 + # 1. 先读取不带编号的默认配置(群1) + default_config = get_dingtalk_config() + if default_config["webhook"]: + configs.append(default_config) + + # 2. 从 i=2 开始读取编号配置(群2、群3...) + i = 2 while True: webhook = os.getenv(f"DINGTALK_WEBHOOK_{i}", "") secret = os.getenv(f"DINGTALK_SECRET_{i}", "") @@ -68,12 +70,6 @@ def get_all_dingtalk_configs() -> List[Dict[str, str]]: }) i += 1 - # 如果没有编号配置,使用默认配置 - if not configs: - default_config = get_dingtalk_config() - if default_config["webhook"]: - configs.append(default_config) - return configs