我正在使用python开发一个不和谐的机器人,并且为它制作了一个音乐功能,可以很好地工作。但是,当我尝试以alt上的“所有人”用户身份向bot授予“离开”命令时,它表明我缺少运行该命令停止和退出的“管理服务器”权限。有什么办法可以解决吗?
停止和离开命令的第1部分:
self.songs.clear()
if self.voice:
await self.voice.disconnect()
self.voice = None
第2部分
@commands.command(name='leave', aliases=['disconnect'])
@commands.has_permissions(manage_guild=True)
async def _leave(self, ctx: commands.Context):
"""Clears the queue and leaves the voice channel."""
if not ctx.voice_state.voice:
return await ctx.send('Join a VC or I will spank you.')
await ctx.voice_state.stop()
del self.voice_states[ctx.guild.id]
答案 0 :(得分:0)
好的,我似乎已经修复了它,线
@commands.has_permissions(manage_guild=True)
必须删除,因为只有拥有权限的人才能让漫游器离开。我猜想,投票系统可能是防止人们陷入VC困境的更好方法,而不是征求许可。