mirror of
https://github.com/dograh-hq/dograh.git
synced 2026-06-07 07:55:16 +02:00
|
|
||
|---|---|---|
| .. | ||
| sources | ||
| __init__.py | ||
| campaign_call_dispatcher.py | ||
| campaign_event_protocol.py | ||
| campaign_event_publisher.py | ||
| campaign_orchestrator.py | ||
| errors.py | ||
| rate_limiter.py | ||
| readme.md | ||
| runner.py | ||
| source_sync.py | ||
| source_sync_factory.py | ||
| source_validator.py | ||
campaign_orchestrator.py (CampaignOrchestrator)
- Listens to retry events, batch completed event, sync completed events from redis pubsub, and schedules batches
- Monitors stale campaigns and schedules batches if one is not already scheduled
- Marks campaign as completed if no more tasks pending
runner.py (CampaignRunnerService)
- Service layer to handle router requests, like run campaign, pause campaign, resume campaign, get campaign status etc.
call_dispatcher.py (CampaignCallDispatcher)
- Ensures rate limit and concurrency limits and dispatches call using telephony provider
campaign_tasks.py
- sync campaign from source
- process campaign batch