Python 机器人不';当成员加入/离开vc时,我不想创建/删除文本频道
我想做一个机器人,当成员加入语音频道时创建一个文本频道,当该成员离开语音频道时删除文本频道Python 机器人不';当成员加入/离开vc时,我不想创建/删除文本频道,python,python-3.x,discord,discord.py,Python,Python 3.x,Discord,Discord.py,我想做一个机器人,当成员加入语音频道时创建一个文本频道,当该成员离开语音频道时删除文本频道 @client.event async def on_voice_state_update(member, before, after): channelid = after.channel.id guild = discord.utils.get(client.guilds, id=764768330212048936) voicechannelmembers = discord
@client.event
async def on_voice_state_update(member, before, after):
channelid = after.channel.id
guild = discord.utils.get(client.guilds, id=764768330212048936)
voicechannelmembers = discord.VoiceChannel.members
print(f'{member.name} заходит в голосовой канал с ID = {channelid}...')
if channelid == 765619299770695740:
print(f'{member.name} зашел в "Стрим 3"(ID: {channelid})')
channel = discord.utils.get(guild.text_channels, name="стрим3")
voicechannelmembers = discord.VoiceChannel.members
print(f'Подготовка к созданию канала...')
print(f'Проверяю сервер на наличие существующих каналов...')
if channel != None:
print('Данный канал уже существует. Отмена...')
return
else:
if member not in voicechannelmembers:
await channel.delete()
print(f"{member.name} вышел из голосового канала. Канал будет удален.")
return
else:
print(f'Дубликатов не найдено, создаю текстовый канал с именем: "стрим3"')
await guild.create_text_channel(name='стрим3')
channel = discord.utils.get(guild.text_channels, name="стрим3")
message=discord.Embed(
title=":green_book:Добро пожаловать!:green_book:",
description=f'Добро пожаловать в чат стрима 3!\nСтример: *{member.mention}*',
colour=discord.Colour.green()
)
await channel.send(embed=message)
当我加入语音频道时,我得到以下信息:
Ignoring exception in on_voice_state_update
Traceback (most recent call last):
File "Z:\Programs\Python\lib\site-packages\discord\client.py", line 333, in _run_event
await coro(*args, **kwargs)
File "bot.py", line 69, in on_voice_state_update
if member not in voicechannelmembers:
TypeError: argument of type 'property' is not iterable