- 一个 Discord 账号
- 一个你有管理权限的 Discord 服务器
- 打开 Discord Developer Portal:
https://discord.com/developers/applications - 点击 New Application
- 输入名称(如 "Twitter Sync Bot")并创建
- 在左侧菜单选择 Bot
- 点击 Add Bot
- 在 TOKEN 部分点击 Reset Token 获取 Bot Token
- 复制并保存 Token(只显示一次!)
在 Bot 页面:
- 确保
Send Messages权限开启 - 滚动到 Privileged Gateway Intents 部分,开启 Message Content Intent(否则 Bot 可能无法读取消息内容)
- 左侧菜单选择 OAuth2 → URL Generator
- Scopes 勾选
bot - Bot Permissions 勾选
Send Messages - 复制生成的 URL,在浏览器中打开
- 选择目标服务器并授权
- 在 Discord 中打开设置 → 高级 → 开启 开发者模式
- 右键点击你想接收通知的频道
- 点击 复制频道 ID
编辑 .env 文件:
DISCORD_BOT_TOKEN=your_bot_token_here
DISCORD_CHANNEL_ID=your_channel_id_here
部署后运行测试模式,检查 Discord 频道是否收到消息:
docker exec twitter-sync python main.py --test你应该在频道中看到一条测试消息。
服务会发送以下类型的通知:
| 图标 | 级别 | 触发场景 |
|---|---|---|
| 🔴 | CRITICAL | Cookie 过期、API Key 失效 |
| 🟠 | ERROR | 推文发布永久失败、同步崩溃 |
| 🟡 | WARNING | 日限额、敏感内容 |
| 🔵 | INFO | 服务启动、测试、日报 |
- Bot Token 是敏感凭证,不要公开分享
- 如果 Token 丢失,回到 Developer Portal → Bot → Reset Token 生成新的(旧 Token 立即失效)
- 建议创建专用频道接收通知,避免干扰其他对话
- 如果 Bot 无法发消息,检查频道权限设置
- Discord API 有频率限制,服务已内置重试和队列机制
- Discord 通知是可选功能——不配置
DISCORD_BOT_TOKEN和DISCORD_CHANNEL_ID服务仍然正常运行,只是没有告警和日报