Привет! Я столкнулся с проблемой, когда мой бот отправляет сообщение await ctx.send(f":white_check_mark: Member(s) {member_names} kicked from voice channel.")
много раз.Кажется, это происходит на await member.move_to(channel = None, reason=None)
, скажем, если из речевого канала выброшено 4 участника, он отправит 4 сообщения.
Есть ли способ, которым я могу предотвратить это.
Вот мой код:
async def voicekick(self, ctx, *members: discord.Member):
"""Kicks a member from voice and restricts them from joining all voice channels.
- member: The member to kick
"""
vcr = get(ctx.guild.roles, name="VC Restricted")
for member in members:
member_names = ', '.join([x.name for x in members])
if member.voice is None:
await ctx.send(f"Member(s) {member_names} not in a voice channel.")
else:
await member.move_to(channel = None, reason=None)
await member.add_roles(vcr)
await ctx.send(f":white_check_mark: Member(s) {member_names} kicked from voice channel.")