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

237
Vistas
¿Cómo detectar si un usuario ha reaccionado a una reacción incrustada de un mensaje en discord js y le envía un mensaje?

Soy nuevo en Discord y Discord js y lo que estoy tratando de hacer aquí es que deseo que mi bot de Discord detecte si un usuario acaba de reaccionar a un emoji con ese mensaje. El emoji aquí es [:caja de herramientas:]. Estoy usando un bot de terceros para enviar el mensaje en el canal donde el usuario reaccionará con un emoji y el bot de terceros le asignará el rol. Una vez hecho esto, necesito enviar un mensaje personal al usuario. Aquí está mi código

 if(reaction.msg.id == "910907568459759617"){ console.log("Reaction detected.Sending a message to the user in dm"); reaction.author.send("Holla Can you send me your email id ?"); }

Ni siquiera puedo detectar ningún cambio o ningún clic realizado en el emoji de reacción en ese mensaje. Por favor ayuda.

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

0

Lo que está buscando es el método Message.createReactionCollector .

Primero debe declarar el objeto <Message> que representa el mensaje en el que desea crear el recopilador de reacciones. Una forma de hacerlo sería a través de un ID de canal donde se envía el mensaje y un ID de mensaje. Al igual que:

 const message = await (await <Client>.channels.fetch(CHANNEL_ID)).messages.fetch(MESSAGE_ID);

Obviamente, no estoy manejando ningún rechazo de Promesa en estos ejemplos por motivos de simplicidad. Luego puede usar el método createReactionCollector mencionado anteriormente para esperar y manejar reacciones en este mensaje:

 const collector = message.createReactionCollector(<ReactionCollectorOptions>); collector.on("collect", <Reaction> => { //TODO }); collector.on("end", <Collection> => { //TODO });
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