Задать вопрос
@UniFild445

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

Хочу сделать так, чтобы мой дискорд бот каждые 10 минут отправлял сообщение, никак не получается это осуществить. Использую библиотеку discord.py.
Вот что у меня имеется:

@bot.event
async def on_message(ctx):
	message = get_message()
	await bot.get_channel("Привет").send(message)
	await asyncio.sleep(10)
	await bot.get_channel("Привет").send(message)
  • Вопрос задан
  • 357 просмотров
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
shurshur
@shurshur
Сисадмин, просто сисадмин...
В discord.py есть свой механизм для выполнения регулярных задач:

from discord.ext import tasks

@tasks.loop(seconds=600)
async def notify_task():
    await bot.wait_until_ready()
    ... нужные действия

notify_task.start()
bot.run(config.BOT_TOKEN)


Но ничто не мешает запустить отдельный asyncio-task с циклом (и, разумеется, asyncio.sleep вместо time.sleep) и своими силами.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы