Estoy tratando de crear un comando de advertencia que envíe un DM al usuario especificado para notificarlo. Aquí está el código específico que estoy tratando de usar:
const user = await client.users .fetch(interaction.options.getString("user"), false) .catch(() => null); console.log(interaction.options.getString("user")); const embed = new MessageEmbed() .setColor("#FCE100") .setTitle(`⚠️ Warning!`) .setDescription(`${interaction.options.getString("warning")}`); await user.send({ embeds: embed }).catch(() => { interaction.channel.send( "Error: user not found" ); }); El getString para el user obtiene correctamente al usuario, como probé desde console.log() . Solo puedo asumir que la sintaxis es de alguna manera incorrecta, aunque parece que no puedo encontrar la forma correcta de hacerlo. El único error que estoy recibiendo es:
TypeError: Cannot read properties of null (reading 'send')No necesita usar .getString() .
CommandInteractionOptionResolver#getString() lo hace por usted.
Asegúrese de tener el tipo de opción de usuario establecido en "USER" antes de ejecutar el código a continuación.
const user = interaction.options.getUser("user"); // ...