1

Я настроил серверную часть Asterisk CDR для PostgreSQL, и все работает нормально для вызовов между двумя зарегистрированными партнерами.

Проблема в том, что пользователь вызывает незарегистрированного партнера. Я хочу, чтобы Asterisk вставил эту запись, но это не так (он отвечает на SIP-клиент вызывающего абонента с 503 / Service Unavailable ... возможно, это как-то связано с этим).

Я подозреваю, что проблема может быть в том, как я настроил регистрацию пользователей, но я не эксперт, поэтому я не знаю, что я делаю. В любом случае, я сообщаю любую информацию, которую считаю полезной для решения проблемы, если я пропущу что-то важное, пожалуйста, спросите, и я добавлю это. Я использую Asterisk 13.

cdr.conf:

[general]
unanswered = yes

extensions.conf:

[default]
switch => Realtime/default@extensions

Pjsip peers и расширения также взяты из БД.

Пример записи в asterisk.ps_endpoints:

(id=100, transport=transport-udp, aors=100, auth=100, context=default, disallow=all, allow=ulaw, direct_media=no, identify_by=username, rtp_timeout=10)

Пример записи в asterisk.ps_aors:

(id=100, max_contacts=1, remove_existing=yes, qualify_frequency=10)

Пример записи в asterisk.ps_auths:

(id=100, auth_type=userpass, password=*****, username=100)

Пример записи в asterisk.extensions:

(id=7, context=default, exten=100, priority=1, app=Dial, appdata=PJSIP/100)

Заметки:

  • Таблица asterisk.extensions не содержит ничего, кроме Dials.
  • Не указанные поля в приведенных выше примерах имеют значение NULL.
  • Я бы предпочел решение, которое не влечет за собой добавление большего количества записей в asterisk.extensions для каждого пользователя (но у меня нет проблем с добавлением нескольких "статических" новых расширений).

0