Ветки на сообщение бота и реакции discord.py

Рейтинг: 0Ответов: 1Опубликовано: 03.02.2023

подскажите, как сделать так, чтобы в определенном канале бот удалял сообщение, потом создавал эмбет и переписывал сообщение в эмбет, так же создавал ветку и ставил реакции на свой эмбет?

Кода немного есть, но это в основном переписывание сообщения от участника(так и нужно), и удаление оригинального сообщения(от участника конечно же)

async def on_message(ctx):
    if ctx.author != bot.user:
        await ctx.reply(ctx.content)
        await ctx.delete()```

Ответы

▲ 0Принят

Получаем канал методом client.get_channel:

async def on_message(ctx):
    if ctx.author != bot.user:
        channel = client.get_channel(id)

Проверяем с какого канала пришло сообщение:

        if channel.id == ctx.channel.id:

Если это нужный нам канал:

  1. Удаляем сообщение.
            await ctx.delete()
  1. Создаём embed и отправляем сообщение.
            embed = discord.Embed(title="New message:", description=ctx.content)
            message = await channel.send(embed=embed)
  1. Добавляем к отправленному сообщению реакцию.
            await message.add_reaction('💬')

Полный код:

async def on_message(ctx):
    if ctx.author != bot.user:
        channel = client.get_channel(id)
        if channel.id == ctx.channel.id:
            await ctx.delete()
            embed = discord.Embed(title="New message:", description=ctx.content)
            message = await channel.send(embed=embed)
            await message.add_reaction('💬')