Skip to content

Latest commit

 

History

History
65 lines (46 loc) · 2.84 KB

File metadata and controls

65 lines (46 loc) · 2.84 KB

Asterisk IP Telephony Platform

Welcome to the Asterisk IP Telephony Platform project! This project aims to provide a complete IP telephony solution capable of supporting thousands of simultaneous users, deployed via Docker and Kubernetes.

Project Structure

The project is organized into several key components:

  • Asterisk: Contains the Dockerfile, entrypoint script, configuration files, and backup scripts for the Asterisk server.
  • Web Interface: A modern, responsive web application for managing users, calls, and settings.
  • Database: Contains migration files and seed data for initializing the database.
  • Monitoring: Configuration files for Prometheus and Grafana to monitor the Asterisk server and web application.
  • Kubernetes: Deployment and service configurations for running the application in a Kubernetes environment.
  • Documentation: Detailed guides for deployment, configuration, scaling, and administration.

Features

  1. Scalability: The platform is designed to scale horizontally to handle increased loads.
  2. Containerization: Fully containerized using Docker, with support for Kubernetes deployment.
  3. Web Interface: A user-friendly web interface for managing telephony features, including:
    • User and group management
    • Call routing and management
    • Voicemail and call recording
    • Monitoring and statistics
  4. Secure Connections: Supports secure communication protocols (SIP TLS, SRTP) to ensure data security.
  5. Database Integration: Utilizes MySQL or PostgreSQL for user and permission management.
  6. Automatic Backups: Includes a backup system for configurations and voicemail messages.
  7. Performance Monitoring: Integrated monitoring with Grafana and Prometheus for real-time insights.

Getting Started

To get started with the Asterisk IP Telephony Platform, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/your-repo/asterisk-ip-platform.git
    cd asterisk-ip-platform
    
  2. Set Up Environment Variables: Copy the .env.example to .env and configure your environment variables.

  3. Build and Run with Docker: Use the provided docker-compose.yml to build and run the application:

    docker-compose up --build
    
  4. Access the Web Interface: Open your web browser and navigate to http://localhost:3000 to access the web interface.

  5. Monitoring: Set up Prometheus and Grafana as per the instructions in the monitoring/README.md file.

Documentation

For detailed documentation on deployment, configuration, scaling, and administration, please refer to the docs directory.

Contributing

Contributions are welcome! Please submit a pull request or open an issue for any enhancements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for more details.