#javascript #discord #bots
Вопрос:
Проблема в том, что бот Discord не отправляет приветственное сообщение, когда присоединяется новый участник.
версия узла 16
discord.js является ли v13
Терминал не показывает ошибок. И это код:
bot.on('ready', () =>{
console.log('This bot is online!');
})
bot.on('guildMemberAdd', guildMember=>{
const User = guildMember.user
const channel = guildMember.guild.channels.cache.find(channel => channel.id == '798928691988004897');
console.log(User)
const embed = new Discord.MessageEmbed()
.setColor('#0099ff')
.setTitle('Welcome')
.setDescription(`Welcome to the server <@${User.id}>`)
.setThumbnail(`${User.avatarURL()}`)
channel.send({embeds :});
});
Ответ №1:
Похоже, у вас не включены намерения «член гильдии», чтобы бот мог обнаруживать изменения, внесенные в членов гильдии
перейдите на портал разработчика Discord, перейдите к своему приложению и включите server member
намерение const { Intents, Client } = require('discord.js'); // require other classes as per your bot needs
const intents = [Intents.FLAGS.GUILD_MEMBERS]; // Add other related intents
const bot = new Client({ intents: intents });
// finish your code with events and stuff
Комментарии:
1. Так что это будет выглядеть так:
const { Intents, Client } = require('discord.js'); const bot = new Client({ intents: intents }); const Discord = require('discord.js') const bot = new Discord.Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_MEMBERS] });
@EJBEAN Правильно?2. я уже объявил константу бота, вам не нужно объявлять ее снова
3.
{intents: intents}
это не нужно. Просто поставь{ intents }