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

280
Vistas
Make a bot wait for some time before continuing the code

Is there any way to make a bot wait for some time (for example 5 seconds) before continuing the code? I need something like:

client.on('messageCreate', message => { 
message.channel.send('1st message')
wait(5000)
message.channel.send('2nd message')
wait(5000) 
message.channel.send('3rd message')
})

I tried using setInterval, like many people suggest, but that doesn't seem to be a solution for me. Also I can't use await setTimeout(time) because of SyntaxError: await is only valid in async functions and the top level bodies of modules and TypeError [ERR_INVALID_CALLBACK]: Callback must be a function. Received 5000

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

0

You can promisify setTimeout with Node's Util library. Then make the messageCreate callback asynchronous.

const wait = require('util').promisify(setTimeout);

client.on('messageCreate', async message => { 
   message.channel.send('1st message')
   await wait(5000)
   
   message.channel.send('2nd message')
   await wait(5000) 
   
   message.channel.send('3rd message')
})
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