web-dev-qa-db-fra.com

Suppression de messages utilisateur dans Discord.py

Existe-t-il un moyen de supprimer un message envoyé par quelqu'un d'autre que le bot lui-même, la documentation semble indiquer qu'il est possible

Vos propres messages pourraient être supprimés sans aucune autorisation appropriée. Cependant, pour supprimer les messages d'autres personnes, vous devez disposer des autorisations appropriées pour le faire.

Mais je ne peux pas trouver un moyen de cibler le message pour le faire dans un déclencheur d'événement on_message, est-ce que je manque quelque chose ou est-ce simplement impossible?

7
Hardline_98

Ouais, ça devrait être possible.

Vous avez besoin du bot/compte utilisateur pour avoir l'autorisation "Gérer les messages".

@client.event
async def on_message(message):
    await client.delete_message(message)

Ainsi, l'événement se produirait quelque chose comme

>User sends message
>Bot detects that the user has sent a message
>Bot deletes the message that the user sent

Avec un peu de chance, vous devriez pouvoir voir comment les messages des utilisateurs sont supprimés, assurez-vous simplement que le compte bot/utilisateur dispose de l'autorisation "Gérer les messages".

6
ocelot