""" 常量定义 """ from enum import Enum from typing import Dict, List, Tuple # ============================================================================ # 枚举类型 # ============================================================================ class AccountStatus(str, Enum): """账户状态""" ACTIVE = "active" EXPIRED = "expired" BANNED = "banned" FAILED = "failed" class TaskStatus(str, Enum): """任务状态""" PENDING = "pending" RUNNING = "running" COMPLETED = "completed" FAILED = "failed" CANCELLED = "cancelled" class EmailServiceType(str, Enum): """邮箱服务类型""" TEMPMAIL = "tempmail" OUTLOOK = "outlook" CUSTOM_DOMAIN = "custom_domain" # ============================================================================ # 应用常量 # ============================================================================ APP_NAME = "OpenAI/Codex CLI 自动注册系统" APP_VERSION = "2.0.0" APP_DESCRIPTION = "自动注册 OpenAI/Codex CLI 账号的系统" # ============================================================================ # OpenAI OAuth 相关常量 # ============================================================================ # OAuth 参数 OAUTH_CLIENT_ID = "app_EMoamEEZ73f0CkXaXp7hrann" OAUTH_AUTH_URL = "https://auth.openai.com/oauth/authorize" OAUTH_TOKEN_URL = "https://auth.openai.com/oauth/token" OAUTH_REDIRECT_URI = "http://localhost:1455/auth/callback" OAUTH_SCOPE = "openid email profile offline_access" # OpenAI API 端点 OPENAI_API_ENDPOINTS = { "sentinel": "https://sentinel.openai.com/backend-api/sentinel/req", "signup": "https://auth.openai.com/api/accounts/authorize/continue", "register": "https://auth.openai.com/api/accounts/user/register", "send_otp": "https://auth.openai.com/api/accounts/email-otp/send", "validate_otp": "https://auth.openai.com/api/accounts/email-otp/validate", "create_account": "https://auth.openai.com/api/accounts/create_account", "select_workspace": "https://auth.openai.com/api/accounts/workspace/select", } # ============================================================================ # 邮箱服务相关常量 # ============================================================================ # Tempmail.lol API 端点 TEMPMAIL_API_ENDPOINTS = { "create_inbox": "/inbox/create", "get_inbox": "/inbox", } # 自定义域名邮箱 API 端点 CUSTOM_DOMAIN_API_ENDPOINTS = { "get_config": "/api/config", "create_email": "/api/emails/generate", "list_emails": "/api/emails", "get_email_messages": "/api/emails/{emailId}", "delete_email": "/api/emails/{emailId}", "get_message": "/api/emails/{emailId}/{messageId}", } # 邮箱服务默认配置 EMAIL_SERVICE_DEFAULTS = { "tempmail": { "base_url": "https://api.tempmail.lol/v2", "timeout": 30, "max_retries": 3, }, "outlook": { "imap_server": "outlook.office365.com", "imap_port": 993, "smtp_server": "smtp.office365.com", "smtp_port": 587, "timeout": 30, }, "custom_domain": { "base_url": "", # 需要用户配置 "api_key_header": "X-API-Key", "timeout": 30, "max_retries": 3, } } # ============================================================================ # 注册流程相关常量 # ============================================================================ # 验证码相关 OTP_CODE_PATTERN = r"(?