Бот выходит в Сеть, но встраиваемое сообщение не публикуется в discord

#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. Спасибо, что приняли! Если мой ответ полезен, пожалуйста, поддержите его (???)