You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Discord.js代码将违规@提醒发送到其他指定频道

调整方案

你只需要先获取要推送提醒的目标频道ID,替换原有回复逻辑即可,修改后的代码如下:

client.on('messageCreate', async message => {
    // 过滤机器人消息和私信场景
    if(message.author.bot || message.channel.type === `DM`) return;
    // 受保护的禁止提及用户ID
    const protectedUserId = `332599069027598336`;
    // 提醒推送目标频道ID,请替换为你自己的实际频道ID
    const alertChannelId = `替换为你的提醒频道ID`;

    if(message.mentions.members.get(protectedUserId)){
        // 拉取目标频道实例
        const alertChannel = await client.channels.fetch(alertChannelId).catch(err => console.log('获取提醒频道失败', err));
        // 校验频道存在且可发送消息后推送提醒
        if(alertChannel && alertChannel.isTextBased()){
            alertChannel.send(`用户 ${message.author} 提及了受保护用户 ${message.mentions.members.get(protectedUserId).user.tag}\n违规消息跳转链接:${message.url}`);
        }
    }
});

关键修改点说明

  • 提前声明了两个可配置常量,后续修改受保护用户、提醒频道时不用深入逻辑代码调整
  • 删除了原代码中在触发频道回复的message.reply()逻辑,改为从客户端实例拉取指定频道调用send()方法推送消息
  • 新增了异常捕获和频道类型校验,避免频道不存在、机器人无权限访问频道时触发运行报错
  • 额外追加了违规消息跳转链接,方便管理员直接定位到对应上下文

注意:使用前请确认机器人已经被授予目标提醒频道的「发送消息」权限,否则会出现推送失败的问题。

内容的提问来源于stack exchange,提问作者rs0021

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 22:27:02