我有一个特定的功能来检查是否有汽车需要更换燃油。如果有这样的汽车,它会以电报的形式向用户发送消息。我希望该函数每 5 秒触发一次,而不干扰 aiogram 开始轮询。
这是我在网上找到的代码,但它不起作用:
from aiogram import Bot, Dispatcher, executor, types
from asyncio import create_task, sleep, get_event_loop
from handlers.admin import check_oil_change
from config import TOKEN
# =========== base variables =============
bot = Bot(token=TOKEN)
dp = Dispatcher(bot)
# ========== handlers ============
...
# ============ polling ==============
async def main():
create_task(executor.start_polling(dp))
while True:
await sleep(5)
await check_oil_change(bot)
loop = get_event_loop()
if __name__ == '__main__':
loop.run_until_complete(main())
loop.close()
爱图 2.25.2
我可以建议一个简单但可能不是最好的解决方案 - 让燃料检查一个单独的 .py 文件。您可以创建机器人实例并从不同来源发送消息。您无法同时从多个实例检查新消息
或在这里搜索