web-dev-qa-db-fra.com

Discord.py on_member_join et on_member_leave ne fonctionnent pas

J'ai commencé à utiliser Discord.py (Not Discord.ext Commandes, uniquement l'importation de discorde) Récemment, j'ai fait une chaîne, dont le nom montre le nombre de membres dans la guilde et met à jour chaque fois que quelqu'un se joint ou s'en va. Ceci est mon code:

import discord

client = discord.Client()

@client.event
async def on_ready():
    print("Bot is ready")

@client.event
async def on_member_join(member):
    channel = client.get_channel('channel id here')
    await channel.edit(name = 'Member count: {}'.format(channel.guild.member_count()))

@client.event
async def on_member_leave(member):
    channel = client.get_channel('channel id here')
    await channel.edit(name = 'Member count: {}'.format(channel.guild.member_count()))

client.run('my token here')

J'ai également ajouté la commande "client.on_message" afin que le bot modifierait ce nom à tout ce que j'ai saisi.

@client.event
async def on_message(message)
     if message.content == 'rename channel':
            channel = client.get_channel('channel id here')
            await channel.edit(name = 'TEST')

Maintenant, après avoir ajouté des impressions pour le débogage, j'ai découvert que on_member_join et on_member_lave ne sont jamais appelés, mais le bot modifie le nom de la chaîne lorsque je tape la commande. C'est un canal vocal, qui montre le nombre de membres. Il n'y a aucune erreur. Ai-je lu l'API ne va pas? S'il vous plaît aider

5
musava_ribica

La réponse est-elle ajoutée une limitation de 2 modifications toutes les 10 minutes des canaux. J'ai été informé que cette question a eu plus de 2 000 points de vue

0
musava_ribica