Linux.do 关键词实时推送 + Telegram 双向对话 Bot + 可视化面板,您需要一个Tg-Watchbot

Gongyi_Churen 2026-05-23 17:16 1

本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:



  • 我的帖子已经打上 开源推广 标签:

  • 我的开源项目完整开源,无未开源部分:

  • 我的开源项目已链接认可 LINUX DO 社区:

  • 我帖子内的项目介绍,AI生成、润色内容部分已截图发出:

  • 以上选择我承诺是永久有效的,接受社区和佬友监督:


以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出




主要功能概览: 双向对话 Bot + 论坛关键词推送 + 可视化面板 + tg群消息管理 + 广告屏蔽


更新日志


2026-05-22 更新



  • TG 群监听功能增强:支持可视化配置监听规则、AI 总结参数与防刷屏策略。

  • TG 群监听新增“已发现群聊”:自动显示 Bot 收到过消息的群聊 chat_id,可一键创建监听。

  • 新增 /update 安全更新流程:显示本地/远端 commit、ahead/behind、工作区状态;仅允许 ff-only 更新。

  • 更新前若检测到本地未提交改动,会拒绝更新;避免覆盖本地代码。

  • 新增“回滚上次更新”按钮:更新前自动记录回滚点,可一键回滚并重启。

  • TG 群监听 AI 总结新增可视化高级控制:ai_promptai_min_interval_secondsai_dedupe_window_seconds

  • TG 群监听增加限频和去重窗口,降低重复推送与 AI 调用成本;AI 失败时仍会回退模板摘要。

  • 监控面板新增可观测状态:最近成功/失败时间、最近错误、耗时、推送数、连续失败次数。


2026-05-21 第二次更新



  • Web 面板新增收件箱直接回复、用户管理、快捷回复、私聊广告拦截、监控推送历史、配置导入/导出。

  • 收件箱改为完整双向对话记录:用户消息、Web 回复、TG 管理员回复都会显示。

  • 用户管理页新增 Bot / 面板配置卡片,和设置页共用同一份配置;修改 Token、管理员 ID、端口、账号或密码后需要重启。

  • ADMIN_CHAT_ID 支持最多 3 个管理员,用逗号分隔。

  • 单个监控可关闭 Telegram 推送,只记录到 Web 推送历史。


2026-05-21



  • 默认启动改为先启动 Web 面板:未填写 TELEGRAM_BOT_TOKEN / ADMIN_CHAT_ID 时,面板仍可打开,同时 Telegram 收发、监控推送不可用。

  • 面板配置页可填写 Bot Token、管理员 ID、面板账号和清理策略;保存后需要重启服务让 Bot 配置生效。

  • 修复到期消息无法删除的bug:监控推送消息支持到期自动删除,默认 60 分钟。

  • 保存配置时会保留 WEB_PANEL_SESSION_SECRET,避免保存后登录状态被重置。

  • Web 面板界面和站点图标已更新优化。

    (新版安装方法详见项目地址)




最近看 TG 上不少人说封号比较严重。再加上我作为一个刚入门的 MJJ,平时也想更快地获取信息,所以 vibe 了一个自用小工具:tg-watchbot


它是一个轻量级 Python 服务,把 Telegram 双向对话 BotWeb/RSS 监控推送 合在一起,并提供网页端可视化管理面板。它适合放在 VPS、NAT 小鸡或者家里的小服务器上跑。


项目地址:



为什么做这个


我最开始的需求很简单:



  • 有一个自己的 Telegram 联系入口,别人私聊 Bot 后可以转发到管理员账号;

  • 能实时获取Linuxdo、博客、商店页面等信息源;

  • 命中关键词、新条目、价格变化或库存变化时,自动推送到 Telegram;

  • 有网页面板,不用每次都手改配置文件。


另外,项目支持定时清理监控推送相关状态数据,避免网页监控信息过多,影响正常的双向对话使用。


主要功能



  • 普通用户私聊 Bot,消息会转发给管理员

  • 管理员可以直接回复用户,也可以主动发文字 / 图片

  • 支持封禁、解封、备注、查看用户信息

  • 支持 RSS / Atom 监控

  • 支持网页 CSS selector 抓取

  • 支持关键词、新条目、价格变化、库存变化提醒

  • 内置 Web 管理面板

  • 可以在面板里新增、编辑、删除监控

  • 支持 RSS 模板

  • 使用 SQLite 保存用户、消息、监控状态

  • 支持 systemd 部署


展示









AI 一句话安装


请克隆 `https://github.com/GongyiChuren/tg-watchbot.git` 到本机,默认使用 Docker 按 README 的 `Docker 安装(含自启)` 启动服务;若无 Docker,则按 `快速开始` 走 Python 和 systemd 部署直接安装。启动后打开 `http://127.0.0.1:8765`,安装完成后提醒用户记得在面板填写 `TELEGRAM_BOT_TOKEN` 和 `ADMIN_CHAT_ID` 并在之后保存并执行重启(Docker 用 `docker compose restart`,直接安装用重启进程)。


Docker 安装(含自启)


git clone https://github.com/GongyiChuren/tg-watchbot.git tg-watchbot
cd tg-watchbot
cp .env.example .env
cp config.example.yaml config.yaml
touch tg-watchbot.sqlite3 tg-watchbot.log
docker compose up -d --build

Docker 会在容器内监听 0.0.0.0:8765,宿主机仍然打开 http://127.0.0.1:8765


查看状态与日志:


docker compose ps
docker compose logs -f

修改配置后重启:


docker compose restart


systemd 部署


推荐部署到 /opt/tg-watchbot


sudo useradd --system --no-create-home --shell /usr/sbin/nologin tg-watchbot || true
sudo mkdir -p /opt/tg-watchbot
sudo chown -R "$USER:$USER" /opt/tg-watchbot

cd /opt/tg-watchbot
git clone https://github.com/GongyiChuren/tg-watchbot.git .
python3 -m venv .venv
./.venv/bin/pip install -U pip
./.venv/bin/pip install -r requirements.txt
cp .env.example .env
cp config.example.yaml config.yaml

# 先用前台模式打开面板,确认能登录和保存配置
./.venv/bin/python app.py

在服务器本机打开:


http://127.0.0.1:8765

默认账号来自 .env.example


用户名:admin
密码:change-me


注意事项



  • Telegram Bot 不能主动私聊陌生人,对方必须先给 Bot 发过消息

  • .env 里有 Token 和密码,不要提交到 GitHub

  • Web 面板如果暴露到公网,建议套 Cloudflare Access / 反代鉴权

  • RSS 监控建议 60 秒起步

  • 网页监控建议更保守一点,避免对目标站造成压力


目前它还是一个自用小工具,目标是够轻、够直接、够容易部署。后续会继续修bug​^-^。

可以的话点个star吧,谢谢佬们^-^^-^^-^

最新回复 (10)
  • JAY730 05-23 19:11
    1

    好东西,谢谢,下下来研究一下,应该有用。

  • Gongyi_Churen 楼主 05-23 19:12
    2

    谢谢佬友支持,ai api接入目前还没测试,太忙了^-^

  • 双持金枪客 05-23 19:57
    3

    作为一个小白,啥都不太懂,就去问一下AI,感觉项目很不错,必须star^-^

  • Gongyi_Churen 楼主 05-23 20:28
    4

    谢谢佬支持^-^,这个双向机器人用来保护tg隐私的(前面因为防诈骗封号比较多),然后加了一些监测之类的,可以立马获取l站和n站的信息(别的有rss也行的),还可以监控tg群^-^

  • liusoon 06-13 22:37
    5

    这个面板好像前台登录进去有问题 不知道是不是普遍现象

  • Gongyi_Churen 楼主 06-13 23:31
    6

    什么问题嘞佬友,我修一下ლ(´ڡ`ლ)

  • liusoon 06-13 23:33
    7

    正常部署了之后填写用户名和密码无法和后台数据交互,没有反应

  • Gongyi_Churen 楼主 06-14 00:03
    8

    有显示“用户名或密码错误”吗?

    如果没有,只是闪一下又回登录页,那就是是登录 Cookie 没生效。

    建议用 SSH 隧道访问 http://127.0.0.1:8765 ,或者用 HTTPS 域名 / Cloudflare Tunnel。

  • liusoon 06-14 00:21
    9

    有显示用户名密码错误,不管怎么改就是不对

  • Gongyi_Churen 楼主 06-14 00:22
    10
    用户名:admin
    密码:change-me

    这是默认密码

* 帖子来源Linux.do
返回