File size: 3,181 Bytes
8551878
 
df560cb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8551878
 
 
df560cb
 
8551878
 
df560cb
 
 
 
8551878
 
df560cb
 
 
 
 
8551878
 
df560cb
 
 
 
 
 
8551878
 
df560cb
 
 
8551878
 
df560cb
 
 
8551878
 
df560cb
 
8551878
 
df560cb
 
8551878
 
df560cb
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
统一配置管理
"""

import os


def _get_env_bool(name: str, default: bool = False) -> bool:
    value = os.getenv(name)
    if value is None:
        return default
    return value.strip().lower() in {"1", "true", "yes", "on"}

# ==================== 临时邮箱API配置 ====================
# 临时邮箱服务的基础URL
TEMP_MAIL_BASE_URL = os.getenv("TEMP_MAIL_BASE_URL", "https://mail.chatgpt.org.uk/api")

# ==================== 代理配置 ====================
# HTTP代理,用于常规请求
# PROXY_URL = "http://127.0.0.1:7890"
PROXY_URL = os.getenv("PROXY_URL", "")

# ==================== 账号池维护 (pool_maintenance.py) ====================
MIN_POOL_SIZE = int(os.getenv("MIN_POOL_SIZE", "5"))  # 最小账号池大小
MAX_POOL_SIZE = int(os.getenv("MAX_POOL_SIZE", "50"))  # 最大账号池大小
TOKEN_REFRESH_HOURS = float(os.getenv("TOKEN_REFRESH_HOURS", "1"))  # Token刷新间隔(小时)
MAINTENANCE_CHECK_INTERVAL = int(os.getenv("MAINTENANCE_CHECK_INTERVAL", "60"))  # 维护检查间隔(秒)

# ==================== 数据库配置 ====================
DEFAULT_DATABASE_PATH = os.getenv("DATA_DIR", "/data")
if not os.path.isdir(DEFAULT_DATABASE_PATH):
    DEFAULT_DATABASE_PATH = os.getcwd()
DATABASE_PATH = os.getenv("DATABASE_PATH", os.path.join(DEFAULT_DATABASE_PATH, "warp_accounts.db"))
DB_TIMEOUT = float(os.getenv("DB_TIMEOUT", "10.0"))  # 数据库操作超时时间(秒)

# ==================== Firebase API 配置 ====================
FIREBASE_API_KEY = os.getenv("FIREBASE_API_KEY", "AIzaSyBdy3O3S9hrdayLJxJ7mriBR4qgUaUygAs")
FIREBASE_API_KEYS = [
    key.strip()
    for key in os.getenv("FIREBASE_API_KEYS", FIREBASE_API_KEY).split(",")
    if key.strip()
]

# ==================== 账号池服务 (pool_service.py) ====================
POOL_SERVICE_HOST = os.getenv("POOL_SERVICE_HOST", "0.0.0.0")
POOL_SERVICE_PORT = int(os.getenv("POOL_SERVICE_PORT", "8019"))
MAX_SESSION_DURATION = int(float(os.getenv("MAX_SESSION_DURATION", str(30 * 60))))  # 会话最大持续时间(30分钟)

# ==================== 账号注册 (warp_register.py) ====================
TARGET_ACCOUNTS = int(os.getenv("TARGET_ACCOUNTS", "200"))  # 目标账号数
MAX_CONCURRENT_REGISTER = int(os.getenv("MAX_CONCURRENT_REGISTER", "2"))  # 最大并发注册数
MAX_PROXY_RETRIES = int(os.getenv("MAX_PROXY_RETRIES", "5"))  # 代理重试次数

# ==================== OpenAI兼容服务 (openai_compat.py) ====================
OPENAI_COMPAT_HOST = os.getenv("OPENAI_COMPAT_HOST", "0.0.0.0")
OPENAI_COMPAT_PORT = int(os.getenv("OPENAI_COMPAT_PORT", "7860"))

# ==================== Protobuf主服务 (server.py) ====================
SERVER_HOST = os.getenv("SERVER_HOST", "0.0.0.0")
SERVER_PORT = int(os.getenv("SERVER_PORT", "8000"))

# ==================== 日志配置 ====================
LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO")
LOG_FORMAT = os.getenv('LOG_FORMAT', '%(asctime)s - %(levelname)s - [%(processName)s] - %(message)s')

# ==================== 其他配置 ====================
ENABLE_AUTO_REGISTER = _get_env_bool("ENABLE_AUTO_REGISTER", True)