如何检测消息中的嵌入?

2022-01-10 00:00:00 embed javascript discord.js

我正在尝试让我的机器人读取其他机器人的丰富嵌入,但我什至找不到从哪里开始做.我已阅读文档,但我仍然不知道该怎么做...
使用 if(message.content.includes(x)) 不起作用,我该怎么办?

I'm trying to make my bot read other bots' rich embeds, but I can't even find where to start doing it. I've read the docs, but I still have no idea what to do...
Using if(message.content.includes(x)) doesn't work, what can I do?

推荐答案

收到消息后,其嵌入存储在 <Message>.embeds:为了读取它们,您可以遍历该数组并查看每个嵌入的属性:

When a message is received, its embeds are stored in <Message>.embeds: in order to read them, you can loop through that array and look at each embed's properties:

client.on('message', message => {
  for (let embed of message.embeds) { // these are some of the properties
    console.log(`
    Title: ${embed.title}
    Author: ${embed.author}
    Description: ${embed.description}
    `);
    for (let field of embed.field) {
      console.log(`
      Field title: ${field.name}
      Field value: ${field.value}
      `);
    }
  }
});

您可以在 MessageEmbed 的文档中找到这些属性MessageEmbedField.

相关文章