状态检查始终显示用户 'offline'

Status check always showing that the user is 'offline'

所以我在这里遇到一个问题,我正在尝试执行状态检查命令来检查用户是在线、离线、空闲还是免打扰,他们是在移动设备上还是在台式机上,甚至可能他们的自定义状态。但是,我的主要问题是查看用户是否为 online/offline 或其他。它似乎总是 return 'offline' 即使我知道我没有离线。这是我的代码(目前它只是打印到控制台查看)

@client.command(name="status")
async def status(ctx, user: discord.Member=None):
    if not user:
        user = ctx.message.author
    print(user)
    print(user.raw_status)

然而,当我启动此命令时,它总是 returns 'offline',我一直无法弄清楚为什么。我试过:user.statususer.raw_statususer.desktop_status,以防万一它很奇怪或者我不明白,mobile_status(我在桌面上.) 如果有人对此有解决办法,请告诉我,谢谢!

如果您还没有向您的机器人添加意图,那么您将无法在服务器中处理用户状态。前往“https://discord.com/developers/applications//bot”并在“Privileged Gateway Intents”下勾选“PRESENCE INTENT”和“SERVER MEMBERS INTENT”。这将允许机器人向服务器中的用户请求状态数据。 在您的机器人代码中,添加

from discord import Intents
client = commands.Bot(command_prefix=YOUR_PREFIX, intents = Intents.all())