Как cделать чтобы Discord бот выдал роль пользователю при подключении к voice каналу?
Как сделать так чтобы человек присоединялся к воис каналу дискорд, бот выдавал ту или иную роль, а после то как человек выходит из канала роль забралась?
@client.event()
Ответы (1 шт):
Автор решения: Daniil Loban
→ Ссылка
для голосового канала:
@client.event
async def on_voice_state_update(member, before, after):
role = get(member.server.roles, name="Speaker")
is_my_channel = after.channel and after.channel.id == 776564197873287202;
if after.channel and after.channel!=before.channel and is_my_channel:
await client.add_roles(member, role)
# if before.channel and after.channel!=before.channel and is_my_channel:
# await client.remove_roles(member, role)
для обычного канала (первоначальный ответ, возможно кому-то пригодится):
@client.event
async def on_member_join(member):
role = get(member.server.roles, name="Admin")
await client.add_roles(member, role)