Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

309
Views
los eventos `messageUpdate` y `messageDelete` no "funcionan" después de reiniciar el bot

Bueno, los eventos messageUpdate y messageDelete no "funcionan" después de reiniciar el bot

Es decir, no responden a los mensajes que se enviaron antes del reinicio.

Agregué MENSAJE a parciales

Ahora los eventos funcionan, pero hay un problema con el retorno if (message.author.bot) return if (newMessage.author.bot) return si (mensaje.autor.bot) y, en general, con message|newMessage.author|member etc.

Aquí están los errores:

 TypeError: Cannot read properties of null (reading 'bot') at module.exports.run (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\events\messageDelete.js:14:28) at Slodziak.<anonymous> (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\aslodziak.js:40:43) at Slodziak.emit (node:events:527:28) at Slodziak.emit (node:domain:475:12) at MessageDeleteAction.handle (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\node_modules\discord.js\src\client\actions\MessageDelete.js:24:16) at Object.module.exports [as MESSAGE_DELETE] (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_DELETE.js:4:32) at WebSocketManager.handlePacket (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\node_modules\discord.js\src\client\websocket\WebSocketManager.js:346:31) at WebSocketShard.onPacket (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\node_modules\discord.js\src\client\websocket\WebSocketShard.js:478:22) at WebSocketShard.onMessage (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\node_modules\discord.js\src\client\websocket\WebSocketShard.js:317:10) at WebSocket.onMessage (C:\Users\ALL\Desktop\Slodziak\Slodziak13vCanary\node_modules\ws\lib\event-target.js:199:18)

¿Alguien puede ayudar? Necesito estos MENSAJES parciales para actualizar el mensaje porque el bot no respondió a los mensajes que se enviaron después del reinicio. Más concretamente al automod, es decir, que borre las invitaciones si alguien ha editado el mensaje y no tiene permisos.

messageUpdate

 module.exports = class { constructor(client) { this.client = client; } async run(oldMessage, newMessage) { const data = {}; const client = this.client; data.config = client.config; if (newMessage.author.bot) return; if (!newMessage.editedAt) return; code that deleted invites if member has not permissions } };

messageDelete

 module.exports = class { constructor(client) { this.client = client; } async run(message) { const data = {}; const client = this.client; data.config = client.config; if (message.author.bot) return; Code that snipes deleted message } }
about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

El error significa que newMessage.author es null . Ya sabía que necesitaría usar los parciales de MESSAGE .

El problema es que no verifica si el mensaje recibido es solo parcial.

Un mensaje parcial no contendrá todos los parámetros del Message original. El id , el channelId y el guildId estarán presentes, pero otros, como author , pueden ser null .

Para resolver esto, deberá verificar si su mensaje es solo parcial, y si lo es, puede fetch y usarlo como de costumbre:

 module.exports = class { constructor(client) { this.client = client; } async run(oldMessage, newMessage) { const data = {}; const client = this.client; data.config = client.config; if (oldMessage.partial) oldMessage = await oldMessage.fetch(); if (newMessage.partial) newMessage = await newMessage.fetch(); if (newMessage.author.bot) return; if (!newMessage.editedAt) return; // code that deleted invites if the member has no permissions } };
about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!