Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从用户id discord.py获取语音频道id_Python_Discord - Fatal编程技术网

Python 从用户id discord.py获取语音频道id

Python 从用户id discord.py获取语音频道id,python,discord,Python,Discord,我的问题是,如果我知道某个用户的用户id,在没有该用户在任何聊天中键入的情况下,如何获取该用户所在的语音频道id 示例代码: USER_ID = 1234578654 @bot.command() async def join(): account = bot.get_user(USER_ID) channel = account.voice.channel voice = await channel.connect() 步调一致 找出一个id为的用户所在的频道 加入

我的问题是,如果我知道某个用户的用户id,在没有该用户在任何聊天中键入的情况下,如何获取该用户所在的语音频道id

示例代码:

USER_ID = 1234578654

@bot.command()
async def join():
    account = bot.get_user(USER_ID)
    channel = account.voice.channel
    voice = await channel.connect()
步调一致

  • 找出一个id为的用户所在的频道
  • 加入那个频道

  • 您可以尝试通过
    成员
    参数获取频道。现在可以使用用户的名称或ID

    看看下面的例子:

    @bot.command()
    异步def联接(ctx,成员:discord.member):
    尝试:
    频道=member.voice.channel
    如果频道:#如果用户在频道中
    等待频道。连接()#连接
    等待ctx.send(“用户已连接到频道,正在加入…”)
    其他:
    等待ctx.send(“我已连接到频道”)#如果机器人已连接
    除属性错误外:
    return wait ctx.send(“用户不在频道中,无法连接”)#错误消息
    
    我们做了什么?

    • 获取
      discord.Member的语音频道
    • 如果成员处于语音频道,请连接到该频道
    • 如果
      成员
      未连接到频道,则发出错误
    要定义用户,可以使用以下功能:

    从discord.utils导入获取
    @bot.command()
    异步def联接(ctx):
    尝试:
    member=ctx.guild.get_member(YourID)#通过ID获取成员
    if成员:#如果是已定义的成员
    等待成员.语音.频道.连接()#连接
    return wait ctx.send(“用户已连接到频道,正在加入…”)
    其他:
    等待ctx.send(“不是定义的用户”)
    除属性错误外:
    return wait ctx.send(“定义的用户不在通道中。”)#错误消息
    

    有关更多信息,您也可以查看

    我已经有了用户的id,我不需要找到它,但我会给它一个GO。使用此命令,您可以检查每个
    成员的id
    。我还可以为您的“列表”提供一个示例。我不完全理解,在这段代码中,它从何处获取用户的ID?您必须传递
    成员
    参数。该命令将是
    join member/ID
    。我不明白你的问题是什么。您是要通过传递用户ID/定义用户ID来连接到频道,还是要获取用户连接到的频道ID?我要连接到特定用户的语音频道,我已经有了用户ID