我目前正在开发一款Discord机器人,我想知道是否有人知道如何在终端上运行该机器人时显示该机器人所在的服务器数量。任何帮助将不胜感激。这是启动消息代码(还包括状态代码):
client.once('ready', () => {
console.log('Bot is online.')
client.user.setStatus('available')
client.user.setPresence({
activity: {
name: 'use code "!help" for commands',
type: 'PLAYING',
url: ''
}
})
}
答案 0 :(得分:2)
您可以使用client.guilds.cache.size
来返回您的机器人所在的行会数量。
示例:
console.log(`Bot is online and running in ${client.guilds.cache.size} servers!`)
答案 1 :(得分:0)
您可以使用client.guilds.cache.size
,它会返回机器人所在的行会的数量,让我们假设,您将为{然后将其作为您机器人的活动。
const
但是您需要将const servers = client.guilds.cache.size
console.log(`Bot is now online and serving in ${servers} servers`)
放入await
中,并使您的功能成为异步功能,以便Bot能够返回并显示它。
const
不执行此操作,您的机器人会将其显示为const servers = await client.guilds.cache.size
这里是一个例子。
0 servers
这将显示“正在11台服务器中播放!”在机器人的状态。
并且如脚本中所述,client.on('ready', async () => {
//This will get the amount of servers and then return it.
const servers = await client.guilds.cache.size
console.log(`Bot is now online and serving in ${servers} servers`)
//Note : setActivity and setPresence is the same.i recommend using setActivity
//This will display "Playing in <servers> servers!"
client.user.setActivity(`in ${servers} servers!`, {
type: 'PLAYING',
})
})
和setActivity
是同一件事,但我
建议使用setPresence
,因为它来自 discord.js
对于那些新手。 只要将功能设置为异步功能
,setActivity
就可以完成所有您想做的事情