# Vika Voice Agent
An outbound voice agent system for daily reflections with Vismaya Kalike facilitators. The system uses AI-powered voice calls to capture authentic stories and insights from learning center facilitators, prioritizing natural storytelling over structured reporting.
## Features
- 🗣️ **Multi-language Support**: Kannada, Hindi, Tamil, and English
- 🤖 **Multiple LLM Options**: GPT-4 and Gemini for conversational AI
- 📞 **Automated Daily Calls**: Scheduled calls at facilitator's preferred times
- 🎙️ **Audio Recording**: Full conversation recordings stored in AWS S3
- 📝 **AI Transcription**: Automatic transcription with Deepgram
- 🧠 **Insight Extraction**: AI-powered analysis of themes, emotions, and stories
- 🔒 **Privacy-First**: Automatic anonymization of children's names
- 📊 **Data Export**: Easy export of reflections for research analysis
## Architecture
```
Voice Infrastructure: Vapi + Twilio (phone calls)
Deepgram (speech-to-text)
Azure/Google TTS (text-to-speech)
Backend: Node.js + TypeScript + Express
PostgreSQL (metadata & summaries)
AWS S3 (audio recordings)
AI Services: OpenAI GPT-4 / Google Gemini
Native multilingual support
```
## Prerequisites
- Node.js 18+ with pnpm
- PostgreSQL 15+
- Vapi account with API key
- AWS account with S3 bucket
- OpenAI API key (for GPT-4)
- Google AI API key (for Gemini, optional)
## Quick Start
### 1. Clone and Install
```bash
git clone
cd vika_voice_agent
pnpm install
```
### 2. Environment Setup
Create a `.env` file based on `.env.example`:
```bash
cp .env.example .env
```
Fill in the required environment variables:
```env
# Database
DATABASE_URL=postgresql://user:password@localhost:5432/vika_voice_agent
# Vapi (get from
dashboard.vapi.ai)
VAPI_API_KEY=your_vapi_api_key
VAPI_PHONE_NUMBER_ID=your_vapi_phone_number_id
# OpenAI (for GPT-4)
OPENAI_API_KEY=your_openai_api_key
# AWS S3
AWS_REGION=us-east-1
AWS_ACCESS_KEY_ID=your_aws_access_key
AWS_SECRET_AC …