refactor: 平台改为代码内置 provider 架构,一次性迁移现有数据 - 新增 app/providers:BalanceProvider 基类 + DeepSeek 适配器 + 注册表 - platforms 表去除 method/url/headers/body/balance_path,新增 provider_id - 现有数据库已一次性迁移(备份 data/monitor.db.bak-v1),不保留迁移工具 - 平台 UI 改为选择内置提供方;fetcher/monitor 走 provider 构建请求与解析 - 表达式引擎(运算符/函数)随架构保留,供 provider 内部使用 - 测试更新至 provider 模式,共 92 个
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
"""DeepSeek 开放平台余额。
|
||||
|
||||
接口:GET https://api.deepseek.com/user/balance
|
||||
响应:{"is_available": true, "balance_infos": [{"currency": "CNY", "total_balance": "1.34", ...}]}
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from app.expr import evaluate_balance
|
||||
from app.providers.base import BalanceProvider
|
||||
|
||||
|
||||
class DeepSeekProvider(BalanceProvider):
|
||||
id = "deepseek"
|
||||
name = "DeepSeek"
|
||||
currency = "CNY"
|
||||
icon = "DeepSeek"
|
||||
description = "DeepSeek 开放平台余额(GET /user/balance,Bearer 认证)"
|
||||
|
||||
def build_request(self, api_key: str) -> tuple[str, dict, str | None]:
|
||||
return (
|
||||
"https://api.deepseek.com/user/balance",
|
||||
{"Accept": "application/json", "Authorization": f"Bearer {api_key}"},
|
||||
None,
|
||||
)
|
||||
|
||||
def extract_balance(self, data: object) -> float:
|
||||
return evaluate_balance(data, "balance_infos[0].total_balance")
|
||||
Reference in New Issue
Block a user