Skip to content

Инфраструктура Redis Stream

В codex-bot реализована подсистема для асинхронной обработки событий через Redis Streams. Она позволяет боту реагировать на внешние сигналы и выполнять тяжелые задачи в фоне, не блокируя основной поток aiogram.


🏗 Ключевые компоненты

Работа со стримами строится на трех уровнях: 1. RedisStreamProcessor: Бесконечный цикл чтения сообщений. 2. BotRedisDispatcher: Хаб для распределения событий. 3. RedisRouter: Модульная регистрация обработчиков.


🚀 Планы: Дистанционное управление (Remote State)

Мы планируем добавить поддержку навигационных ключей прямо в payload сообщения из Redis.

Концепция: Если бэкенд отправляет в стрим сообщение вида: {"user_id": 123, "__next_scene__": "battle_results"}

Бот автоматически переключит пользователя на указанную сцену.


⚠️ Текущие ограничения

  1. Контейнер вместо Директора: Сейчас в хендлеры передается только container.
  2. Ручное управление FSM: Используйте container.storage напрямую по ключу user_id.

🧭 Связанные компоненты

  • ViewSender — отправка уведомлений по результатам обработки стрима.
  • Task 004 — подробности реализации.