Discord 机器人创建与配置指南
在开始编写代码前,先理清几个关键步骤。这能帮你避开很多常见的坑,比如权限不足导致收不到消息,或者 Token 泄露导致账号风险。
核心流程概览
- 在 Discord Developer Portal 创建应用(Application)
- 在应用中创建 Bot(Bot User)
- 开启必要的权限与 Privileged Intents(特别是 Message Content Intent)
- 生成邀请链接并把 Bot 邀请进你的服务器
- 获取 Bot Token 并妥善保存(放到环境变量)
- (可选)在服务器/频道设置权限,确认 Bot 可以读取消息历史与附件
- 用 Python 运行最小测试脚本,确认能接收到消息并处理附件
详细操作步骤
1. 创建应用(Application)
打开开发者门户:https://discord.com/developers/applications 点击 'New Application',填名称(例如:MyForwarderBot),点击创建。
2. 在应用中创建 Bot
左侧选择 'Bot' 标签页。 点击 'Add Bot' → 'Yes, do it'。 这会创建一个 Bot 用户;你可以修改头像、名字等,让它看起来更友好。
3. 开启 Privileged Gateway Intents(非常重要)
在 Bot 页面往下找到 'Privileged Gateway Intents' 部分:
- 打开 'Message Content Intent'(允许读取 message.content)。你需要开启它才能通过 SDK/库读取普通消息文本。
- 若你需要成员列表或 presence,也可按需打开 'Server Members Intent' 或 'Presence Intent'。
注意:如果你的 Bot 要加入 100+ 服务器,启用某些特权 intents 可能需要经过 Discord 的审核/验证。
4. 获取 Bot Token(千万别泄露)
在 Bot 页面中,点击 'Reset Token' 或 'Copy' 获取 Bot 的 token(例如 'Bot XXXXXXXXX…')。把它存到安全地方(本地 .env 或服务器环境变量)。 如果 token 泄露,立即在同一页面重置(Regenerate)。
5. 生成邀请链接并邀请 Bot 到你的服务器
在左侧选 'OAuth2' → 'URL Generator'。
- Scopes: 勾选 'bot'(如需 slash commands 也勾 'applications.commands')。
- Bot Permissions: 在这里勾选所需权限(建议至少勾选):
- View Channels (Read/View Channels)
- Read Message History
- Send Messages
- Embed Links
- Attach Files (如需上传)
- Manage Messages(可选)
- 页面底部会生成一个邀请链接(URL)。
复制该 URL,在浏览器打开并选择要把 Bot 添加到的服务器(你必须拥有该服务器的管理权限或有邀请权限)。
说明:不要手动猜 permissions 的整数值 — 用 OAuth2 页面勾选更安全。也可用手动构造:
https://discord.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&scope=bot%20applications.commands&permissions=PERMISSIONS_INTEGER
但推荐用页面生成器以避免权限错误。
6. 在目标服务器确认 Bot 权限
在服务器的角色设置中,确认 Bot 的角色拥有'View Channels'与'Read Message History'权限;在频道覆盖权限中也要允许读取消息。 若 Bot 无法读取 message.content,要检查是否已在开发者面板开启 Message Content Intent 并且你的代码在使用相应的 intents(见下例)。

