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

187
Vistas
DJS: sustracción de quick.db en la eliminación de mensajes en un canal específico si la víctima es un bot

Estoy tratando de lograr un contador de la cantidad de mensajes en mi canal para sugerencias. El código para contar hacia arriba funciona perfectamente. Pero estoy luchando por restar la activación de la eliminación del mensaje y solo hacerlo si el autor del mensaje es un bot. De ahí el (target.id === '953904462701948938') .

Estoy usando quick.db como mi base de datos.

Soy nuevo en Discord JS y en la codificación en general: dos semanas en el juego, por lo que también se agradece cualquier sugerencia para mejorar mi código.

 var dbSuggestionMinus = new db.table('counterM'); dbSuggestionMinus.set('minus', 0); let dbSuggestionSubtract = parseInt(); client.on('messageDelete', async message => { let logs = await message.guild.fetchAuditLogs({ type: 72 }); let entry = logs.entries.first(); const {executor, target} = entry; if (target.id === '953904462701948938') { db.subtract('counterM.minus', 1); dbSuggestionSubtract = await db.fetch('counterM.minus'); } })

Tengo un canal para sugerencias que incrusta el mensaje enviado por el usuario y elimina el mensaje del usuario. Esto parece desencadenar el evento, que creo que es el problema. Si registro target.id, obtengo la identificación del bot cuando el bot realiza la eliminación. Solo quiero restar si la víctima es el bot.

Algo a lo que no he llegado es a hacer que este evento sea específico para un canal, lo cual solicito en el título. Pero ese es el siguiente paso.

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

0

Supongo que estaba complicando demasiado las cosas. Esto funcionó bien.

 var dbSuggestionMinus = new db.table('counterM'); dbSuggestionMinus.set('minus', 0); let dbSuggestionSubtract = parseInt(); client.on('messageDelete', async message => { if (message.channel.id === '918462969975812166' && message.author.bot) { db.subtract('counterM.minus', 1) } })

Hay algunos inconvenientes obvios con lo que quería lograr. Pero espero que esto se pueda usar para otras cosas.

about 4 years ago · Juan Pablo Isaza Denunciar

0

target.id // gives you message id target.author.id // this is what you need
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