PraisonAI Call¶
AI Customer Service¶
PraisonAI Call is a feature that enables voice-based interaction with AI models through phone calls. This functionality allows users to have natural conversations with AI agents over traditional phone lines.
Installation¶
Step 1¶
pip install "praisonai[call]"
export OPENAI_API_KEY="enter your openai api key here"
export NGROK_AUTH_TOKEN="enter your ngrok auth token here"
praisonai call --public
Step 2¶
Buy a number at PraisonAI Dashboard
Step 3¶
Enter the Public URL in the PraisonAI Dashboard phone number field
Features¶
- Make and receive phone calls with AI agents
- Natural language processing for voice interactions
- Support for multiple phone carriers and providers
- Call recording and transcription capabilities
- Integration with other PraisonAI features
Adding Tools¶
- Create a file called
tools.py
-
Add the following code:
import yfinance as yf # Get Stock Price definition get_stock_price_def = { "name": "get_stock_price", "description": "Get the current stock price for a given ticker symbol", "parameters": { "type": "object", "properties": { "ticker_symbol": { "type": "string", "description": "The ticker symbol of the stock (e.g., AAPL, GOOGL)" } }, "required": ["ticker_symbol"] } } # Get Stock Price function / Tool async def get_stock_price_handler(ticker_symbol): try: stock = yf.Ticker(ticker_symbol) hist = stock.history(period="1d") if hist.empty: return {"error": f"No data found for ticker {ticker_symbol}"} current_price = hist['Close'].iloc[-1] # Using -1 is safer than 0 return {"price": str(current_price)} except Exception as e: return {"error": str(e)} get_stock_price = (get_stock_price_def, get_stock_price_handler) tools = [ get_stock_price ]
-
```bash pip install yfinance
4. ```bash export OPENAI_API_KEY="enter your openai api key here" export NGROK_AUTH_TOKEN="enter your ngrok auth token here" praisonai call --public
Manage Google Calendar Events¶
Deploy¶
Docker Deployment¶
# Use an official Python runtime as a parent image
FROM python:3.11-slim
# Set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# Set work directory
WORKDIR /app
# Install system dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Install PraisonAI with the 'call' extra and ensure it's the latest version
RUN pip install --no-cache-dir --upgrade "praisonai[call]"
# Expose the port the app runs on
EXPOSE 8090
# Run the application
CMD ["praisonai", "call"]