Recientemente noté que aún se pueden realizar interacciones incluso si un usuario no está en un gremio, este es el caso, por ejemplo, en el modo de vista previa del servidor
Esto me está causando algunos problemas.
¿alguien sabe si hay una forma conveniente de detectar si el usuario que creó la interacción es un miembro del gremio? ¿O podría bloquear todas las interacciones de los miembros que no pertenecen al gremio?
puede buscar usuarios en el gremio y regresar si es nulo.
var user = guild.users.cache.find(user => user.id === 'USER-ID') if(!user) returnPuede usar Guild.members.cache.some para determinar si el usuario existe.
const exists = interaction.guild.members.cache.some(x => x.id == interaction.user.id)Puedes probar el siguiente fragmento de código:
const user_exists = (<interaction>.guild.users.cache.find(user => user.id === <interaction>.user.id)) ? true : falseEsto devolverá verdadero si el usuario existe y falso si no, para que pueda ejecutar una verificación:
if(!user_exists) // Tell the person they cannot run the command