Задать вопрос
@ArtemGlebov
Начинающий сись

Не работает функция отправки сообщения aiogram по расписанию?

почему не заходит в функцию планировщика? Сервер запускается, вебхук слушает, на команды реагирует. Но не могу послать именно сообщения библиотекой aiogram, хотя вывел в отдельный поток. Помогите, пожалуйта, разобраться. Заранее спасибо!

from aiogram import Bot, Dispatcher, types
from aiohttp import web
import asyncio
from threading import Thread
from apscheduler.schedulers.asyncio import AsyncIOScheduler

TOKEN = 'токен из телерам'
app = web.Application()
bot = Bot(TOKEN)
dp = Dispatcher(bot)

def test():
    print('here?')
    asyncio.run(bot.send_message(chat_id, 'test'))

def start_scheduler():
    scheduler = AsyncIOScheduler()
    asyncio.set_event_loop(asyncio.new_event_loop())
    scheduler.add_job(test, 'interval', seconds=2)
    scheduler.start()

async def on_startup(app):
    await bot.set_webhook('https://' + WEBHOOK_URL + WEBHOOK_URL_PATH, drop_pending_updates=True)


async def on_shutdown(app):
    await bot.delete_webhook()

if __name__ == '__main__':
    Bot.set_current(bot)
    app.on_shutdown.append(on_shutdown)
    app.on_startup.append(on_startup)
    scheduler_thread = Thread(target=start_scheduler)
    scheduler_thread.start()
    web.run_app(app, host=WEBHOOK_IP, port=int(WEBHOOK_PORT))
  • Вопрос задан
  • 211 просмотров
Подписаться 1 Средний 5 комментариев
Пригласить эксперта
Ваш ответ на вопрос

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

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