π Redis Features
Redis features are βlistenerβ modules that do not interact with users via commands. Instead, they consume events from Redis Streams (sent by the Backend or Workers) and perform actions in Telegram.
πΊοΈ Module Map
| Component |
Description |
| π Notifications |
Consumes booking events and routes them to Telegram Topics |
| π Errors |
Consumes system errors and notifies developers |
π How it Works
- Event Source: The Django Backend or a Worker pushes a message to a Redis Stream (e.g.,
bot_events).
- Stream Processor: The
RedisStreamProcessor (in core/container.py) listens for new messages.
- Dispatcher: The
bot_redis_dispatcher identifies the feature responsible for the event type.
- Orchestrator: The featureβs orchestrator validates the data and prepares a
UnifiedViewDTO.
- Delivery: The
ViewSender delivers the message to the target Telegram chat/topic.