Как при случайном сообщении бот мог ответить любым сообщением, который уже был в чате?
Вообщем. Надеюсь, я смогу обьяснить. Человек отправил какое нибуть сообщение, например: "Ща"
А бот смог брать любое сообщение из чата, скажем "я звезда" и отвечал ему: "я звезда"
У меня не так уж и много навыка в програмировании на Discord.Py, так что любая помощь мне поможет.
Ответы (1 шт):
Автор решения: zrx
→ Ссылка
Покажу Вам очень костыльный вариант.
В моём варианте бот будет парсить последние 200 сообщений канала и отправлять рандомное. Число можно поставить любое, но если сообщение было отправлено больше 2х недель назад, то не факт что бот сможет его получить.
Ссылка на документацию -> https://discordpy.readthedocs.io/en/stable/api.html?highlight=channel#discord.TextChannel.history
Сам код:
import random
@bot.event
async def on_message(message):
number_of_message = random.randint(0, 200) # Тут указываем лимит сообщений
messages = await message.channel.history(limit=200).flatten() # Тут указываем лимит сообщений
await message.channel.send(messages[number_of_message].content)
