如何在discord.py中记录用户的离开和加入时间到语音频道?

时间:2021-05-06 00:18:11

标签: python discord.py

大家好,我正在编写一个不和谐的机器人,我想在用户进入和离开语音频道时进行登录。但显然,我现在有点困惑。你们对我如何使用 on_voice_state_update() 有什么想法吗?

2 个答案:

答案 0 :(得分:1)

请参阅here

它有两个参数beforeafter,所以要检查是否有人离开,只需比较beforeafter,如果不一样,你可以将其记录在某个文件中(也许 jsonpicklesqlite 库可以帮助解决此问题)

我在下面提供了一些快速示例代码:

@client.event
async def on_voice_state_update(member, before, after):
    if before.channel is None and after.channel is not None: 
        print("difference")

我们观察到一些事情:首先,beforeafterVoiceState 对象,您可以查看它们的属性here,这就是我获得{{1} } 等等。

其次,before.channel 是您为机器人命名的任何内容(即 client

答案 1 :(得分:0)

@bot.event
async def on_voice_state_update(member, before, after):
    ...

文档:discord.py

相关问题