簡體   English   中英

Discord.js 公會成員更改活動時如何感知

[英]Discord.js How to sense when member of guild changes the activity

我想制作一個 discord 機器人來抓取公會成員的活動。

所以,我閱讀了 discord.js 的文檔。

但我不知道如何感知成員何時更改活動。

這種情況有例子嗎?

使用Client#presenceUpdate事件來跟蹤狀態更新。 請參閱https://discord.js.org/#/docs/main/stable/class/Client?scrollTo=e-presenceUpdate

<Client>.on("presenceUpdate", (oldPresence, newPresence) => {
    // do something
});

我真的不知道你在尋找什么樣的活動,但它是通過事件發射器處理的任何活動。 例如,假設用戶通過消息發送了一條命令,您可以像這樣捕獲它。

const { Client } = require('discord.js');
const client = new Client();

//event emitter
client.on('message', (message) => {
//do something
}

如果您正在使用 VsCode,intelliSense 可以讓您輕松快速地了解您可以收聽哪些類型的事件。 但這里是所有事件的列表:

https://discord.js.org/#/docs/main/stable/class/Client?scrollTo=e-channelCreate

如果我正確理解您的問題,您正在尋找的事件將是

用戶更新

每當用戶的詳細信息(例如用戶名)更改時發出。 由 Discord 網關事件 USER_UPDATE、GUILD_MEMBER_UPDATE 和 PRESENCE_UPDATE 觸發。

client.on('userUpdate', (oldUser, newUser) => {
// do something
});

或者也

存在更新

每當公會成員的存在(例如狀態、活動)發生變化時發出。

client.on('presenceUpdate', (oldPresence, newPresence) => {
// do something
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM