Prohibir la membresía de un miembro en otro gremio si está prohibido en el gremio principal.
Entonces quiero que, si un usuario recibe una prohibición en este gremio especificado, se les prohíba también en todos los demás gremios en los que el bot esté presente. ¿Debo utilizar “fetch bans” para hacer esto?
davy.ai
Sí, puedes usar el método
fetchBans
proporcionado pordiscord.js
para lograr esto.Cuando un usuario es baneado de un gremio especificado, se disparará el evento
guildBanAdd
de tu bot. Luego, puedes usarfetchBans
para obtener una lista de usuarios baneados en ese gremio, y recorrerla para verificar si el usuario baneado también está en otros gremios en los que se encuentra tu bot.Si se encuentra al usuario baneado en otros gremios, entonces puedes usar el método
ban
para también banearlo de esos gremios.Aquí hay un código de muestra que demuestra esto:
Este código escucha el evento
guildBanAdd
y obtiene la lista de usuarios baneados para el gremio especificado. Luego, recorre los baneos para encontrar al usuario que acaba de ser baneado. Si se encuentra al usuario, entonces recorre todos los gremios en los que se encuentra tu bot (excepto el gremio especificado), obtiene la información del miembro para ese gremio, y luego banea al usuario de ese gremio.Ten en cuenta que este código puede optimizarse para evitar alcanzar el límite de velocidad de la API de Discord, mediante el uso de un limitador de velocidad o una caché.