基于 WTelegramClient 的 Telegram 多账户管理面板(.NET 8 / Blazor Server),用于批量管理账号、统计与管理频道/群组、执行批量任务。
docs/modules.md)Telegram 对新号/风控号的限制比较敏感;本项目提供了很多“批量/高频”能力,请务必谨慎使用。
点击展开/收起截图
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
面向小白:git clone → docker compose up → 浏览器打开 → 登录改密码 → 配置 ApiId/ApiHash。
git clone https://github.com/moeacgx/Telegram-Panel
cd Telegram-Panel
docker compose up -d --build
启动后访问:http://localhost:5000
adminadmin123登录后到「修改密码」页面改掉即可。
到 https://my.telegram.org/apps 用任意一个 Telegram 账号申请一次 api_id / api_hash,然后在面板「系统设置」里保存即可。
说明:不需要每个账号都申请,全站共用这一对
api_id/api_hash就能工作。
容器内所有持久化数据统一挂载到宿主机 ./docker-data:
./docker-data/telegram-panel.db./docker-data/sessions/./docker-data/appsettings.local.json./docker-data/admin_auth.json当仓库有新功能或 Bug 修复时,执行以下命令更新:
# 进入项目目录
cd Telegram-Panel
# 拉取最新代码
git pull origin main
# 重新构建并启动
docker compose down
docker compose up -d --build
如果执行 git pull 时提示冲突或报错,说明本地有未提交的修改与远程代码产生了冲突。
方案一:保留本地修改(推荐)
# 暂存本地修改
git stash
# 拉取最新代码
git pull origin main
# 恢复本地修改(可能需要手动解决冲突)
git stash pop
方案二:放弃本地修改,强制同步远程(适合小白)
# 备份重要数据(数据库、Session 文件等在 docker-data/ 目录,不会被删除)
# 如果本地有未提交的代码修改,执行以下命令会丢失!
# 获取远程最新代码
git fetch origin
# 强制重置到远程版本
git reset --hard origin/main
# 重新构建
docker compose down
docker compose up -d --build
注意:
git reset --hard会丢弃所有本地未提交的代码修改,但不会影响docker-data/目录里的数据库和 Session 文件,这些数据依然安全保留。
如果更新后 Docker 构建失败,提示找不到某个类或文件:
# 确认代码版本是否正确
git log --oneline -1
# 应该显示最新的提交记录,如果不是,执行强制更新:
git fetch origin
git reset --hard origin/main
# 清理 Docker 缓存后重新构建
docker compose down
docker system prune -af
docker compose build --no-cache
docker compose up -d
Blazor Server 需要 WebSocket(/_blazor),反代必须支持 Upgrade。
说明:项目已兼容部分“默认反代不透传 Host/Proto”导致的登录跳转问题(不会再跳到 http://localhost/...),但 WebSocket 与部分场景仍建议把 X-Forwarded-* 头透传完整。
Nginx 示例(完整说明见 docs/reverse-proxy.md):
location / {
proxy_pass http://127.0.0.1:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
dotnet run --project src/TelegramPanel.Web
项目已支持“可安装/可卸载”的模块扩展(任务 / API / UI),用于后续按需扩展能力、按场景自由定制开发自己的模块,而不是把功能写死在核心里。
面板入口:
X-API-Key 鉴权)内置扩展只是示例(可按需启用/停用,也可自行开发/上传模块):
POST /api/kick(配置入口:面板左侧菜单「API 管理」)powershell tools/package-module.ps1 -Project <csproj> -Manifest <manifest.json>,产物默认输出到 artifacts/modules/以下模块为扩展能力示例的“增强版/商业版”,默认不免费开放;如需获取请联系:TG @SNINKBOT。
更多说明见:docs/modules.md(模块目录结构、manifest、任务/API/UI 扩展点)。
docs/README.md(索引)docs/import.md(压缩包批量导入结构)docs/sync.md(同步说明 + 自动同步)docs/reverse-proxy.md(Nginx/Caddy 反代,含 WebSocket)docs/api.md(接口速查)docs/database.md(数据库/表结构说明)docs/advanced.md(配置项/数据目录/后台任务等)docs/modules.md(模块系统:可安装/可卸载/依赖/回滚)