import os from pathlib import Path from dotenv import load_dotenv load_dotenv() def _env(key: str, default: str = "") -> str: return os.getenv(key, default) def _env_bool(key: str, default: bool = True) -> bool: val = os.getenv(key, "").lower() if val in ("0", "false", "no"): return False if val in ("1", "true", "yes"): return True return default def _env_int(key: str, default: int) -> int: try: return int(os.getenv(key, "")) except (ValueError, TypeError): return default # WeChat Work Bot WECOM_BOT_ID = _env("WECOM_BOT_ID") WECOM_BOT_SECRET = _env("WECOM_BOT_SECRET") # Xiaomi TTS XIAOMI_USER_ID = _env("XIAOMI_USER_ID", "1136458602") XIAOMI_TOKEN_PATH = _env( "XIAOMI_TOKEN_PATH", str(Path(__file__).resolve().parent / ".mi.token"), ) XIAOMI_SPEAKER_DID = _env("XIAOMI_SPEAKER_DID", "3ba2c1e8-d8cb-45c5-b88a-15624e7a02f3") # TTS TTS_ENABLED = _env_bool("TTS_ENABLED", True) TTS_MAX_TEXT_LENGTH = _env_int("TTS_MAX_TEXT_LENGTH", 500) TTS_TIMEOUT_SECONDS = _env_int("TTS_TIMEOUT_SECONDS", 15)