v2.0.0

rapidaai/voice-aiv2.0.0Feb 24, 2026by iamprashant

AI Summary

Major release introducing telephony reliability improvements with a unified channel architecture across Twilio, Vonage, Exotel, Asterisk, and SIP. Includes native SIP integration, Asterisk/AudioSocket support, WebRTC channel for browser-based voice, and deterministic audio framing.

Key Highlights

  • Unified channel architecture across all telephony providers (Twilio, Vonage, Exotel, Asterisk, SIP)
  • Native SIP stack with RTP handling, SDP negotiation, and session management
  • WebRTC channel with Opus codec support for browser-based voice
  • Deterministic 20ms audio framing with zero per-frame heap allocations
  • LLM Text Aggregator reduces first-word latency with sentence-boundary aggregation

Breaking Changes

  • New `call_contexts` table required (migration 000005)
  • `recording_url` split into `assistant_recording_url` + `user_recording_url` (migration 000006)

New Features

  • SIP Integration with native stack
  • Asterisk/AudioSocket integration
  • WebRTC Channel for browsers
  • Per-speaker recordings (assistant and user)
  • Atomic interruption with ClearOutputBuffer
  • Channel UUIDs for end-to-end transfer/hangup operations

Full Release Notes

## What's Changed

 ### Telephony: Rebuilt from the Ground Up
  - Unified channel architecture shared across Twilio, Vonage, Exotel, Asterisk, and SIP
  - Interruptions, end-of-call signals, and transfer/hangup events handled consistently across all providers
  - New \`call_contexts\` table persists call state — async provider callbacks resolve correctly even after call ends
  - Channel UUIDs propagate end-to-end for reliable transfer and hangup operations

  ### New: SIP Integration
  Full native SIP stack with RTP handling, SDP negotiation, port allocator, and session management.

  ### New: Asterisk / AudioSocket
  Native integration with Asterisk via AudioSocket and WebSocket. Inbound and outbound call flows tested.

  ### New: WebRTC Channel
  Browser-based voice with Opus codec support and gRPC signalling, sharing the same hardened base as telephony.

  ### Audio Pipeline: Deterministic Framing
  - Exact 20 ms output frames with zero per-frame heap allocations
  - Atomic interruption — \`ClearOutputBuffer\` drains buffers and signals output writer instantly
  - Per-speaker recordings split into \`assistant_recording_url\` + \`user_recording_url\`

  ### LLM Text Aggregator
  Sentence-boundary aggregation between LLM stream and TTS — reduces first-word latency with configurable delimiters and clean context-switch flush.

  ### Test Coverage
  - 31 \`BaseStreamer\` unit tests
  - Full telephony provider test suite (Twilio, Vonage, Exotel)
  - Transformer tests for AssemblyAI, Azure, Cartesia, Deepgram, ElevenLabs, Google, Resemble, Sarvam
  - LLM text aggregator: 972 lines of unit tests + 381 lines of benchmarks

  ### Bug Fixes
  - Google TTS stale response fix for outputs > 5 sentences
  - AgentKit executor stability fixes
  - First-token response time now tracked in LLM telemetry
  - MCP tool support for agent tool invocations

  ## Breaking Changes / Migrations
  | Migration | Change |
  |---|---|
  | \`000005\` | New \`call_contexts\` table required |
  | \`000006\` | \`recording_url\` split into \`assistant_recording_url\` + \`user_recording_url\` |