WEBSTORM erkennt .send Funktion nicht?

Bei folgendem Code sind die Methoden .send und .awaitReaction unterstrichen.

"Unresolved function or method send()"

Ich habe discord.js und so schon installiert. Muss man da sonst noch etwas importieren, damit .send usw. funktionieren?

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

const TOKEN = 'Mein Token';
const channelId = 'ChannelID'; // Die ID des Textkanals, in dem die Nachrichten erstellt werden sollen

const userGroup = []; // Die Liste der Benutzer, die aufgelistet werden sollen
const options = ['Option 1', 'Option 2', 'Option 3', 'Option 4', 'Option 5']; // Die Auswahlmöglichkeiten

let currentIndex = 0; // Aktueller Index der Benutzergruppe

client.on('ready', () => {
    console.log(`Eingeloggt als ${client.user.tag}`);
});

client.on('messageCreate', async (message) => {
    console.log("P - Start des Event-Handlers");
    if (message.author.bot) return;

    if (message.content.startsWith('!start')) {
        console.log("P - !start erkannt");
        if (currentIndex < userGroup.length) {
            const user = await client.users.fetch(userGroup[currentIndex]);

            // Erstelle eine Nachricht mit den Auswahlmöglichkeiten
            const embed = new MessageEmbed() // Hier MessageEmbed verwenden
                .setTitle('Wähle eine Option:')
                .setDescription(options.join('\n'));
            const sentMessage = message.guild.channels.cache.get(channelId);
            await sentMessage.send(embed);
            console.log("P - Nachricht gesendet");
            // Füge Reaktionen hinzu
            for (let i = 0; i < options.length; i++) {
                await sentMessage.react(String(i + 1) + '\u20E3'); // Emoji-Reaktionen (1️⃣, 2️⃣, usw.)
            }

            // Warte auf eine Reaktion des aktuellen Benutzers
            const filter = (reaction, user) => user.id === userGroup[currentIndex];
            const collected = await sentMessage.awaitReactions(filter, { max: 1, time: 60000 }); // 60 Sekunden Zeit zum Reagieren

            if (collected.size === 0) {
                message.guild.channels.cache.get(channelId).send(`${user.tag} hat keine Option ausgewählt.`);
            } else {
                const chosenOption = options[parseInt(collected.first().emoji.name) - 1];

                message.guild.channels.cache.get(channelId).send(`${user.tag} hat "${chosenOption}" ausgewählt.`);
                // Hier kannst du die gewünschte Aktion ausführen, basierend auf der ausgewählten Option
            }

            // Lösche die ursprüngliche Nachricht und die Auswahl-Nachricht
            await message.delete();
            sentMessage.delete();

            currentIndex++; // Zum nächsten Benutzer in der Gruppe wechseln
        } else {
            message.channel.send('Alle Benutzer aus der Gruppe wurden aufgelistet.');
        }
    }
});
console.log('Bot starting');

client.login(TOKEN);
JavaScript, Code, node.js, Discord, Discord Bot, Discord.js
Discord.js Level Roles?
  //level system


  bot.on('message', function(message){
    if(message.author.bot) return;
    var addXP = Math.floor(Math.random() * 5) + 1;


    if(!xpfile[message.author.id]){
      xpfile[message.author.id] = {
        xp: 0,
        level: 0,
        reqxp: 100
      }


      fs.writeFile("./xp.json",JSON.stringify(xpfile),function(err){
        if(err) console.log(err)
      })
    }


  xpfile[message.author.id].xp += addXP


  if(xpfile[message.author.id].xp > xpfile[message.author.id].reqxp){
    xpfile[message.author.id].xp -= xpfile[message.author.id].reqxp
    xpfile[message.author.id].reqxp *=1.5
    xpfile[message.author.id].reqxp = Math.floor(xpfile[message.author.id].reqxp)
    xpfile[message.author.id].level += 1


    message.reply("ist auf Level **"+ xpfile[message.author.id].level +"** aufgestiegen.")
  }



  fs.writeFile("./xp.json",JSON.stringify(xpfile),function(err){
    if(err) console.log(err)
  
  //level roles


var role = message.guild.roles.cache.find(role => role.name === "test");


if(xpfile[message.author.id].level == 1)message.member.guild.roles.add(role);


  //rank command


  if(message.content.startsWith("fg!rank")){


    let user = message.mentions.users.first() || message.author


    if(!xpfile[user.id]) return message.channel.send("Dieser User hat noch keine XP gefarmt.")


    const rank = new Discord.MessageEmbed()


    .setTitle("**RANK**")
    .setColor("GREEN")
    .setAuthor(user.tag,user.avatarURL({dynamic:true}))
    .addField("Level: ",xpfile[user.id].level)
    .addField("XP: ",xpfile[user.id].xp +"/"+ xpfile[user.id].reqxp)


    message.channel.send(rank)
  }


    })


  })

Hey, ich habe ein LevelSystem in Discord.js gecodet.

Es funktioniert sehr gut, aber bei den LevelRoles gibt es ein Problem.

Es kommt kein Error oder sonstiges, aber der Bot vergibt die Role nicht. Weiß jemand woran das liegt?

Computer, JavaScript, node.js, Discord, Discord Bot, Discord.js
Discord.js Herausfinden ob User in einen Voice Channel ist / Musik in Channels Spielen?

Hallo, ich versuche grade einen Bot zu Programmieren, der herausfindet ob ein User in einem Channel ist und dann direkt reagiert.

Was soll er machen:

  • Erkennen, ob ein User in einem Channel ist
  • -> Wenn ja: In einen Channel gehen und Musik spielen

Was ich bis jetzt als Code habe. Leider geht dieser nicht und ich frage mich, ob es auch anders bzw. einfacher geht:

client.on('voiceStateUpdate', (newmember)=> {
    let newvoice = newmember.voiceChannel;
    // let warteChannel = member.voiceChannel.get(channel[ServiceWorkerRegistration.id][warteChannel]);
        if (newvoice === 54478085972XXX) {
        let annChannel = client.guilds.voiceChannel.get(54493151978XXXXXX);
        annChttps://www.youtube.com/XXX);44XXXXXXX, https://www.youtube.com/XXX);
        };
});

Hier zu sagen ist, dass annChannel der Channel ist, in den der Bot gehen soll und warteChannel der Channel ist, in dem der Bot User finden soll, also testen soll, ob in diesem Channel User sind.

Aktuell, wenn man diesen Code nun laufen lässt, gibt es keine Fehlermeldung, aber es passiert leider auch nichts.

Ich würde sehr freuen, wenn mir einer Erklären könnte, wie man einfach nun herausfinden kann in JAVASCRIPT, ob ein User in einem Voice Channel ist und wie man einfach einen Bot ein YouTube Video abspielen lässt.

Danke schon einmal im Voraus. PartyGamerXXL

Computer, programmieren, JavaScript, Discord Server, Discord Bot, Discord.js

Meistgelesene Fragen zum Thema Discord.js