Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

110
Vistas
Cómo leer contenido de usuario DiscordBot en Javascript

Hola estoy programando un bot de chat de discord, que cuando el comando '!ayuda' se dirige a un canal de texto determinado, el bot escribe un mensaje directo a la persona que escribió el comando para responder una serie de preguntas, este es el código que hice por ahora:

 const {Client, RichEmbed, Intents, MessageEmbed} = require('discord.js'); const bot = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.DIRECT_MESSAGES] }); const token = 'TOKEN'; const PREFIX = '!'; bot.on('ready', () => { console.log(`Logged in as ${bot.user.tag}!`); }) bot.on('messageCreate', message => { let args = message.content.substring(PREFIX.length).split(" "); switch (args[0]) { case 'help': const Embed = new MessageEmbed() .setTitle("Helper Embed") .setColor(0xFF0000) .setDescription("Make sure to use the !help to get access to the commands"); message.author.send(Embed); break; } }); bot.login(token);

El bot me escribe al DM del usuario que solicito el comando, pero no he podido solucionar, que segun lo que responde el usuario el robot responde con otra informacion, y tambien que el usuario puede responder con reacciones.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Si solo desea esperar a que lleguen algunos mensajes, puede usar awaitMessages . Tiene algunas opciones, como la cantidad de mensajes a esperar, el tiempo durante el cual recopilará los mensajes y un filtro opcional. Un ejemplo:

 const filter = (message) => { // Do some validation } message.channel.awaitMessages({ time: '', // The time the collector is valid for in milliseconds max: '', // The number of messages the collector will wait for filter, error: ['time'] // Give an error when the timer runs out so the .catch function runs }).then(collected => console.log(collected)) // Console log all the collected messages .catch(collected => console.log(`${collected.size} messages were collected`))

Pero si está usando botones, entonces un simple messageComponentCollector servirá. Incluso en esto, tiene las mismas opciones que awaitMessages , como el tiempo, la cantidad máxima de mensajes y el filtro. Ejemplo:

 const filter = (click) =. { // Do some validation } const collector = message.channel.createMessageComponentCollector({ time: '', // The time the collector is valid for in milliseconds max: '', // The number of messages the collector will wait for filter }) collector.on('collect', i => console.log(i)); collector.on('end', collected => console.log(`Collected ${collected.size} items`));
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda