Релиз коммуникационной платформы Asterisk 24 - QubStore

Релиз коммуникационной платформы Asterisk 24

Вышла LTS-версия открытой платформы Asterisk 24 — обновления будут выпускать пять лет.

После года работы над кодом команда представила стабильную ветку Asterisk 24. Это открытая коммуникационная платформа на языке Си под лицензией GPLv2, на которой строят программные АТС, системы голосовой связи, VoIP-шлюзы, голосовые меню (IVR), голосовую почту, конференц-связь и call-центры.

Номер 24 попал в категорию выпусков с расширенной поддержкой (LTS): патчи и обновления для него будут выходить пять лет, тогда как обычные релизы поддерживаются вдвое меньше. Поддержка предыдущей LTS-ветки Asterisk 22 рассчитана до октября 2029 года, а версии Asterisk 20 — до октября 2027-го. В LTS-выпусках разработчики делают упор на надёжность работы и скорость, а в обычных — в первую очередь добавляют новые возможности.

Что нового в Asterisk 24? В модуле res_pjsip, отвечающем за SIP-коммуникации, контакты PJSIP, привязанные к DNS-именам, теперь считаются доступными, если удалось разрешить хотя бы одну связанную с ними запись SRV, A или AAAA. Модуль res_prometheus получил опции channels_detail_metrics_enabled и bridges_detail_metrics_enabled — они управляют экспортом в Prometheus дополнительных метрик каналов (asterisk_channels_state, asterisk_channels_duration_seconds) и мостов (asterisk_bridges_channels_count). В профиле моста для конференций ConfBridge появилась опция announcements, позволяющая отключить общие анонсы — это экономит один канал и один поток taskprocessor. В chan_websocket реализован небуферизованный режим: кадры уходят сразу по мере поступления из WebSocket и приложения.

Добавлены примеры конфигурации для аутентификации ITSP по IP-адресу и для связки TLS с SRTP. В websocket_client.conf появился параметр write_timeout — он ограничивает максимальное время операции записи до возврата ошибки. В средства определения местоположения (res_geolocation) добавлен скрипт на Alembic, создающий таблицы geoloc_location и geoloc_profile. В структуру ast_websocket_client_options внесено поле write_timeout для настройки таймаута записи в неблокирующем режиме, а в событие MEDIA_START модуля chan_websocket — поля passthrough и unbuffered, показывающие режим создания канала.

Ссылка на основную публикацию