in this form if possible
client.on('messageUpdate', (oldMessage, newMessage) => {
const words = ['word1', 'word2']
});
Tried using embed.title.includes('word') but did not work
If there is an embed in a message, you can get the embeds' data through message.embeds. This return an array of MessageEmbed in the message if exist or null if there is no embed. Now you just check each the embed, parse it to JSON and get its properties(embed.title, embed.description, etc...).
Here is an example of getting embeds' data:
const embeds = message.embeds?.map(embed => embed?.toJSON()); // Get array of message embeds parsed to JSON
if (!embeds) return; // Return if no embed in the message
let include = false; // Define the variable to check in each embed
for(let i = 0; i < embeds.length; i++) { // Loop through the embeds gotten from message
const embed = embeds[i];
// The variables below are the embed's part which can contain string
const title = embed.title;
const description = embed.description;
const footer = embed.footer?.text; // footer maybe null, put ? after footer won't throw error "Can not read property of null (reading 'text')"
if (title?.includes('word') || description?.includes('word') || footer?.includes('word')) { // Check if the embed contains 'word' or not
include = true; // The embed contains the word, so set `include` to true
break; // We now have what we need, destroy the loop
}
}
if (include) console.log('The message embeds contain the `word` word!');
else { console.log('The message embeds don\'t contain the `word` word.'); }