Discord 通知
插件 ID: cn.hayashiume.discordwebhook配置文件: discord_webhook.json(通过管理面板管理)
| 参考内容 | 位置 |
|---|---|
| 配置 | 配置 |
| 指令 | 无 |
| 管理面板 | Discord 标签页 |
| HTTP API | 无 |
将服务器事件以富文本卡片转发到 Discord。两类事件各用独立的 webhook 地址,两个地址均为空时禁用。
配置
| 事件类别 | 覆盖事件 |
|---|---|
| 对局(Matchmaker) | 房间创建、开始、结束、销毁 |
| 管理(Admin) | 玩家被封禁、玩家被举报 |
在 config.json 中设置初始默认值:
json
{
"DiscordWebhook": {
"MatchmakerUrl": "",
"AdminUrl": ""
}
}| 键 | 默认值 | 说明 |
|---|---|---|
MatchmakerUrl | "" | 对局事件的 webhook 地址,留空禁用。 |
AdminUrl | "" | 管理事件的 webhook 地址,留空禁用。 |
优先级
config.json 中的值只是首次启动时的兜底默认值。一旦在管理面板保存过,实际配置就存放在 Data/DiscordWebhookData.json 并覆盖 config.json,此后修改 config.json 不会再生效。
两个地址可以指向同一个 webhook,把所有事件收进一个频道;也可以分开,让对局与管理通知各走各的频道。
管理面板
Discord 标签页 —— 在此编辑两个地址。保存立即生效,无需重启。
事件
对局事件
| 事件 | 卡片颜色 | 字段 |
|---|---|---|
| 房间创建 | 绿 | 房间代码、房主昵称、房主好友代码、地图、人数、内鬼数、房间备注 |
| 游戏开始 | 蓝紫 | 房间代码、地图、人数、内鬼数 |
| 游戏结束 | 紫 | 房间代码、结果、人数 |
| 房间销毁 | 灰 | 房间代码 |
管理事件
| 事件 | 卡片颜色 | 字段 |
|---|---|---|
| 玩家被封禁 | 红 | 玩家昵称、好友代码、房间代码 |
| 玩家被举报 | 黄 | 举报人、被举报人、双方好友代码、房间代码、举报原因 |
从 v1 迁移
旧版本使用单一 WebhookUrl 加按事件的布尔开关。
- 首次加载时,旧
WebhookUrl会自动复制到MatchmakerUrl与AdminUrl。 - 旧的
Enabled、NotifyOn*标志被忽略 —— 直接填写需要的地址即可。 - 经管理面板保存一次后,
discord_webhook.json即转为新格式。
故障排查
| 现象 | 检查项 |
|---|---|
| 消息没有送达 | 地址是否正确、webhook 是否仍在频道中启用、服务端日志中的 [Discord] 警告 |
| HTTP 错误 | Discord 限流或地址无效;失败时的状态码会记入日志 |
| 部分字段为空 | 昵称与好友代码来自客户端数据,客户端尚未完全连接时显示为 — |