Asterisk создан максимально гибким таким образом, что ядро системы,
обеспечивающее внутреннюю взаимосвязь внутри централи, отделено от
модулей протоколов, кодеков и аппаратных интерфейсов, которые, в свою
очередь, позволяют использовать не только сегодняшние технологии и
аппаратные интерфейсы, но и те, которые только появятся в будущем.
Загружаемые модули Четыре
независимых API определяют загружаемые модули, управляющие уровнями
слоя аппаратных и програмных абстракций. Используя такую модульную
систему ядро Asterisk не зависит от деталей: как соединён абонент,
какой выбран кодек, и т. п.
Интерфейс канала Управляет
типом соединения, которое использует абонент, будь то VoIP соединение,
ISDN, PRI, сигнализация Robbed-bit (RBS), или любая другая технология.
Динамически загружаемые модули управляют низшим уровнем этих соединений.
Интерфейс приложений Интерфейс
позволяет выполнять различные модули для достижения определенных
функций. Конференция, пейджинг, просмотр содержимого каталогов,
голосовая почта, передача данных и многие другие функции современных
АТС выполняются при помощи отдельных модулей.
Интерфейс кодеков Загружает
модули кодеков для поддержки различных форматов сжатия аудио потока,
таких как GSM, Mu-Law, A-law, G723, G729, iLBC, speech, и даже MP3.
Интерфейс формата файлов Управляет записью и чтением различных форматов файлов для хранения данных в файловой системе.
Базовый функционал ядра
Соединения внутри централи Основой
фукцией Asterisk, безусловно, является прозрачная установка соединений
между клиентами вне зависимости от тех аппаратных и программных
решений, что они используют.
Загрузчик приложений Запуск приложений, которые обеспечивают работоспособность голосовой почты, проигрывание файлов и просмотр содержимого каталогов.
Преобразователь кодеков Использует
различные модули кодеков для незаметного пользователям преобразования
различных форматов сжатия аудио потоков между собой. Количество кодеков
варьируется в зависимости от потребностей с целью обеспечить наилучший
баланс между качеством аудио потока и используемой полосой канала
передачи данных.
Планировщик задач и I/O менеджер Обеспечивает
планирование низкоуровневых задач и менеджмент системы для обеспечения
оптимальной производительности в любых условиях работы.