Переключите команду приветствия для discord.js v12

#discord.js

Вопрос:

Я создал код, который приветствует новых участников на определенном канале, но я хочу переключить его. Если сотрудник использует !greet #channel , то приветствие будет включено в канале#. И если они используют !greet , это отключает приветствие для сервера.

Событие в гильдии

 client.on('guildMemberAdd', member =>{
    const channel = member.guild.channels.cache.find(ch => ch.name == 'welcome');
    if(!channel) return;
    channel.send(`Welcome to **${member.guild.name}**, ${member}!`)
    .then(message =>{
        message.delete({ timeout: 5000 })
    })
    .catch(console.error);
}); 
 

Подробная информация

Я просто хочу сделать это командой переключения, и я не уверен, как это сделать. Я был бы рад получить ранний ответ.

Ответ №1:

Поэтому, чтобы переключить, на какой канал будет отправлено приветственное сообщение, вам нужно сохранить идентификатор канала где-нибудь в базе данных или прикрепить его к гильдии через collection .set . После этого в вашем случае перед отправкой сообщения вы получаете информацию от идентификатора гильдии, если он уже установил канал приветствия, поэтому отправьте сообщение на этот канал, в противном случае ничего не делайте

Комментарии:

1. Ладно, дай мне попробовать.

2. Я не знаю, как это сделать.

3. Я бы посоветовал вам использовать бд, если ваш бот перезапустится, и вы потеряете настройки, если вы .set()

4. Да, я использую MongoDB, и он работает по мере необходимости. Спасибо за помощь ^-^