Skip to content

VoiceNote for Business is an innovative solution to revolutionize business communication, particularly for rural and multilingual markets. This project enables businesses to process customer queries via WhatsApp voice notes, breaking down language and technological barriers.

License

Notifications You must be signed in to change notification settings

samnaveenkumaroff/VoiceNote-for-Business-Vaseegrah-Veda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

VoiceNote for Business - Vaseegrah Veda 🌿

img

πŸš€ Empowering Business Communication Through Voice Technology

Project Overview

VoiceNote for Business is an innovative solution to revolutionize business communication, particularly for rural and multilingual markets. This project enables businesses to process customer queries via WhatsApp voice notes, breaking down language and technological barriers.


🌟 Key Features

  • Multilingual Voice Processing
  • WhatsApp Business API Integration
  • Automatic Speech-to-Text Translation
  • Cross-Platform Compatibility
  • User-Friendly Tkinter GUI
  • Advanced Language Detection

πŸ“‚ Project File Structure

VoiceNote-for-Business-Vaseegrah-Veda/
β”œβ”€β”€ VoicetoText.py           # Handles voice-to-text conversion
β”œβ”€β”€ TexttoVoice.py           # Converts text responses back to voice
β”œβ”€β”€ VNText.csv               # Stores processed text data
β”œβ”€β”€ requirements.txt         # Project dependencies
β”œβ”€β”€ Dockerfile               # Containerization setup
β”œβ”€β”€ LICENSE                  # Licensing information
β”œβ”€β”€ README.md                # Documentation
β”œβ”€β”€ Voice-Notes/
β”‚   β”œβ”€β”€ Received/            # Incoming WhatsApp voice notes
β”‚   └── Sent/                # Generated response voice notes
β”œβ”€β”€ Images/                  # UI assets for the Tkinter GUI
└── ffmpeg-7.0.1/            # Audio processing dependency

Key Project Components

1. VoicetoText.py

  • Primary Function: Converts voice notes to text
  • Key Capabilities:
    • Speech recognition across multiple languages
    • Automatic language detection
    • Translation of voice notes to English
    • Integration with Tkinter GUI
    • Saves processed data to VNText.csv

2. TexttoVoice.py

  • Primary Function: Converts text responses back to voice
  • Key Capabilities:
    • Text-to-speech conversion
    • Multi-language support
    • Generates voice responses in the original customer's language
    • Saves voice responses in Voice-Notes/Sent directory

3. VNText.csv

  • Purpose: Central data storage for processed voice notes
  • Columns:
    • Original file path
    • Translated text
    • Source language code
    • Timestamp
    • Processing status

4. ffmpeg-7.0.1

  • Purpose: Audio processing and conversion
  • Key Features:
    • Handles various audio formats
    • Supports audio encoding/decoding
    • Enables high-quality audio transformations

5. Project Configuration Files

  • requirements.txt: Python dependency management
  • .gitignore: Version control configuration
  • LICENSE: Project licensing information
  • README.md: Project documentation

πŸ›  Technical Requirements

Minimum System Requirements

  • Operating Systems:

    • Windows 10/11 (64-bit)
    • macOS 10.15+
    • Ubuntu 20.04 LTS / Linux Distributions
  • Hardware:

    • Processor: Intel Core i5 or equivalent
    • RAM: 8GB
    • Storage: 10GB free disk space
    • Internet Connection: Minimum 10 Mbps

Software Prerequisites

  • Python: 3.7 - 3.10
  • Dependencies:
    • Tkinter
    • SpeechRecognition
    • Googletrans
    • PyDub
    • gTTS
    • FFmpeg

πŸ”§ Comprehensive Installation Guide

1. Virtual Environment Setup

Windows

# Install virtualenv
pip install virtualenv

# Create virtual environment
python -m venv voicenote_env

# Activate virtual environment
voicenote_env\Scripts\activate

MacOS/Linux

# Install virtualenv
pip3 install virtualenv

# Create virtual environment
python3 -m venv voicenote_env

# Activate virtual environment
source voicenote_env/bin/activate

2. Dependency Installation

# Clone the repository
git clone https://github.com/samnaveenkumaroff/VoiceNote-for-Business-Vaseegrah-Veda.git

# Navigate to project directory
cd VoiceNote-for-Business-Vaseegrah-Veda

# Install requirements
pip install -r requirements.txt

3. FFmpeg Installation

πŸ›  FFmpeg Setup (Bundled Version)

The project includes a pre-packaged FFmpeg version (ffmpeg-7.0.1.zip) for seamless installation. Follow the steps below to use it:

Windows Installation

  1. Extract the ffmpeg-7.0.1.zip archive to your preferred directory.
  2. Inside the extracted folder, locate bin/ffmpeg.exe.
  3. Add the bin folder to the system PATH:
    • Open System Properties β†’ Advanced β†’ Environment Variables.
    • Under System Variables, find Path and edit it.
    • Click New and add the full path to the bin folder.
    • Click OK and restart your terminal.
  4. Verify installation:
    ffmpeg -version

MacOS Installation

unzip ffmpeg-7.0.1.zip
mv ffmpeg-7.0.1 /usr/local/bin/ffmpeg
export PATH=$PATH:/usr/local/bin/ffmpeg/bin

Verify with:

ffmpeg -version

Linux Installation

unzip ffmpeg-7.0.1.zip
sudo mv ffmpeg-7.0.1 /usr/local/ffmpeg
export PATH=$PATH:/usr/local/ffmpeg/bin

Verify with:

ffmpeg -version

Windows

  1. Download from FFmpeg Official Site
  2. Extract and add to system PATH
  3. Verify: ffmpeg -version

MacOS

brew install ffmpeg

Linux (Ubuntu/Debian)

sudo apt update
sudo apt install ffmpeg

🐳 Docker Deployment

Containerization

# Dockerfile
FROM python:3.9-slim

WORKDIR /app

# Install system dependencies
RUN apt-get update && apt-get install -y \
    ffmpeg \
    && rm -rf /var/lib/apt/lists/*

# Copy project files
COPY . /app

# Install Python dependencies
RUN pip install --no-cache-dir -r requirements.txt

# Run the application
CMD ["python", "VoicetoText.py"]

Build and Run:

docker build -t voicenote-business .
docker run -d voicenote-business

βš™οΈ Workflow Process

  1. Voice Note Reception

    • Customer sends a WhatsApp voice note
    • VoicetoText.py receives and processes the audio
  2. Speech-to-Text Conversion

    • Automatic language detection
    • Translation to English
    • Data stored in VNText.csv
  3. Business Logic Processing

    • Match customer query with appropriate products/services
    • Generate tailored response
  4. Voice Response Generation

    • TexttoVoice.py converts response to voice
    • Voice note sent back in original language

☁️ Cloud Integration

Supported Cloud Platforms

  • AWS Lambda
  • Google Cloud Functions
  • Azure Functions
  • Heroku

Sample AWS Lambda Deployment

import json
import boto3
from voicetotext import process_voice_note

def lambda_handler(event, context):
    # Process incoming WhatsApp voice note
    voice_file = event['voice_file']
    processed_text = process_voice_note(voice_file)
    
    return {
        'statusCode': 200,
        'body': json.dumps(processed_text)
    }

πŸš€ Business Integration Strategies

API Development

  • Create RESTful APIs for voice processing
  • Integrate with CRM systems
  • Develop webhook-based communication

Scalability Options

  • Multi-tenant architecture
  • Horizontal scaling
  • Microservices design

πŸ”¬ Performance Optimization

GPU Acceleration

  • CUDA Support for faster processing
  • TensorFlow GPU integration
  • PyTorch acceleration

Caching Mechanisms

  • Redis for voice note metadata
  • Memcached for translation caching

πŸ” Security Considerations

  • End-to-end encryption
  • GDPR Compliance
  • Data anonymization
  • Secure WhatsApp Business API integration

πŸ“Š Monitoring & Logging

Recommended Tools

  • Prometheus
  • Grafana
  • ELK Stack
  • Sentry for error tracking

🀝 Contributing

  1. Fork the repository
  2. Create feature branch
  3. Commit changes
  4. Push to branch
  5. Create pull request

πŸ“œ License

Apache 2.0 License


πŸ‘¨β€πŸ’» Author

Sam Naveenkumar V

Soorya K

Dhuruv Swamy R


πŸ™ Acknowledgements

  • Vaseegrah Veda
  • Tech Vaseegrah Team
  • Open Source Community

About

VoiceNote for Business is an innovative solution to revolutionize business communication, particularly for rural and multilingual markets. This project enables businesses to process customer queries via WhatsApp voice notes, breaking down language and technological barriers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages