A modular Python application that uses Celery to process events from Redis.
- Install dependencies:
pip install -r requirements.txt
-
Configure the application: Edit
config/settings.pywith your Redis and other configuration settings. -
Run the service:
python run.py
- eventprocessor/: Core event processing functionality
- tasks/: Task modules that handle specific event types
- config/: Configuration settings
- migrations/: Migration scripts for database changes
- utils/: Utility functions and classes
- nodejs/: Node.js server for handling file uploads
- Create a new module in the
tasks/directory - Implement a class that inherits from
tasks.base.BaseTask - Register the task in
tasks/__init__.py
The system supports file attachments in events:
- Files can be included in the event data as base64-encoded strings
- Files are processed by the
FileHandlerutility class - Processed files are stored in the configured storage directory
- Navigate to the
nodejsdirectory:
cd nodejs
- Install dependencies:
npm install
- Start the server:
npm start
- Access the test form:
http://localhost:3000/static/
Run migrations:
python -m migrations.migration_manager