首页 > 解决方案 > 如果他们 ping 所有者,如何编写机器人以发送消息

问题描述

我试图让机器人在所有者被 ping 时说出一条消息,有点像这样。

用户:@JetSamsterGaming 请回复。

机器人:(删除消息)@User 您无法 ping JetSamsterGaming!

谢谢!

标签: node.jsdiscorddiscord.jsbots

解决方案


Message有一个名为mentions( )的属性MessageMentions,其中包含所有提及(角色、频道、成员、用户)。

您可以使用MessageMentions.has()来检查消息中是否提到了所有者。


const Discord = require("discord.js");
const client = new Discord.Client();

const ownerId = "ID";

client.on("message", async message => {
    if (message.author.bot) return false;

    if (message.mentions.has(ownerId)) {
        await message.delete();
        message.reply(`You cannot ping my owner!`);
    };
});

client.login(process.env.DISCORD_AUTH_TOKEN);

推荐阅读