Files
DanDingNoneBot/danding_bot/plugins/danding_points/config.py

34 lines
1001 B
Python

from pydantic import field_validator
from pydantic_settings import BaseSettings, SettingsConfigDict
import os
class Config(BaseSettings):
"""Points system configuration."""
model_config = SettingsConfigDict(
extra="ignore",
)
# xapi /bot/points 运行时 API 配置
POINTS_API_HOST: str = os.getenv("DANDING_POINTS_API_HOST", "https://api.danding.vip/bot/points")
BOT_USER: str = os.getenv("DANDING_BOT_USER", "1424473282")
BOT_TOKEN: str = os.getenv(
"DANDING_BOT_TOKEN",
os.getenv("DANDING_API_TOKEN", os.getenv("BOT_TOKEN", "")),
)
@field_validator("POINTS_API_HOST")
@classmethod
def validate_api_host(cls, value):
if not value:
raise ValueError("POINTS_API_HOST cannot be empty")
return value.rstrip("/")
@field_validator("BOT_USER")
@classmethod
def validate_bot_user(cls, value):
if not value:
raise ValueError("BOT_USER cannot be empty")
return value