Files
115reelay/docs/quickstart.md
T

11 KiB
Raw Permalink Blame History

快速开始

从零到第一条资源整理入库。开始前请先读一遍 免责声明。

1. 准备账号

需要什么 从哪里来 必需
Telegram api_id / api_hash 用个人账号登录 https://my.telegram.org → API development tools 是
115 账号 启动后在管理台扫码登录 是
控制 Bot Token 在 Telegram 找 @BotFather 创建一个 Bot 推荐
你的 Telegram 数字 ID 给 @userinfobot 发任意消息 推荐
AI 服务(OpenAI 兼容接口) 任意兼容服务或本地模型 推荐
TMDB API Key 或 Read Access Token https://www.themoviedb.org/settings/api 可选

缺了推荐项也能用,只是少一些自动化:

  • 没有控制 Bot:审批卡片和告警只写日志,在管理台审批;
  • 没有 AI 服务:识别降级为规则匹配,每条资源都要你确认;
  • 没有 TMDB:没有规范片名、海报和按类型地区的分类,识别结果也更容易需要确认。

监听用的是你的个人账号,只能读到这个账号本来就能看到的消息,所以要先在 Telegram 里关注频道,或者和 Bot 对话过。

2. 启动

Docker(推荐)

需要 Docker Compose v2.24 及以上。不需要源码,只要一个 compose.yaml:

mkdir reelay && cd reelay
curl -fsSLO https://raw.githubusercontent.com/Derrors/reelay/main/compose.yaml
docker compose pull
docker compose up -d web

管理台在 http://127.0.0.1:28080。默认拉取最新正式版;要固定版本,在同目录建一个 .env 写上 REELAY_VERSION=<版本号>(如 1.0.0,见 Releases)。

本机运行

需要 Python 3.12 与 Node.js(构建管理台):

git clone https://github.com/Derrors/reelay && cd reelay
python3.12 -m venv .venv && source .venv/bin/activate
pip install -e ".[all]"
(cd web && npm ci && npm run build)
python -m reelay.web

Tip

想先看看整条流程怎么走,可以运行 python -m reelay.main --dry-run:它用内置配置、样例消息和内存里的网盘走完监听到入库的全过程,打印每条任务的处理轨迹和整理后的目录,不读本机的配置与密钥,不需要任何账号,也不访问网络。

3. 填写设置

第一次打开管理台会先要求设置登录密码(至少 8 个字符),设好后直接进入控制台。局域网里的其他设备也能完成这一步,但要用 IP 地址打开(如 http://192.168.1.10:28080),用域名打开时不能做首次设置。

然后依次完成:

  1. 设置 → 网络代理(国内网络需要):填写代理地址(如 Clash 的 http://192.168.1.2:7890),点「测试代理」确认 Telegram、TMDB 与 AI 服务都能连上。终端里的 Telegram 登录也会用这个代理。
  2. 设置 → Telegram:填写 api_id / api_hash、控制 Bot Token 和你的数字 ID。
  3. 设置 → AI 与 TMDB:填写 AI 接口地址与密钥,从接口返回的列表里选择模型,点「测试连通性」确认能用;再填写 TMDB 密钥。
  4. 设置 → 115 网盘:用 115 App 扫码登录。

所有设置保存在 data/ 目录:配置在 data/config.yaml,密钥单独存放在 data/secrets.json,页面上只显示「已设置」。

4. 登录 Telegram 并开始监听

登录个人账号需要输入验证码(开了两步验证还要输入密码),在交互终端里完成:

# Docker
docker compose run --rm --no-deps -it worker python -m reelay.login
docker compose up -d

# 本机运行(另开一个终端)
python -m reelay.login
python -m reelay.main

总览页「运行状态」里的「后台 Worker」「Telegram 监听」「115 网盘」都显示正常,就说明已经在运行了。还没登录 Telegram 时主进程也能启动,「Telegram 监听」显示「未登录」,登录后自动接上,不用重启。

5. 设置保存目录

设置 → 基础 → 保存目录:新增目录别名(如「电影」「剧集」),点「选择 115 目录」从网盘里选中文件夹。别名与默认的一级分类同名时,资源会按「电影 / 国产电影」这样的二级目录自动归类。

6. 添加监听来源

Reelay 只处理你添加的来源发来的消息。来源可以是资源 Bot、频道或群组。监听用的是你的个人账号,所以先在 Telegram 里关注这个频道、加入群组,或者和 Bot 对话过:账号看不到的消息,Reelay 也收不到。

来源怎么填

来源 填什么
有用户名的 Bot、频道、群组 @username,不区分大小写
没有用户名的私有频道、群组 以 -100 开头的数字 ID。在 Telegram 里复制它一条消息的链接,形如 https://t.me/c/1234567890/42,在 c/ 后面那串数字前加上 -100,即 -1001234567890

添加方式

用样例消息接入(推荐,需要先配好 AI 服务):点「设置 → 监听来源 → 用样例消息接入」。

  1. 填来源,贴几条这个来源最近的消息,资源、广告、闲聊都可以,最多 10 条;
  2. AI 起草这个来源的设置,包括确认方式、识别方式、保存到、集数依据、必须包含的词与屏蔽关键词。然后用这份设置把样例逐条试跑,列出每条会直接转存、交给你确认,还是忽略;如果这个来源以前批准过的消息会被关键词挡掉,也会标出来;
  3. 满意就点「加入来源列表」,再点页面底部的保存。

手动添加:点「添加来源」,填来源,确认方式先选「人工确认」,其余沿用「基础」里的默认设置,然后保存。

来源卡片上的设置

设置 说明
确认方式 「人工确认」:每条符合要求的资源都等你确认;「AI 处理」:识别与规则都通过就直接转存,拿不准的仍交给你。新来源先用人工确认,确认得够多后再改
识别方式 「AI 识别」(推荐);「规则识别」:不调用 AI,按识别规则提取,适合格式规整的来源
放行方式 识别出的资源哪些直接转存、哪些等你确认、哪些忽略。「规则判断」:只按过滤规则和确认方式;「规则 + 订阅放行」(推荐):再让订阅的剧的新集直接转存;「AI 按偏好判断」:再让 AI 按「收藏偏好」筛一遍,只会更严,不会把等你确认的改成直接转存
Bot 通知 推送审批卡片与入库通知;关掉后在管理台「待审批」处理,出问题的提醒照常发送
保存到 这个来源的资源存到哪个保存目录
高级设置 「消息必须包含」(如 115,不含就跳过、不调用 AI)、「包含这些词直接忽略」(如「广告」)、收藏偏好

各项的完整说明见 配置参考。

测试识别与识别规则

  • 测试识别:在卡片上点「测试识别」,贴一条这个来源的真实消息。它会按卡片上当前的设置(包括还没保存的修改)完整识别一遍,显示识别结果、置信度和最后会怎么处理。

  • 识别规则:AI 识别不准,或者不想调用 AI 时,点「设置识别规则」。

    1. 准备样例:点「获取最近消息」,用监听账号读取这个来源最近的 10 条消息(需要主进程在运行、Telegram 已连接,读不到时改用已经收到的消息);也可以手动粘贴。
    2. 写规则:点「AI 生成规则」起草,或者自己按字段写正则(片名、年份、季、集、分辨率、大小)。
    3. 点「试跑」看每条样例的提取结果,满意后点「保存规则」。

    用 AI 识别时,规则提取的结果会作为参考一起交给 AI;AI 不可用时按规则识别兜底。正则写法见 配置参考 的 parse_rules。

生效与排查

保存后不用重启,约 1 秒后开始监听。新加的来源从这时起接收新消息,不导入以前的历史消息。

加了来源却一直没有动静时,依次检查:

  1. 总览「运行状态」里的「Telegram 监听」是不是「已连接」;
  2. 个人账号有没有关注这个频道、加入群组,或者和 Bot 对话过;
  3. 来源是否填对:用户名拼写,私有频道要用 -100 开头的数字 ID;
  4. 消息到了但没被处理时,「任务」里能看到它显示为「已忽略」或「已过滤」,点开看处理轨迹里的原因,比如不含「消息必须包含」里的词。

推荐来源

还不知道从哪里开始,可以先试试 @QukanMovie:一个持续发布影视资源 115 分享的公开频道,作者日常在用,Reelay 的识别与整理在它的消息上验证得最充分。

  1. 在 Telegram 里打开 @QukanMovie,点「加入」关注频道;
  2. 回到「设置 → 监听来源」,用「添加来源」填 @QukanMovie,也可以用「用样例消息接入」;
  3. 作者用的设置可以直接照抄:
    • 「消息必须包含」:115.com、115.cn、115cdn.com,每行一个;
    • 「包含这些词直接忽略」:广告、招商;
    • 识别方式「AI 识别」,放行方式「规则 + 订阅放行」;
    • 确认方式先用「人工确认」,觉得识别靠谱了再改为「AI 处理」。

Note

这个频道由第三方运营,与 Reelay 无关。Reelay 不对它发布的内容负责,也不保证它一直可用;是否使用、转存哪些内容由你自行判断,并遵守所在地的法律与版权规定,详见 免责声明。

7. 处理第一条资源

来源发出新消息后:

  1. 管理台的待审批出现一张资源卡片(配置了控制 Bot 的话,Telegram 里同时收到一张带按钮的卡片),点「转存」;
  2. 任务依次经过 queued → saving → stored → organizing → done,115 的目标目录下出现按媒体库规范命名的文件夹和文件,Telegram 收到入库通知;
  3. 有问题时,在任务里点开这条任务查看完整处理轨迹,或在侧栏工具 → 运行日志查看主进程日志。

接下来

  • 少审批:在待审批里对在追的剧点「追这部剧」,之后的新集自动转存;其余条目可以按建议批量处理。
  • 写偏好:在「设置 → 基础」用一句话描述想要什么、不要什么,AI 起草成过滤与分类规则,确认后生效。
  • 放手自动:确认得够多之后,「监听来源」和总览会提示哪些来源可以「改为 AI 处理」:AI 识别、规则都通过就直接转存,拿不准的仍交给你。
  • 用手机或 Agent 操作:给控制 Bot 发「待审批里有什么」,或用 MCP 让 Claude 帮你处理,见 Agent 接入。
  • 长期运行:升级、备份与故障处理见 部署与运维;全部设置项见 配置参考。