对于我的机器人,我正在尝试执行一条命令,该命令将从字符串将播放器从服务器移到服务器上的某个语音通道。字符串的格式为“ ExampleUser#0000”,我正尝试将字符串转换为成员对象,然后将其移至语音通道。我已经导入了discord.py的命令扩展名,该命令(当前不起作用)可以在下面找到。
将来,该字符串将来自我拥有的JSON,并且只会移动某些成员,但是在担心之前,我想对它进行排序。为了透明起见,JSON以f'{ctx.author}'
的形式在字符串中存储单独命令的作者以及其他一些信息。
任何帮助使该工作正常进行的方法。
name = 'ExampleUser#0000'
@client.command()
async def test(ctx):
channel = discord.utils.get(ctx.guild.channels, name='Test')
member = await MemberConverter().convert(ctx, name)
await member.move_to(channel)
答案 0 :(得分:0)
您正确地获得了频道,而问题出在会员身上。
如果您的ID使用guild.get_member(IDHERE)
,则应使用此功能按名称获取成员。另外,您还可以遍历它们,并在其他人未连接的情况下使用try / except。
name = 'AZ#0573'
@client.command()
async def test(ctx):
channel = discord.utils.get(ctx.guild.channels, name='test')
member = ctx.guild.get_member_named(name)
await member.move_to(channel)