How nitishkumarkonar/calling_agent works
Calling Suite is a browser-based platform with two independent campaign workflows: Plivo-powered IVR calling (including inbound routing and email blasts) and Bolna-powered AI conversations. Users create campaigns and manage contacts; calls produce outcomes, leads, callbacks, logs, and analytics. The README documents the gateway and platform capabilities; sampled controllers show campaign dispatch and webhook reconciliation. Some service-to-provider and persistence wiring is documented but not directly sampled, so those links are limited to documented relationships.
Main entry points: Persistence/AppDbContext.cs AI database · Program.cs Web gateway · Persistence/AppDbContext.cs IVR database · CallingService.cs Call orchestration
Components 22
Shared gateway
- Web gateway
gateway/Program.cs
IVR system
- IVR web app
ivr-system/calling_agent/frontend/src/App.tsx - IVR API
ivr-system/calling_agent/backend/src/API/Program.cs - Campaign management
ivr-system/calling_agent/backend/src/API/Controllers/CampaignController.cs - Call orchestration
ivr-system/calling_agent/backend/src/Application/Services/CallingService.cs - Telephony callbacks
ivr-system/calling_agent/backend/src/API/Controllers/PlivoController.cs - Email blasts
ivr-system/calling_agent/backend/src/Application/Services/BulkEmailService.cs - Plivo telephony
AI system
- AI web app
ai-system/ai_calling_agent/frontend/src/App.tsx - AI API
ai-system/ai_calling_agent/backend/src/API/Program.cs - Campaign management
ai-system/ai_calling_agent/backend/src/API/Controllers/CampaignController.cs - Call orchestration
ai-system/ai_calling_agent/backend/src/Application/Services/CallingService.cs - Outcome webhook
ai-system/ai_calling_agent/backend/src/API/Controllers/BolnaWebhookController.cs - Bolna voice agent
Platform state
- Leads and contacts
ai-system/ai_calling_agent/backend/src/Domain/Entities/Lead.cs - Callback records
ai-system/ai_calling_agent/backend/src/Domain/Entities/Callback.cs - Call logs
ai-system/ai_calling_agent/backend/src/Domain/Entities/CallLog.cs - Analytics
ai-system/ai_calling_agent/backend/src/Application/Services/AnalyticsService.cs - IVR database
ivr-system/calling_agent/backend/src/Persistence/AppDbContext.cs - AI database
ai-system/ai_calling_agent/backend/src/Persistence/AppDbContext.cs
Other components
- Campaign operator
- SMTP email
Connections 29
- Campaign operator → Web gateway: opens
- Web gateway → IVR web app: serves
- Web gateway → AI web app: serves
- Web gateway → IVR API: proxies API
- Web gateway → AI API: proxies API
- IVR web app → IVR API: API requests
- IVR API → Campaign management: routes
- Campaign management → Call orchestration: dispatches calls
- Call orchestration → Plivo telephony: places calls
- Plivo telephony → Telephony callbacks: sends events
- Telephony callbacks → Call orchestration: reports outcomes
- Email blasts → SMTP email: sends blasts
- Campaign management → IVR database: stores campaigns
- Call orchestration → IVR database: records calls
- AI web app → AI API: API requests
- AI API → Campaign management: routes
- Campaign management → Call orchestration: enqueues calls
- Call orchestration → Bolna voice agent: places calls
- Bolna voice agent → Outcome webhook: sends outcomes
- Outcome webhook → Call orchestration: reconciles outcomes
- Campaign management → AI database: stores campaigns
- Call orchestration → AI database: records calls
- AI database → Analytics: provides call data
- IVR database → Leads and contacts: stores lead data
- AI database → Leads and contacts: stores lead data
- AI database → Callback records: stores callbacks
- IVR database → Callback records: stores callbacks
- AI database → Call logs: stores call logs
- IVR database → Call logs: stores call logs