Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

112
Views
Discord.js messageCollector no recopilará mensajes

Estoy tratando de crear un bot de discordia, que puede crear un hilo y, después de ejecutar un comando, recopilar los mensajes. Ahí está mi código:

 require('dotenv').config(); const { SlashCommandBuilder, EmbedBuilder } = require('discord.js'); module.exports = { data: new SlashCommandBuilder() .setName('start') .setDescription('Start the story'), async execute(interaction, client) { ... const filter = () => true; client.collectors.set(`collector${channel.id}`, channel.createMessageCollector({ filter, time: 30000, max: 1000 })); const collector = client.collectors.get(`collector${channel.id}`); collector.on('collect', m => { console.log(`Collected ${m.content}`); }); collector.on('end', collected => { console.log(`Collected ${collected.size} items`); }); ... }, };

Mi primera idea fue que después de ejecutar el comando, el recopilador se eliminará de la memoria, es por eso que le di al cliente una propiedad, una colección llamada recopiladores, pero el evento recopilar aún no se ejecutará y el evento final solo se ejecutará después el hilo se elimina, o cuando finaliza el límite de tiempo, pero luego registra "0 elementos recopilados" a pesar de que se enviaron mensajes.

Intenté crearlo en una función en index.js pero eso tampoco ayudó.

Actualización: agregado () => true como filtro, no cambió nada ...

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Resolví el problema agregando GatewayIntentBits.GuildMessages y GatewayIntentBits.MessageContent a las intenciones del cliente en index.js, por lo que la línea donde creo el objeto del cliente ahora se ve así:

 const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent] });
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!