NodeJS 成员未缓存

eaf3rand  于 2022-11-22  发布在  Node.js
关注(0)|答案(1)|浏览(139)

我正在尝试做一个自我机器人,在收到消息说这是反对Discord ToS之前,我冒了这个风险。我的机器人只向已经打开DM频道的人发送消息,可能是因为成员没有缓存。
我想让我的机器人发送消息给我的服务器上的每个人。我如何在自机器人上缓存成员?
编码:

const guild = client.guilds.cache.get("id");

if(!guild) return;

guild.members.fetch();

guild.members.cache.random().createDM().then((dm => {
  dm.send("Dont forget to verify !").catch(e => console.log('error'))
})).catch(() => {});

console.log("message sent");
cgh8pdjw

cgh8pdjw1#

Server Members Intent Image
上图显示了此答案的示例;
创建Discord bot时是否启用了服务器成员意图?https://discord.com/developers/applications/"ClientId"/bot
和/或您是否创建了一个具有GUILD_MEMBERS意图的新discord客户端?

const { Client, GatewayIntentBits } = require('discord.js');

const client = new Client({
    intents: [
        GatewayIntentBits.GuildMembers
    ]
});

无论你是否知道风险,你都不应该使用自我机器人。

相关问题