无管理员权限的Discord源服务器频道消息自动转发至自有服务器方案咨询
实现前提说明
因为你在源服务器ServerFROM无添加机器人权限,无法使用官方机器人的网关事件做实时监听,所有方案均需使用Discord用户账号令牌(User Token)实现消息拉取,该操作违反Discord服务条款,存在账号被封禁风险,建议使用闲置小号操作,风险自行承担。
可行方案
方案1:GitHub Actions 定时触发(零成本,适合低实时性需求)
不需要长驻设备,用GitHub提供的定时运行能力实现定时拉取转发:
- 逻辑思路:不做实时监听,每隔固定时间拉取
ChannelFROM的最新消息,和上一次拉取记录的最后一条消息ID比对,存在新消息时自动转发到ChannelTO - 操作步骤:
- 新建私有GitHub仓库,所有代码和配置必须放在私有仓库避免密钥泄露
- 编写简单的Python/Node.js脚本:
- Python可以使用
discord.py-self库,Node.js可以使用discord.js-selfbot-v13库 - 脚本逻辑:验证用户令牌 → 拉取
ChannelFROM最新10条消息 → 读取存储的上一次处理的最新消息ID → 筛选出所有ID大于该值的新消息 → 依次转发到ChannelTO→ 更新存储的最新消息ID
- Python可以使用
- 把Discord用户令牌、
ChannelFROM频道ID、ChannelTO频道ID存入GitHub Secrets,禁止硬编码到脚本中 - 编写GitHub Actions Workflow配置,设置cron定时触发规则,间隔建议设为5-10分钟,不要低于2分钟避免触发Discord速率限制
- 优缺点:完全零成本,无需自己维护服务器,但存在最高10分钟的转发延迟,GitHub Actions调度偶尔会有波动
方案2:云函数定时触发(低成本,稳定性优于GitHub Actions)
适合对稳定性要求更高、不想自己维护服务器的场景:
- 逻辑思路和方案1完全一致,只是把运行环境从GitHub Actions换成国内/海外云厂商的Serverless云函数产品
- 操作步骤:
- 把上述脚本部署到阿里云/腾讯云/AWS Lambda等云函数平台
- 配置定时触发器,触发间隔可设为3-5分钟
- 密钥存在云函数的环境变量配置中即可
- 优缺点:单月成本基本在1元以内,大部分厂商有免费额度,调度稳定性远高于GitHub Actions,延迟更低
方案3:轻量云服务器长驻自机器人(中等成本,实时性最高)
适合需要无延迟实时转发的场景:
- 逻辑思路:运行长驻的自机器人脚本,通过用户账号的网关事件实时监听
ChannelFROM的新消息,收到新消息立刻转发 - 操作步骤:
- 选购最低配的海外轻量云服务器(1核1G配置即可,年成本大概50-100元),必须选海外节点否则无法连接Discord
- 把自机器人脚本部署到服务器,用
pm2等进程管理工具挂在后台运行即可
- 优缺点:转发无延迟,稳定性最高,成本可控,需要简单维护服务器运行状态
注意事项
- 转发时建议同步处理附件、Embed、引用消息等内容,避免只转发纯文本导致信息缺失
- 不要设置过高的拉取频率,也不要批量转发历史消息,避免触发Discord风控
- 不要把你用到的用户令牌、频道ID等敏感信息泄露给第三方,也不要提交到公开代码仓库
内容的提问来源于stack exchange,提问作者Moore's Lawyer
相关产品推荐
相关产品推荐

