aidialer logo

Aidialer

by akiani

39 forks
123 stars
Free

What is aidialer

aidialer is an innovative application developed by Akiani that provides a seamless AI-driven phone call experience. It's designed as a full-stack application capable of making and receiving phone calls with low latency and near-human quality. By integrating various technologies such as Large Language Models (LLMs), speech recognition, and text-to-speech services, aidialer facilitates robust and dynamic phone conversations. It utilizes Twilio's phone API to manage call operations, making it an effective tool for businesses and services that require interactive and automated telephony solutions.

How to Use aidialer

To get started with aidialer, follow these steps:

  1. Install Dependencies: Begin by installing the required Python dependencies. It's recommended to use a virtual environment to avoid conflicts.

    pip install -r requirements.txt
    
  2. Set Up Ngrok: To ensure Twilio can route calls to your local server, use Ngrok to expose your server to the internet.

    ngrok http 3000
    
  3. Configure Environment Variables: Duplicate the .env.example file, rename it to .env, and fill in the necessary credentials and configuration settings, such as API keys and server details.

  4. Configure Twilio: If you have a Twilio account, update your phone number to use your app's endpoint using Twilio's CLI.

    twilio phone-numbers:update YOURNUMBER --voice-url=https://NGROKURL/incoming
    
  5. Start the Servers: Run both the FastAPI server for backend operations and the Streamlit server for the frontend UI.

    python app.py
    streamlit run ui/streamlit_app.py
    

Once set up, you can initiate and manage calls through the Streamlit interface, which allows you to see call progress in real-time.

Key Features of aidialer

  • Phone Service Integration: Utilizes Twilio to manage incoming and outgoing phone calls via a virtual number, providing a seamless telephony experience.

  • Speech-to-Text Conversion: Employs services like Deepgram to convert voice inputs into text, enabling the AI to understand and process spoken language effectively. It also detects speech completion and interruptions for smoother interactions.

  • Text-to-Text LLM: Incorporates advanced LLMs, such as OpenAI's GPT or Anthropic's Claude, to comprehend conversations, make function calls, and guide the dialogue towards fulfilling specific objectives.

  • High-Quality Text-to-Speech: Converts AI-generated responses into natural-sounding speech, ensuring conversation flow is as lifelike as possible.

  • FastAPI Web Server: Manages backend operations, including handling call logic and facilitating audio streaming through WebSockets.

  • User-Friendly Frontend: A Streamlit-based interface allows users to initiate, monitor, and end calls effortlessly, providing a clear view of call progression.

aidialer is a robust solution for businesses seeking to automate customer interactions while maintaining the quality and fluidity of human conversation. Its comprehensive set of features makes it a powerful tool for enhancing telephony operations through AI-driven processes.

How to Use

To use the aidialer, follow these steps:

  1. Visit https://github.com/akiani/aidialer
  2. Follow the setup instructions to create an account (if required)
  3. Connect the MCP server to your Claude Desktop application
  4. Start using aidialer capabilities within your Claude conversations

Additional Information

Created

June 18, 2024

Company

akiani

Start building your own MCP Server

Interested in creating your own MCP Server? Check out the official documentation and resources.

Learn More