我希望机器人打印该成员连接到的频道的ID。
@client.event
async def on_voice_state_update(member, before, after):
channelid = discord.VoiceChannel.id
print(f'{channelid}')
当我加入此频道时,我得到了:
<member 'id' of 'VoiceChannel' objects>
答案 0 :(得分:1)
因为您尝试获取VoiceChannel
的ID,而VoiceChannel
是一个类,而不是实际的频道。要获取语音通道的ID,可以使用before.channel.id
或after.channel.id
。这取决于您想做什么。因此,您可以像这样更改代码:
@client.event
async def on_voice_state_update(member, before, after):
channelid = before.channel.id
print(f'{channelid}')
据我所知,如果成员加入语音通道,则before.channel.id
返回None
,如果成员离开语音通道,则after.channel.id
返回None
。 / p>