Skip to content

Voice Agent responds like humans for the sales teams to qualify the leads and different use cases

License

SumanMadipeddi/Setter.AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

4 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Setter.AI - AI-Powered Lead Calling System

Python Flask License

Professional AI Voice Agent for Automated Lead Qualification and Meeting Scheduling

Setter.AI is an intelligent calling system that automatically contacts business leads, qualifies them through natural conversations, and schedules meetings with your sales team. Powered by OpenAI's GPT-4 and Twilio's voice infrastructure.

๐Ÿš€ Features

  • ๐Ÿค– AI Voice Agent: Professional female voice (Maayaa) for natural conversations
  • ๐Ÿ“ž Automated Calling: Intelligent lead qualification through phone calls
  • ๐ŸŽฏ Lead Management: Integration with GoHighLevel (GHL) CRM
  • ๐Ÿ“… Meeting Scheduling: Automatic calendar coordination
  • ๐Ÿ“Š Analytics Dashboard: Real-time call monitoring and reporting
  • ๐Ÿ”’ Secure: Environment-based configuration with API key protection

๐Ÿ—๏ธ Architecture

Setter.AI
โ”œโ”€โ”€ ๐Ÿค– AI Logic (OpenAI GPT-4)
โ”œโ”€โ”€ ๐Ÿ“ž Voice System (Twilio)
โ”œโ”€โ”€ ๐Ÿ“Š CRM Integration (GoHighLevel)
โ”œโ”€โ”€ ๐ŸŒ Web Dashboard (Flask)
โ””โ”€โ”€ ๐Ÿ—„๏ธ Data Storage (SQLite)

๐Ÿ“‹ Prerequisites

  • Python 3.8+
  • GoHighLevel API Key & Location ID
  • OpenAI API Key (GPT-4 access)
  • Twilio Account (Account SID, Auth Token, Phone Number)

๐Ÿ› ๏ธ Installation

1. Clone Repository

git clone <your-repo-url>
cd setter.ai-v1

2. Install Dependencies

pip install -r requirements.txt

3. Environment Setup

Create a .env file in the project root:

# Copy environment template
cp .env.example .env

# Edit with your API keys
nano .env

Required Environment Variables:

# GHL (GoHighLevel) Configuration
GHL_API_KEY=your_ghl_api_key_here
GHL_LOCATION_ID=your_location_id_here

# OpenAI Configuration
OPENAI_API_KEY=your_openai_api_key_here

# Twilio Configuration
TWILIO_ACCOUNT_SID=your_twilio_account_sid_here
TWILIO_AUTH_TOKEN=your_twilio_auth_token_here
TWILIO_PHONE_NUMBER=+1234567890

# Webhook Configuration
WEBHOOK_BASE_URL=https://your-ngrok-url.ngrok.io

๐Ÿš€ Quick Start

Run the Application

# Start the main application
python src/main.py

Access Dashboard

Open your browser and navigate to:

http://localhost:5000

๐Ÿงช Testing

Test Configuration

# Verify all API keys are loaded
python -c "
import sys; sys.path.append('src')
from setter_ai.utils.config import load_config
config = load_config()
print('โœ… Configuration loaded successfully!')
"

Test Individual Components

# Test GHL Integration
cd tests && python test_ghl_leads.py

# Test Twilio Calling
cd tests && python test_twilio_call.py

# Test Voice Conversation
cd tests && python test_voice_conversation.py

Test Dashboard

# Test web interface
cd tests && python test_dashboard.py

๐Ÿ“ Project Structure

setter.ai-v1/
โ”œโ”€โ”€ src/                    # Source code
โ”‚   โ”œโ”€โ”€ setter_ai/         # Main application package
โ”‚   โ”‚   โ”œโ”€โ”€ core/          # AI logic and business rules
โ”‚   โ”‚   โ”œโ”€โ”€ integrations/  # External service integrations
โ”‚   โ”‚   โ”œโ”€โ”€ utils/         # Utilities and helpers
โ”‚   โ”‚   โ””โ”€โ”€ web/           # Web interface and API
โ”‚   โ””โ”€โ”€ main.py            # Application entry point
โ”œโ”€โ”€ tests/                  # Test suite
โ”œโ”€โ”€ data/                   # Database and data files
โ”œโ”€โ”€ logs/                   # Application logs
โ”œโ”€โ”€ requirements.txt        # Python dependencies
โ”œโ”€โ”€ .env.example           # Environment template
โ””โ”€โ”€ README.md              # This file

๐Ÿ”ง Configuration

Environment Variables

All configuration is managed through environment variables. The system automatically loads from .env files and validates required API keys at startup.

Customization

Modify the .env file to customize:

  • Business Hours: BUSINESS_HOURS_START, BUSINESS_HOURS_END
  • Voice Settings: VOICE_TYPE, SPEECH_RATE, VOICE_PITCH
  • AI Behavior: AI_MODEL, AI_TEMPERATURE, AI_MAX_TOKENS
  • Call Settings: MAX_CALL_DURATION, RETRY_ATTEMPTS

๐Ÿ“Š Usage

1. Lead Import

  • Leads are automatically imported from GoHighLevel
  • System checks for new leads every 10 minutes
  • Only leads within 24 hours are processed

2. Automated Calling

  • AI agent calls leads during business hours
  • Natural conversation flow for qualification
  • Automatic meeting scheduling for interested prospects

3. Dashboard Monitoring

  • Real-time call status and analytics
  • Lead qualification results
  • Meeting scheduling confirmations

๐Ÿ”’ Security

  • API Keys: Stored in .env files (never committed to git)
  • Environment Isolation: Separate configs for development/production
  • Input Validation: All external inputs are sanitized
  • HTTPS: Webhook endpoints require secure connections

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.

๐Ÿ”ฎ Roadmap

  • Multi-language support
  • Advanced analytics dashboard
  • Integration with additional CRMs
  • Machine learning optimization
  • Mobile application
  • API rate limiting and optimization

Built with โค๏ธ for modern sales teams

About

Voice Agent responds like humans for the sales teams to qualify the leads and different use cases

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published