Skip to content

架构总览

Emby Toolkit 由 Web 服务、任务系统、实时监控、数据持久化与外部服务集成组成,整体呈现“事件触发 + 批量调度”的混合模式。

组件视图

  • Web 应用层web_app.py 负责启动 Flask 服务、注册蓝图与初始化处理器。
  • 核心处理器MediaProcessorcore_processor.py)负责元数据处理、翻译、补全与回写。
  • 任务系统task_manager.py + tasks/ 目录负责调度任务与任务链执行。
  • 实时监控monitor_service.py 使用 watchdog 监听媒体目录变更。
  • 反向代理reverse_proxy.py 负责虚拟库与自建合集的代理输出。
  • 数据库层database/connection.py 定义核心表结构与索引。
  • 前端 UIemby-actor-ui 构建 Web 管理界面,构建产物由后端提供静态资源。

运行时流程(简化)

  1. 入口脚本(Docker)生成 Nginx 配置并启动 Web 服务。
  2. web_app.py 加载配置与数据库,初始化处理器实例。
  3. 任务调度器加载任务链(高频/低频),按 Cron 执行。
  4. Webhook 与实时监控将新媒体事件转为处理任务。
  5. 处理器从 TMDb/豆瓣/本地源补全元数据,写入数据库并回写 Emby。
  6. 需要时触发合集维护、封面生成与通知推送。

数据流与控制流

  • 数据流:外部数据源 → 处理器解析 → 数据库持久化 → Emby 回写。
  • 控制流:Web UI/API 操作 → 任务队列 → 处理器执行 → 结果回显。

Emby Toolkit - Emby 增强管理工具