您好,我正在开发一个简单的Discord机器人,其中包括成员计数器(我已完成此操作)。 另一个想法是要有在线会员柜台,而我已经做了部分工作:
inputenc
问题是如何获取在线成员更新。现在,我需要重新启动bot以获得正确数量的在线用户,我知道它必须使用precenseUpdate进行操作,但是不知道如何进行编码。 谢谢蒂斯
答案 0 :(得分:0)
看起来应该像这样
client.once("ready", () => {
const myGuild = client.guilds.find(g => g.id === "629746562754412544");
let memberOnline = myGuild.members.filter(
m => m.presence.status !== "offline"
).size;
client.on("presenceUpdate", (oldMember, newMember) => {
if (oldMember.guild === myGuild) {
if (newMember.presence.status === "offline") {
memberOnline--;
[update the channel]
} else if (oldMember.presence.status === "offline") {
memberOnline++;
[update the channel]
}
}
});
});
重要的部分是
if (oldMember.guild === myGuild) {
if (newMember.presence.status === "offline") {
memberOnline--;
[update the channel]
} else if (oldMember.presence.status === "offline") {
memberOnline++;
[update the channel]
}
}