Estaba haciendo un comando de juego en discord.js, pero cuando intento editReply , no pasa de eso... Intenté poner los registros de la consola antes y después, y el siguiente no se ejecutó. Intenté usar await interaction.deferReply() , y eso se quedó en BotName is thinking... . Los argumentos se pasan correctamente y no hay ningún error.
Aquí está el código:
async execute(client, interaction, args) { await interaction.reply(`valid string here`) // does send let num = Math.floor((Math.random() * (args[0] || 1000)) + 1); //get random number let guesses = 0; let logs = ["None"]; console.log("Running 1") // logs await interaction.editReply( `valid string here` ) console.log("Running 2") // doesn't log and doesn't edit // ... } Después de usar client.on("debug") y client.on("warn") , parece que obtengo un 429, pero ni siquiera estoy en bucle, y funcionó bien ayer
Hit a 429 while executing a request. Global : false Method : patch Path : /webhooks/---/messages/@original Route : /webhooks/:id/---/messages/@original Limit : Infinity Timeout : 500ms Sublimit: 1130000msLo más probable es que su nueva edición de la pregunta responda a su pregunta. Si aloja un bot en la repetición (especialmente con alojamiento gratuito), es probable que su bot comparta una IP con otros bots alojados en la repetición. Los límites de velocidad de Discord se aplican en función de la IP que solicita la API. Todo lo que se necesita para que ocurra este error es que otra persona en replit (cuyo bot comparta la misma IP que la suya) cree un bot de discordia mal diseñado o malintencionado que envíe spam a la API y haga que la IP de su bot tenga una tasa limitada. En este caso, asumo que alguien estaba usando .editReply() demasiado en un bucle mal diseñado o algo así.
En cuanto a una solución a este problema, encontré esta publicación de repetición . Sugiere que puede "ejecutar kill 1 en la pestaña de shell para destruir el contenedor actual y cambiar a uno nuevo". Esa publicación es de hace 10 meses, por lo que puede o no funcionar ahora. (Si esto no funciona, una solución alternativa también podría ser bifurcar su propia respuesta y luego eliminar la original. Esto también puede cambiar su bot a una nueva IP).