Как да накарате бот на discord да изпраща съобщения до конкретен бот на канал за discord Node js

Така че искам моят discord бот да може да изпраща съобщения до определен канал, за да може да приема доклади и да отговаря на тях, така че ако го направя ;report {message}, той поставя съобщението в определен канал или dm


person Vakors 3000    schedule 25.05.2021    source източник
comment
Това отговаря ли на въпроса ви? Как да изпратите съобщение до конкретен канал   -  person First dev    schedule 26.05.2021


Отговори (1)


Така че първо е много просто, ще ви покажа моя пълен код и вашия синтаксис

const channel = client.channels.cache.get('CHANNEL ID HERE')
channel.send('MESSAGE OR VARIABLE')

Въпреки че, за да стартирате това, трябва да импортирате discord js, така че сега ще ви покажа моя пълен бот

const Discord = require('discord.js');
const client = new Discord.Client();
client.on("disconnected", function () {
    // alert the console
    console.log("Disconnected!");

    // exit node.js with an error
    process.exit(1);
});
client.on('ready', async () => {
    console.log('Bot is ready');
    client.user.setActivity('Blood Samurai', { type: 'STREAMING', url: 'https://www.youtube.com/watch?v=hOyfFPwas_A&t=324s' });
})
/** Direct Message Command */  
client.on('message', msg => { // Message function
    if (msg.author.bot) return; // Ignore all bots
    //Report Command
    if (msg.content.startsWith(";report ")) { // When a player does '!report'
        if (msg.content.slice(8) === '') return
        const help = msg.content.slice(8)
        const url = msg.author.avatarURL
        const exampleEmbed = new Discord.MessageEmbed()
            .setColor('#de0000')
            .setTitle('Oktan`s Report System')
            .setDescription('```lua\n--[TYPE]--\nServer reports\n--[DESCRIPTION]--\nServer reports deal with Moderation, request and assistance.\n--[SENDER]--\n' +msg.author.tag+ '\n--[REPORT INFORMATION]--\n' + help + '```')
          .setFooter('Please report random and usless reports to an admin -Server Staff Team','https://www.pinclipart.com/picdir/middle/74-746204_open-disclaimer-png-clipart.png',)
          const channel = client.channels.cache.get('ID HERE')
          channel.send(exampleEmbed);
        msg.channel.send('Your message will be moderated soon.')
      }
 });
client.login('TOKEN HERE')

Това ще ви позволи да накарате команда за доклад да промени тази команда на каквото пожелаете и да я промените на това, което желаете.

person Vakors 3000    schedule 25.05.2021
comment
ЗАБЕЛЕЖКА: ТОЗИ ФРАГМЕНТ НЕ МОЖЕ ДА СЕ ИЗПЪЛНЯВА ВЪТРЕ В STACK OVERFLOW - person Vakors 3000; 25.05.2021
comment
Само първото изречение и кодовият блок са свързани с въпроса - person Elitezen; 26.05.2021