Discord.js 봇이 언급되면 응답합니다.

Sep 10 2020

내 discord.js 봇이 핑될 때 메시지를 보내도록하려고합니다. 이 작업을 수행하는 방법을 잘 모르기 때문에이 코드를 참조했습니다.

client.on('message', message => {
    if (message.content === '<@745648345216712825>') {
        message.channel.send('Message Here');
    }
});

그러나 이것은 작동하지 않습니다.

또한 봇이 응답하는 메시지에서 사용자가 내가 언급 한 경우와 같이 특정 사용자가 특정 사용자를 언급 할 때 내 봇이 응답 할 수 있습니까? 그렇다면 어떻게하는지 보여줄 수 있습니까?

답변

3 Jakye Sep 10 2020 at 15:50

Message에는 mentions메시지에 언급 된 모든 채널, 구성원, 역할 및 사용자가 포함 된 속성 이 있습니다. 의 방법 .has(data, [options])을 사용 MessageMentions하여 봇이 언급되었는지 확인할 수 있습니다.


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

    if (message.content.includes("@here") || message.content.includes("@everyone")) return false;

    if (message.mentions.has(client.user.id)) {
        message.channel.send("Hello there!");
    };
});