如何使用 Discord.js 从特定消息和来自特定用户/机器人的消息中删除嵌入

VDS*_*mic 4 node.js discord discord.js

我正在尝试编写一个机器人,该机器人能够删除特定消息的嵌入或从服务器中存在的特定用户和机器人发布的链接创建的嵌入。

例如,假设我不想在有人发布推文时看到 Twitter 嵌入:我的机器人会自动删除 Twitter 嵌入。

其他情况下,我不希望人们看到服务器中存在的其他用户或机器人发布的消息的嵌入,然后我的机器人会自动删除所述嵌入。

然而,阅读 API 文档后,我没有看到任何这样做的可能性。也许我错过了,或者也许有一个技巧可以做到这一点。或者 API 尚不支持。

那么有人知道我如何才能实现这个目标吗?

PS:是的,我知道我可以简单地停用服务器设置中的嵌入,但这不是我想在这里实现的目标。我希望它特定于某些链接/消息和用户/机器人。

谢谢

Jak*_*kye 10

您可以使用消息的suppressEmbeds方法。


client.on("message", message => {
    if (message.author.bot) return false;

    if (message.author.id !== "YourID") { // Example Condition
        message.suppressEmbeds(true) // Removes all embeds from the message.
    }
})
Run Code Online (Sandbox Code Playgroud)