@supera001

Бот дискорда при заходе участника выдаёт много сообщений. В чем дело?

Я пишу бота для дискорда и пытался реализовать приветствие при входе на сервер. Когда человек заходит отправляется n-ое кол-во сообщений соответствующее кол-во участников сервера(не считая ботов)
spoiler
645d2a27579f3656267169.png
но мне нужно чтобы отправлялось одно сообщение. Код представлен ниже
from config import settings
import discord
from discord.ext import commands

intents = discord.Intents.default()
intents.members = True

bot = commands.Bot(command_prefix = settings['prefix'], intents = intents)

@bot.event
async def on_ready():
    print(f'{bot.user.name} включен')


@bot.event
async def on_member_join(member):
    channel_id = 0000000 #id_канала приветствия
    channel = member.guild.get_channel(channel_id)
    print("Участник " + member.name + " присоединился")
    embed=discord.Embed(
        title=("Добро пожаловать " + member.name + "!"),
        description="Мы так рады тебя видеть!\nПрочти наше (ссылка на правила)",
        color=discord.Color.green()
    )
    embed.set_thumbnail(url=member.avatar)
    

    await channel.send(embed=embed)


bot.run(settings['token'])
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
@IIIpaklevka
Приветик. Попробуй сделать вот так:
Вместо member.guild.get_channel(channel_id) сделай просто bot.get_channel(channel_id)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы