#python #discord #discord.py
#python #Discord #discord.py
Вопрос:
Итак, у меня есть этот код. Предполагается, что DM все на сервере. Он не отправляет DM всем, а только пытается DM бота, который работает с кодом, что не удается сделать, поскольку это невозможно.
@client.command()
async def adm(ctx, *, message):
await ctx.message.delete()
for user in ctx.guild.members:
try:
await user.send(message)
print(f"Sent {user.name} a DM.")
except:
print(f"Couldn't DM {user.name}.")
print("Sent all the server a DM.")
Комментарии:
1. Вам необходимо включить намерения участников.
2. И как мне это сделать?
Ответ №1:
Вероятно, это происходит потому, что вы не включили намерения привилегированного шлюза, и ваш бот не может получить всех участников. Включите Server Members Intent
на сайте разработчика Discord в разделе ботов.
Затем добавьте это в свой код:
intents = discord.Intents.default()
intents.members = True
client = commands.Bot(command_prefix="!", intents=intents)