feat(bot): use runtime api for bot data
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from pydantic import Field, field_validator
|
||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||
import json
|
||||
from pydantic import Field, field_validator
|
||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
class Config(BaseSettings):
|
||||
@@ -43,8 +44,34 @@ class Config(BaseSettings):
|
||||
}
|
||||
)
|
||||
|
||||
# 数据库配置
|
||||
RACE_DB_FILE: str = "data/group_horse_racing/race.db"
|
||||
# 数据库配置
|
||||
RACE_DB_FILE: str = "data/group_horse_racing/race.db"
|
||||
|
||||
# xapi /bot/race 运行时 API 配置
|
||||
RACE_API_HOST: str = os.getenv("DANDING_RACE_API_HOST", "https://api.danding.vip/bot/race")
|
||||
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("RACE_API_HOST")
|
||||
@classmethod
|
||||
def validate_race_api_host(cls, value):
|
||||
"""规范化 xapi 赛马运行时 API 地址。"""
|
||||
|
||||
if not value:
|
||||
raise ValueError("RACE_API_HOST cannot be empty")
|
||||
return value.rstrip("/")
|
||||
|
||||
@field_validator("BOT_USER")
|
||||
@classmethod
|
||||
def validate_bot_user(cls, value):
|
||||
"""Bot 鉴权用户不能为空。"""
|
||||
|
||||
if not value:
|
||||
raise ValueError("BOT_USER cannot be empty")
|
||||
return value
|
||||
|
||||
@field_validator("TESTERS", "TEST_GROUPS", "ALLOWED_GROUPS", mode="before")
|
||||
@classmethod
|
||||
|
||||
Reference in New Issue
Block a user