Как ответом на сообщение, ответить ботом disnake/discord.py
Задумка: Я хочу ответить пользователю командой, чтобы он ответил вместо меня на это особщение.
Знаю могу просто указать ID сообщение и после на него ответить, но я хочу сделать, что ты отвечаешь и пишешь команду, а бот уже сам находит сообщение и отвечает на него.
Знаю, я тупой т.к объяснить нормально не могу, но у меня есть скриншот по которому вы все поймете
Вместо ответа DanexExe использует /test Я хочу чтобы бот ответил на сообщение па путем упоминания этого сообщения
Ответы (1 шт):
Чтобы сделать всё так, как на вашем первом скриншоте, пришлось сделать не команду, а обработку события через встроенный метод on_message():
@bot.event
async def on_message(message: disnake.Message):
if message.content.startswith('/response'):
msg = await message.channel.fetch_message(message.reference.message_id)
content = "Текст который отвечает на чьё-то сообщение!"
if message.content != '/response':
content = message.content[9:]
await message.delete()
await response_message(message=msg, content=content) # Пользовательская команда
else:
await bot.process_commands(message=message)
async def response_message(message: disnake.Message, content: str):
await message.reply(content)
Если ваше сообщение будет как на фото, то он подставит заранее готовый текст. В ином случае - просто продолжите печатать текст, и он поставит его вместо заготовленного. Надеюсь помог.


