Size: a a a

2020 April 17

К

Костя in aiogram [ru]
Aleksandr Mazurenko
Добрый вечер, писал сегодня днем, почитал статьи, ответ так и не нашел. Пишу бота, который будет делать рассылки в определённое время. Предложили использовать аргумент on_startup  и добавть туда цикл проверки времени, попробовал, но те корутины, которые я добавил внутри функции проверки не доходятдо цикла событий и выкидывает ошибку ( RuntimeWarning: coroutine 'time_func' was never awaited).Что не так? Как добавить корутины не из функций хэндлеров в общую очередь? Заранее спасибо)
await time_func() ?
источник

AM

Aleksandr Mazurenko in aiogram [ru]
time_func() - асинхронная функция, которая запускается при положительном результате проверки времени
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
Aleksandr Mazurenko
time_func() - асинхронная функция, которая запускается при положительном результате проверки времени
Ну а как ты её запускаешь
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
У тебя ошибка говорит, что ты забыл await поставить
источник

AM

Aleksandr Mazurenko in aiogram [ru]
Так в том то и дело, что внутри этой функции await стоит
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
Aleksandr Mazurenko
Так в том то и дело, что внутри этой функции await стоит
Надо не внутри
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
Aleksandr Mazurenko
Так в том то и дело, что внутри этой функции await стоит
Покажи, как ты её вызываешь
источник

AM

Aleksandr Mazurenko in aiogram [ru]
Сначала я вызываю функцию проверки времени, как аргумент полинга:
executor.start_polling(dp,on_startup = Time_reports.packets_to_host())
Вот описание функции packets_to_host:
def packets_to_host():
       while True:
           schedule.run_pending()
           time.sleep(3)
А она в свою очередь в нужное время запускает time_func:
async def time_func():
 await bot.send_message('-482281192','Прошло две минуты')
источник

Forevka ÐΞV... in aiogram [ru]
Aleksandr Mazurenko
Сначала я вызываю функцию проверки времени, как аргумент полинга:
executor.start_polling(dp,on_startup = Time_reports.packets_to_host())
Вот описание функции packets_to_host:
def packets_to_host():
       while True:
           schedule.run_pending()
           time.sleep(3)
А она в свою очередь в нужное время запускает time_func:
async def time_func():
 await bot.send_message('-482281192','Прошло две минуты')
иди читай доку питона
источник

Forevka ÐΞV... in aiogram [ru]
и про асинкио почитай
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
Aleksandr Mazurenko
Сначала я вызываю функцию проверки времени, как аргумент полинга:
executor.start_polling(dp,on_startup = Time_reports.packets_to_host())
Вот описание функции packets_to_host:
def packets_to_host():
       while True:
           schedule.run_pending()
           time.sleep(3)
А она в свою очередь в нужное время запускает time_func:
async def time_func():
 await bot.send_message('-482281192','Прошло две минуты')
schedule не подходит в данном случае, используй apscheduler
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
А вообще, ^^
источник

AM

Aleksandr Mazurenko in aiogram [ru]
Если тоже самое реализовать с apschedule, ,будет работать?
источник

Forevka ÐΞV... in aiogram [ru]
Aleksandr Mazurenko
Если тоже самое реализовать с apschedule, ,будет работать?
нет
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨... in aiogram [ru]
Aleksandr Mazurenko
Если тоже самое реализовать с apschedule, ,будет работать?
Если настроить его под асинк, включить мозг и прочитать доку, будет
источник

AM

Aleksandr Mazurenko in aiogram [ru]
Спасибо
источник

AN

Ar N in aiogram [ru]
как мой бот без хостинга живет своей жизнью?
источник

B

Bunk Bunkovich 🐈 in aiogram [ru]
Ar N
как мой бот без хостинга живет своей жизнью?
он стал частью моего скайнета
источник

AN

Ar N in aiogram [ru]
доделай его за меня
источник

B

Bunk Bunkovich 🐈 in aiogram [ru]
Ar N
доделай его за меня
с тебя 10btc
источник