#discord.js
#discord.js
Вопрос:
я новичок в программировании и начал создавать бота discord, просмотрев несколько руководств. Я хочу, чтобы бот отправил DM для вставки discord пользователю, который вводит «-купить» в текстовом канале. При запуске кода бот подключается к Сети и выдает сообщение «ваше имя бота подключено!» но DM не отправляется. Я был бы очень признателен за любую помощь. Спасибо
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = '-';
client.once('ready', () => {
console.log('your bot name is online!');
});
client.on('message', message =>{
if(message.author.client) return;
const args = message.content.slice(prefix.length).trim().split(/ /g);
const command = args.shift().toLocaleLowerCase();
if(command === 'buy'){
const testEmbed = new Discord.MessageEmbed()
.setColor(0x7f03fc)
.setTitle('test embeddy')
.setDescription('test description woo')
.setFooter('this is the footer')
try {
message.author.send(testEmbed);
} catch {
message.reply('Sorry I cannot message you! Check if your DMs are public!')
}
}
});
client.login('');
проблема не в токене, я удалил его, чтобы загрузить здесь
Ответ №1:
message.author.client
Возвращает бот-клиент, и он не возвращает логическое значение. Итак, ваш бот заблокирован оттуда. Попробуйте удалить этот код и напишите message.author.bot
, который возвращает логическое значение, если автором сообщения является пользователь бота. Это сработает.
Комментарии:
1. Спасибо, что приняли! Если мой ответ полезен, пожалуйста, поддержите его (???)