@Daniel_Cap

Почему бот не реагирует на сообщения?

Бот ни в какую не реагирует на сообщения.

В консоли ничего кроме Logged in as "имя бота".

Бот стоит на vps с Ubuntu 20.04 64bit.

Версия Node 16.13.2.

При этом бот в сети.

Код:

const { Client, Intents } = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS] });

client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
});

client.on('interactionCreate', async interaction => {
  if (!interaction.isCommand()) return;

  if (interaction.commandName === 'ping') {
    await interaction.reply('Pong!');
  }
});

client.login('тут мой токен(с ним проблем нет)');
  • Вопрос задан
  • 877 просмотров
Решения вопроса 2
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MEMBERS, Intents.FLAGS.GUILD_MESSAGES] });

Intents Class
Intents Guide
Ответ написан
Комментировать
Alexandre888
@Alexandre888 Куратор тега discord.js
Javascript-разработчик
if (interaction.commandName === 'ping') {
    await interaction.reply('Pong!');
}

...требует наличия слэш-команды /ping, которую нужно инициализировать особым способом.
если вы просто хотите, чтобы бот ответил на "ping" => "Pong!", добавьте следующий блок кода:
client.on("messageCreate", message => {
    if (message.content === "ping") return message.reply("Pong!")
})

а также, отредактируйте константу client в начале кода:
- const client = new Client({ intents: [Intents.FLAGS.GUILDS] });
+ const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы