WebhockTransfer/.trae/documents/Webhook中继系统 - Admin后台升级计划.md
houhuan 2bc7460f1f feat: 初始化Webhook中继系统项目
- 添加FastAPI应用基础结构,包括主入口、路由和模型定义
- 实现Webhook接收端点(/webhook/{namespace})和健康检查(/health)
- 添加管理后台路由和模板,支持端点、目标、渠道和模板管理
- 包含SQLite数据库模型定义和初始化逻辑
- 添加日志记录和统计服务
- 包含Dockerfile和配置示例文件
- 添加项目文档,包括设计、流程图和验收标准
2025-12-21 18:43:12 +08:00

1.8 KiB
Raw Permalink Blame History

Webhook中继系统 - Admin后台升级计划

1. 核心变更:数据库驱动配置

  • 引入 SQLite + SQLAlchemy 替代静态 config.yml
  • 存储模型:
    • Target转发目标Webhook名称、URL、超时
    • RemarkRuleremark值到目标列表的映射imcgcd03 -> [Target A, Target B])。
    • EventTemplate事件模板event_define_no -> 模板文本)。
    • NotificationChannel通知渠道类型feishu/wecom、Webhook URL、名称
    • EventChannelBinding事件到渠道的绑定pay.ali_scaned -> [Channel A, Channel B])。

2. Admin后台界面

  • 基于 FastAPI + Jinja2 + Bootstrap 提供简易管理UI。
  • 功能页面:
    • 目标管理:增删改查转发目标。
    • 路由规则:配置 remark 对应的目标列表。
    • 通知模板:编辑不同事件的通知文案。
    • 通知渠道:添加飞书/企业微信机器人链接。
    • 通知绑定:将事件与通知渠道关联。

3. 系统架构调整

  • app/db.py:数据库连接与模型定义。
  • app/admin.py管理后台路由与CRUD逻辑。
  • app/config.py改为混合模式优先从DB加载动态配置保留文件配置作为默认值/种子数据。
  • app/services/relay.py & notify.py适配新的DB驱动配置查询。

4. 实施步骤

  1. 依赖更新:添加 sqlalchemyjinja2python-multipart
  2. 数据层实现定义ORM模型与初始化脚本支持从现有yaml导入种子数据
  3. 后台UI实现创建HTML模板与FastAPI路由。
  4. 配置适配:改造 load_config 逻辑支持热重载或每次请求查询DB。
  5. 构建与部署更新Dockerfile重新构建并运行验证后台配置生效。