Перейти к содержанию

Конфигурация Asterisk

Серверы

  • voip-1: 10.10.19.51 (внешний: 92.46.186.107)
  • voip-2: 10.10.19.52 (внешний: 92.46.186.108)
  • Версия: Asterisk 20.17.0

Ключевые конфиги

Файл Назначение
pjsip.conf Базовая конфигурация SIP
pjsip_generated.conf Автогенерируемые эндпоинты (из БД)
extensions.conf Базовый dialplan
extensions_generated.conf Автогенерируемый dialplan (из БД)
queues.conf Конфигурация очередей (realtime через ODBC)
func_odbc.conf ODBC функции для CDR и realtime
res_odbc.conf Подключение к PostgreSQL через ODBC

Realtime

Asterisk использует ODBC realtime для членства в очередях и CDR.

Критично: realtime кэширование — после DELETE из БД Asterisk может отдавать кэшированные данные через AMI. Для перечитывания используется команда queue show.

Генерация конфигов

Backend генерирует конфиги из БД и записывает на voip-1/voip-2 через SSH (ASTERISK_CONFIG_MODE=remote). После записи: pjsip reload, dialplan reload.

ODBC подключение

[asterisk]
Driver = PostgreSQL Unicode
Database = asterisk
Servername = 10.10.19.31
Port = 5432

При Patroni failover: Servername нужно обновить на новый primary (failover-db.yml).

Dialplan engines

На voip-1 и voip-2 загружены оба модуля: pbx_lua и pbx_ael. Основной dialplan описан в extensions.conf и extensions_generated.conf. Дополнительно: queues_generated.conf (автогенерируемые очереди из БД).

ВАЖНО: наличие разных dialplan engines может привести к различиям в поведении при failover. Планируется унификация.