How a discord bot can join a voice channel in discord rewrite?(不和谐机器人如何在不和谐重写中加入语音频道?)
问题描述
我想让我的 discord 机器人在我输入 !join 时连接到我所在的语音频道.我试图用下面的代码来做,但我得到了这个错误:bot: 'Bot' 的 BotInstance 没有 'voice_client_int' memberpylint(no-member)
I want to make my discord bot to connect to the voice channel I am when I type !join.
i have tried to do it with the following code but i got this error:
bot: BotInstance of 'Bot' has no 'voice_client_int' memberpylint(no-member)
我发现我的代码与 rewrite discord 版本不兼容.
i found that my code is not compatible with the rewrite discord version.
@bot.command(pass_context = True)
async def join(ctx):
channel = ctx.message.author.voice.voice_channel
await bot.join_voice_channel(channel)
@bot.command(pass_context = True)
async def leave(ctx):
server = ctx.message.server
voice_client = bot.voice_client_int(server)
await voice_client.disconnect()
有人可以帮我吗?
推荐答案
如迁移页面所述,在重写版本中,语音连接现在是 VoiceChannel 模型的一种方法.pass_context 也被弃用,因为现在总是传递上下文.
As stated in the migrating page, in the rewrite version, the voice connection is now a method of the VoiceChannel model.
The pass_context is also deprecated as context is now always passed.
现在看起来像这样:
@bot.command()
async def join(ctx):
channel = ctx.author.voice.channel
await channel.connect()
@bot.command()
async def leave(ctx):
await ctx.voice_client.disconnect()
当然,这个过于简化的版本缺少错误处理.
Of course this oversimplified version lacks error handling.
这篇关于不和谐机器人如何在不和谐重写中加入语音频道?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:不和谐机器人如何在不和谐重写中加入语音频道?
基础教程推荐
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
