AI Voice Connector - Community Edition - Implementation

October 28, 2024 ยท View on GitHub

The engine is implemented in Python using Asyncio co-routines in order to ensure I/O operations efficiency.

OpenSIPS

Communication to OpenSIPS is being done over Datagram. The engine subscribes to OpenSIPS over the MI Datagram interface and exposes an Event Datagram socket for the E_UA_SESSON event.

AI Engine

The engine requires each AI Flavor to implement the AIEngine abstract class.

Codecs

The engine needs the ability to perform decapsulation and framing for the codecs that are being used in a call. It is currently able to handle the following codecs:

  • g711 mulaw - PCMU
  • g711 alaw - PCMA
  • Opus

New codecs can be easily handled by implementing the GenericCodec class.

Particularities of each AI engine is treated by its implementation.