【发布时间】:2020-08-25 17:14:41
【问题描述】:
我有一个正在 discord.py 上构建的机器人,我想看看我如何检测用户何时更改了他们的状态(在线、空闲等),并给我一个推送通知当他们这样做时,在我的桌面上。
这是我目前所做的工作:
@client.command()
async def status(ctx, user: discord.Member):
status = discord.Embed (
color = discord.Color.blue()
)
stat = user.status
toaster = ToastNotifier()
toaster.show_toast(f"Status for {user}", f"currently: {stat}", duration=10)
status.add_field(name=f"Status for {user}", value=f"currently: {stat}")
await ctx.send(embed=status)
我已尝试查看其他有关如何检查变量何时更改的帖子,但到目前为止还没有看到任何成功。我已经尝试了这篇文章的最佳答案:How to check if a variable's value has changed 并看到了奇怪的结果,诚然不知道如何在我的代码中实现它,因为我的与那里显示的非常不同。
有什么简单的方法可以做到吗?
【问题讨论】:
-
您可以将事件侦听器添加到具有
before和after的on_member_update,您可以比较这些值以跟踪更改。至于你用它做什么取决于你。
标签: python python-3.x discord discord.py discord.py-rewrite