Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Frage bezüglich Discord Bot
#1
Code:
const { Client, GatewayIntentBits } = require('discord.js');
const client = new Client({
  intents: [
    GatewayIntentBits.Guilds,
    GatewayIntentBits.GuildMessages,

  ]
});

const TOKEN = 'BOT_TOKEN';
const CHANNEL_NAME = '📸bilder';

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

  // Start the timer to check for messages without images every 60 seconds
  setInterval(checkForNonImageMessages, 60 * 1000);
});

client.on('messageCreate', async (message) => {
  console.log("Nachricht gesendet");

  // Check if the message is in the designated channel
  if (message.channel.name !== CHANNEL_NAME) return;
  console.log("Channel erfolgreich erkannt");

  // Check if the message has any attachments or mentions
  const hasAttachment = message.attachments.size > 0;

  // If the message has no attachment, mention, or reaction, delete it
  if (!hasAttachment && !message.thread) {
    console.log(`Nachricht wurde gelöscht`);
    try {
      await message.delete();
    } catch (error) {
      console.error(`Error deleting message: ${error}`);
    }
  }
});

async function checkForNonImageMessages() {
  const channel = client.channels.cache.find(c => c.name === CHANNEL_NAME);
  const messages = await channel.messages.fetch();

  messages.forEach(async (message) => {
    // Check if the message has any attachments or mentions
    const hasAttachment = message.attachments.size > 0;

    // If the message has no attachment, mention, or reaction, delete it
    if (!hasAttachment && !message.thread) {
      console.log(`Nachricht ohne Bild gefunden. Nachricht wird gelöscht.`);
      try {
        await message.delete();
      } catch (error) {
        console.error(`Error deleting message: ${error}`);
      }
    }
  });
}

client.login(TOKEN);
Ich habe hier einmal einen Discord bot Skript eingefügt der normalerweise alle in dem 📸bilder gesendeten Nachrichten prüfen sollte ob diese Bilder sind. Und sollten es keine Bilder sein werden sie gelöscht. Außer sie wurden in einen Thread geschrieben. Und das ist nun die Theorie aber in der Praxis funktioniert der Code nicht denn es werden nicht nur die normalen Text Nachrichten gelöscht sondern auch die Bilder. Was nicht so schön ist deswegen wollte ich fragen ob jemand noch eine idee hat diesen Code so zu verbessern das er auch das tut was er tuen soll. Und nein ich habe nicht bei BOT_TOKEN das vergessen wegzumachen und durch einen eigenen Bot Token zu ersetzen. Und ja der Bot hat genug Berechtigungen. Das Problem ist nur das er Dinge Löscht die er gar nicht löschen soll. 
Zitieren


Nachrichten in diesem Thema
Frage bezüglich Discord Bot - von Hurald - 24.02.2023, 21:49
RE: Frage bezüglich Discord Bot - von admin - 14.03.2023, 20:03

Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
3 Gast/Gäste