简体   繁体   English

Discord.py,member.status 没有正常工作

[英]Discord.py, member.status isn't working as it should

@bot.tree.command(name="user", description="Shows some informations about the mentioned user.")
async def user(interaction: discord.Interaction, member:discord.Member=None):
  if member == None:
    member = interaction.user
  roles = [role for role in member.roles if role.name != "@everyone"]
  embed = discord.Embed(title=f"Details about the user, {member.name}",color=0xdaddd8, timestamp = datetime.datetime.utcnow())
  embed.set_thumbnail(url=member.avatar) # Avatar Thumbnail
  embed.add_field(name="👤 Name", value = f"{member.name}#{member.discriminator}") # Embeds
  embed.add_field(name="🏷️ Nickname", value = member.display_name)
  embed.add_field(name="🆔 User ID", value = member.id)
  embed.add_field(name="📆 Created at", value = member.created_at.strftime("%D \n%I:%M %p"))
  embed.add_field(name="👋🏻 Joined at", value = member.joined_at.strftime("%D \n%I:%M %p"))
  embed.add_field(name="🟢 Status", value = member.status) #this line is'nt working as it should
  embed.add_field(name="❤️‍🔥 Top role", value = member.top_role.mention)
  bot_status = "Yes, it is" if member.bot else "No, They'snt"
  embed.add_field(name="🤖 Bot?", value = bot_status)
  embed.set_footer(text = interaction.user.name,icon_url = interaction.user.avatar)
  await interaction.response.send_message(embed=embed)

I made a User information command and this command shows every person offline even itself how can i fix it?我做了一个用户信息命令,这个命令显示每个人离线,甚至它自己我该如何解决?

This is likely due to lack of intents.这可能是由于缺乏意图。 Add in your code, under the intents you define:在您定义的意图下添加您的代码:

intents.members = True
intents.presences = True

Use member.raw_status instead of member.status.使用member.raw_status而不是 member.status。 It will return a string value such as 'online', 'offline' or 'idle'.它将返回一个字符串值,例如“在线”、“离线”或“空闲”。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM