当我尝试设置机器人的状态时,我不知道类型,基本上有4种方式:PLAYING
、WATCHING
、LISTENING
和STREAMING
。但是我不能设置其他任何东西,我只能使用默认的PLAYING
。
我是粗心还是在更新的版本中真的无法如此设置?
client.user.setPresence({ activities: [{ name: `discord.js v14`, type: `WATCHING` }], status: 'dnd' })
当我尝试设置机器人的状态时,我不知道类型,基本上有4种方式:PLAYING
、WATCHING
、LISTENING
和STREAMING
。但是我不能设置其他任何东西,我只能使用默认的PLAYING
。
我是粗心还是在更新的版本中真的无法如此设置?
client.user.setPresence({ activities: [{ name: `discord.js v14`, type: `WATCHING` }], status: 'dnd' })
ActivityType
枚举或数字。您可以从discord.js
导入它。const { Client, GatewayIntentBits, ActivityType } = require('discord.js');
并像这样使用它:
client.user.setPresence({
activities: [{ name: `discord.js v14`, type: ActivityType.Watching }],
status: 'dnd',
});
ActivityType
的列表:
v13 | v14 | v14 value |
---|---|---|
"COMPETING" |
ActivityType.Competing |
5 |
"CUSTOM" |
ActivityType.Custom |
4 |
"LISTENING" |
ActivityType.Listening |
2 |
"PLAYING" |
ActivityType.Playing |
0 |
"STREAMING" |
ActivityType.Streaming |
1 |
"WATCHING" |
ActivityType.Watching |
3 |
ActivityTypes
作为选项的value
。例如:{ label: `Competing`, description: `参赛`, value: ActivityTypes.Competing }, { label: `Watching`, description: `观看`, value: ActivityTypes.Watching }
等等,然后getString('type')
就是正确的值,所以你可以像这样使用它:client.user.setPresence({ activities: [{ name, type }] });
。至少,我是这么认为的 :) - Zsolt Meszaros