Após um ano de desenvolvimento, foi lançado o ramo estável da plataforma de comunicação aberta Asterisk 24, utilizada para a implementação de PABXs, sistemas de comunicação de voz, gateways VoIP, organização de sistemas IVR (menu de voz), correio de voz, conferências telefônicas e call centers. O código fonte do projeto é escrito em C e está disponível sob a licença GPLv2.
Asterisk 24 é classificado como uma versão com suporte de longo prazo (LTS), cujas atualizações serão lançadas por um período de cinco anos, em vez dos típicos dois anos das versões normais. O suporte para a versão LTS anterior, Asterisk 22, irá durar até outubro de 2029, e para a versão Asterisk 20, até outubro de 2027. A preparação das versões LTS foca na garantia de estabilidade e otimização de desempenho, enquanto o foco das versões normais é aumentar a funcionalidade.
Entre as mudanças no Asterisk 24:
- No módulo res_pjsip, que fornece suporte a comunicações VoIP baseadas no protocolo SIP, os contatos PJSIP associados a nomes DNS agora são considerados disponíveis se pelo menos um registro DNS relacionado SRV, A ou AAAA puder ser resolvido.
- No módulo res_prometheus, foram adicionadas as opções "channels_detail_metrics_enabled" e "bridges_detail_metrics_enabled" para gerenciar a exportação para o sistema de monitoramento Prometheus de métricas adicionais de canais (‘asterisk_channels_state’, ‘asterisk_channels_duration_seconds’) e pontes (‘asterisk_bridges_channels_count’).
- No perfil da ponte para a organização de conferências ConfBridge, foi adicionada a opção "announcements", que permite desativar os anúncios gerais da conferência, economizando assim um canal e uma thread do taskprocessor.
- No módulo chan_websocket, foi implementado um modo não bufferizado, que envia quadros à medida que são recebidos do WebSocket e do aplicativo.
- Foram adicionados exemplos de configuração para autenticação de ITSP por endereço IP e para o uso de TLS com SRTP.
- No websocket_client.conf, foi adicionado o parâmetro "write_timeout" para limitar o tempo máximo para operações de gravação antes de retornar um erro.
- Nos recursos para localização (res_geolocation), foi adicionado um script que utiliza Alembic para criar as tabelas geoloc_location e geoloc_profile.
- Na estrutura ast_websocket_client_options, foi adicionado o campo write_timeout para configurar o tempo limite das operações de gravação em modo não bloqueante.
- No evento MEDIA_START no chan_websocket, foram adicionados os campos passthrough e unbuffered, que refletem o modo de criação de canal.
Fonte: opennet.ru
