active-call is a standalone Rust crate designed for building AI Voice Agents. It was originally decoupled from rustpbx to provide a dedicated, high-performance library for voice agent integration.
This crate handles the complex low-level details of voice communication, making it easy to connect LLM/NLP engines with telephony platforms. It manages:
- ASR (Automatic Speech Recognition): Handling speech-to-text transitions and events.
- TTS (Text-to-Speech): Managing real-time audio synthesis and playback.
- SIP & WebRTC: Bridging traditional telephony and modern web communication protocols.
- Voice Details: Managing audio buffers, codecs (like Opus), and real-time streaming.
By abstracting these technical hurdles, active-call allows developers to focus on building intelligent dialogue systems rather than worrying about the underlying voice infrastructure.
- Standalone Crate: Decoupled from the main PBX logic for better modularity.
- LLM/NLP Friendly: Designed to easily feed ASR results into LLMs and stream TTS responses back to the caller.
- Multi-Protocol Support: Supports SIP, WebRTC, and raw WebSocket audio streams.
- Real-time Performance: Built with Rust for low-latency audio processing.
For detailed information on REST endpoints and WebSocket protocols, please refer to the API Documentation.
docker pull ghcr.io/restsend/active-call:latestCopy the example config and customize it:
cp active-call.example.toml config.tomldocker run -d \
--name active-call \
-p 8080:8080 \
-p 13050:13050/udp \
-p 20000-20100:20000-20100/udp \
-v $(pwd)/config.toml:/app/config.toml:ro \
-v $(pwd)/config:/app/config \
ghcr.io/restsend/active-call:latestIf you have API keys, save them in an .env file:
TENCENT_APPID=your_app_id
TENCENT_SECRET_ID=your_secret_id
TENCENT_SECRET_KEY=your_secret_key
DASHSCOPE_API_KEY=your_dashscope_api_keyAnd mount it in the container like :
-v $(pwd)/.env:/app/.env \Use small range 20000-20100 for local development, bigger range like 20000-30000, or host network for production.
This project is licensed under the MIT License.