Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

104
Visualizações
¿El filtro awaitMessages no se ejecuta .entonces?

Estoy ejecutando un aviso de dm desde mi bot, donde el jugador debe responder antes de que el bot continúe preguntando. Configuré un filtro para que el bot no detecte ni cuente su propio mensaje, pero no parece estar activando la función ".then()".

Mi código:

 let filter = m => m.author.id != client.user.id channel.awaitMessages(filter, {max: 1, time: 1000*180, errors: ['time']}) .then(msg => { console.log("got to the then") let replymsgobject = msg.first() let reply = replymsgobject.content let checkstringarr = [ "payment", "about", "team", "requirements" ] if (contains("or", reply, checkstringarr)) { channel.send(`Your post doesn't follow the format.`) } else { channel.send(`succesfully set your post message, would you like to add any extra comments?`) let filter = m => m.author.id != client.user.id channel.awaitMessages(filter, {max: 1, time: 1000*120, errors: ['time']}) .then(replymsg => { if (contains("only", replymsg.content, "no")) { //some stuff } else { //some stuff } }) .catch(collectedcatchmsg => { channel.send(`timed out`) }) } }) .catch(collectedcatchmsg => { channel.send(`timed out`) })
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

@Toasty dijo (lo siento, Toasty), "esperará hasta que termine el tiempo". Esto es incorrecto , le dará la promesa una vez que, por ejemplo, se haya alcanzado el máximo de mensajes.

¿Por qué esperaría 3 minutos si obtiene la respuesta requerida en 10 segundos?

Ahora estoy un poco perdido, ¿quieres que el ejecutor de comandos responda a ese recolector de mensajes o no? Porque en este momento su filtro no acepta ningún mensaje enviado por el ejecutor del comando/remitente del mensaje.

Para arreglar esto, simplemente edite su filtro

 const filter = m => m.author.id === message.author.id;

si desea que se recopile el mensaje de otra persona y no los autores del mensaje, entonces haría

 const filter = m => m.author.id !== message.author.id;
about 4 years ago · Juan Pablo Isaza Relatório

0

¡Resulta que hubo 2 errores! En primer lugar, se suponía que el diccionario de filtros estaba dentro de la tabla con los requisitos, etc. El segundo error fue usar != en lugar de !== Gracias a @Patrik por ayudar aquí!

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda