I'm trying to read a channel and give a roll only if the string is the same as in my .txt but when I send a message in the channel with the right channel Id, it didn't even send me a message in the console.
I thought it would read and continue my code but nothing happened.
const Discord = require('discord.js');
const fs = require('fs');
const client = new Discord.Client({
intents: [
Discord.GatewayIntentBits.Guilds,
Discord.GatewayIntentBits.GuildMembers,
Discord.GatewayIntentBits.MessageContent,
Discord.GatewayIntentBits.GuildPresences,
],
});
const validStringsPath = 'valid_strings.txt';
client.once('ready', () => {
console.log(`Logged in as ${client.user.tag}`);
});
client.on('message', async (message) => {
if (message.channel.id === '1144023627419897937') {
// Remplacez YOUR_CHANNEL_ID par l'ID de votre canal
const content = message.content;
// Charger les chaînes de caractères valides depuis le fichier texte
let validStrings = fs
.readFileSync(validStringsPath, 'utf8')
.split('\n')
.map((str) => str.trim());
if (validStrings.includes(content)) {
const role = message.guild.roles.cache.find(
(role) => role.name === 'reseller',
); // Remplacez 'Nom du rôle' par le nom du rôle à attribuer
if (role) {
await message.member.roles.add(role);
// Retirer la chaîne de caractères utilisée du fichier texte
validStrings = validStrings.filter((str) => str !== content);
fs.writeFileSync(validStringsPath, validStrings.join('\n'));
console.log(`Attributed role and removed string: ${content}`);
} else {
message.channel.send("Le rôle spécifié n'existe pas sur ce serveur.");
}
// Supprimer le message de l'utilisateur
message.delete().catch(console.error);
} else {
// Envoyer un message en message privé en cas d'échec
message.author.send('Wrong key');
// Supprimer le message de l'utilisateur
message.delete().catch(console.error);
}
}
});