Skip to content

Webhook 配置

本服务支持通过 Webhook 接收来自 Emby、Jellyfin、Plex 等媒体服务器的通知,实现新媒体入库后的弹幕自动搜索和导入。

Webhook管理

1. 获取 Webhook URL

  1. 在 Web UI 的 "设置" -> "Webhook" 页面,您会看到一个为您生成的唯一的 API Key

  2. 根据您要集成的服务,复制对应的 Webhook URL。URL 的通用格式为:

    http://<服务器IP>:<端口>/api/webhook/{服务名}?api_key=<你的API_Key>
    • <服务器IP>: 部署本服务的主机 IP 地址。
    • <端口>: 部署本服务时设置的端口(默认为 7768)。
    • {服务名}: webhook界面中下方已加载的服务名称,例如 embyjellyfinplex
    • <你的API_Key>: 您在 Webhook 设置页面获取的密钥。
  3. 现在已经增加拼接URL后的复制按钮

2. 配置媒体服务器

对于 Emby

  1. 登录您的 Emby 服务器管理后台。
  2. 导航到 通知 (Notifications)。
  3. 点击 添加通知 (Add Notification),选择 Webhook 类型。
  4. Webhook URL 字段中,填入您的 Emby Webhook URL,例如:
    http://192.168.1.100:7768/api/webhook/emby?api_key=your_webhook_api_key_here
  5. 关键步骤: 在 事件 (Events) 部分,请务必只勾选以下事件:
    • 项目已添加 (Item Added): 这是新媒体入库的事件,其对应的事件名为 新媒体添加
  6. 确保 发送内容类型 (Content type) 设置为 application/json
  7. 保存设置。

对于 Jellyfin

  1. 登录您的 Jellyfin 服务器管理后台。
  2. 导航到 我的插件,找到 Webhook 插件,如果没有找到,请先安装插件,并重启服务器。
  3. 点击 Webhook 插件,进入配置页面。
  4. Server Url 中输入jellyfin 访问地址(可选)。
  5. 点击 Add Generic Destination
  6. 输入 Webhook Name
  7. Webhook URL 字段中,填入您的 Jellyfin Webhook URL,例如:
    http://192.168.1.100:7768/api/webhook/jellyfin?api_key=your_webhook_api_key_here
  8. 关键步骤: 在 Notification Type 部分,请务必只勾选以下事件:
    • Item Added: 这是新媒体入库的事件,其对应的事件名为 新媒体添加
  9. 关键步骤: 一定要勾选 Send All Properties (ignores template) 选项。
  10. 保存设置。

对于 Plex

方式一:Plex 原生 Webhooks(需要 Plex Pass,有局限性)

  1. 登录您的 Plex 服务器管理后台。
  2. 导航到 设置 -> Webhooks
  3. 点击 添加 Webhook
  4. URL 字段中,填入您的 Plex Webhook URL,例如:
    http://192.168.1.100:7768/api/webhook/plex?api_key=your_webhook_api_key_here
  5. 保存设置。

⚠️ 重要限制:

  • 需要 Plex Pass 订阅
  • 无法处理批量入库:当您一次性添加多集剧集时(如第1-7集),Plex 原生 webhook 只会发送一个剧集级别的通知,无法获取具体的集数信息
  • 本服务只会处理 library.new 事件(新媒体入库),其他事件会被忽略

方式二:通过 Tautulli(强烈推荐)

为什么推荐 Tautulli?

  • 解决批量入库问题:完美处理连续剧集入库(如一次性添加第1-7集)
  • 无需 Plex Pass:免费使用,无订阅要求
  • 精确事件控制:只在真正需要时触发,减少无用请求

详细配置步骤:

  1. 安装 Tautulli

    • 访问 Tautulli 官网 下载并安装
    • 配置 Tautulli 连接到您的 Plex 服务器
  2. 创建 Webhook 通知

    • 登录 Tautulli 管理后台
    • 导航到 Settings -> Notification Agents
    • 点击 Add a new notification agent,选择 Webhook
  3. Configuration 标签页配置

    • Webhook URL: 填入您的 Plex Webhook URL:
      http://192.168.1.100:7768/api/webhook/plex?api_key=your_webhook_api_key_here
    • Webhook Method: 选择 POST
  4. Triggers 标签页配置

    • 勾选 Recently Added(新媒体入库事件)
    • 其他事件保持不勾选
  5. Data 标签页配置

    • 展开 Recently Added 部分
    • JSON Data 字段中填入以下模板:
      json
      {
        "media_type": "{media_type}",
        "title": "{title}",
        "show_name": "{show_name}",
        "season": "{season_num}",
        "episode": "{episode_num}",
        "release_date": "{air_date}",
        "user_name": "{username}",
        "action": "created"
      }
  6. 保存并测试

    • 点击 Save 保存配置
    • 可以使用 Test 功能验证配置是否正确

📚 相关文档

基于 AGPL-3.0 许可发布