У меня используются очереди в питоне:
message_queue = asyncio.Queue()
Чтобы они работали как отдельная таска, необходимо было запустить воркер в главном файле
Я продебажил и посмотрел, что scheduler срабатывает, он кладет в очередь нужный user_id, но дальше очередь не работала, потому что я просто не запускал message_sender_worker
В главном файле нужно было прописать и передать туда мидлвари:
asyncio.create_task(message_sender_worker(redis_middleware))
Вопрос решен, всем спасибо