OLO AI is a modern outbound calling platform built to eliminate wasted agent time and maximize sales efficiency. Evolving from a basic on-premises screener, OLO AI is now a full-featured telephony engine powered by Retell AI and Groq.
It operates in two distinct modes:
sequenceDiagram
participant Manager
participant System as OLO AI Backend
participant Retell as Retell AI API
participant Groq as Groq (LLM)
participant Agent as Live Agent (WebSocket)
participant Client as Lead / Customer
Manager->>System: Upload Leads & Start Campaign
loop For each pending lead
System->>Retell: Initiate Call (Screener or AI Agent Mode)
Retell-->>Client: Dials Number
Client-->>Retell: Answers Call
alt Mode: Screener
Retell->>System: Webhook (Human Detected)
System->>Agent: WebSocket: 🔴 LIVE HUMAN Alert
Agent->>Retell: Bridges to call
Agent->>Client: Live Conversation
else Mode: AI Agent
Retell->>Client: Full AI Conversation
alt AI determines lead is Hot
Retell->>Agent: Transfer Call to Human Closer
end
end
Retell->>System: Call Ended Webhook (Transcript & Audio)
System->>Groq: Classify Transcript & Extract Insights
Groq-->>System: JSON Disposition (Interested, Callback, DNC)
System->>System: Apply Status Rules (e.g., Schedule Callback)
end
After every call (whether AI-handled or agent-handled), the full transcript is sent to Groq’s lightning-fast LLMs. The system automatically classifies the call outcome (Interested, Not Interested, DNC) and can even extract specific dates and times to automatically schedule callbacks.
Managers can upload scripts, pricing, company info, and objection-handling techniques into the Knowledge Base. This data is dynamically injected into the Retell AI prompt, ensuring the bot always has the latest product information.
Live WebSockets (Socket.io) connect the backend to the agent’s browser. When a human is detected or a transfer is initiated, the agent’s screen flashes red with a LIVE HUMAN alert containing all relevant lead notes and details.
Rules engine automatically routes leads post-call based on Groq’s classification. (e.g., If DNC, add to blacklist; if Voicemail, skip for 7 days; if Callback, add to the scheduled Callback Queue).
Create a .env in the backend/ directory:
DATABASE_URL="postgresql://user:password@localhost:5432/olo"
REDIS_URL="redis://localhost:6379"
RETELL_API_KEY="your_retell_key"
GROQ_API_KEY="your_groq_key"
RC_CLIENT_ID="your_rc_client_id"
RC_CLIENT_SECRET="your_rc_client_secret"
JWT_SECRET="your_secret_key"
cd backend
npm install
npm run prisma:generate
npm run prisma:migrate
npm run dev
cd frontend
npm install
npm run dev
Visit http://localhost:5173 to access the Manager Dashboard and Agent Interface.