Решение Unable to retrieve PJSIP transport в Asterisk

Ошибка «Unable to retrieve PJSIP transport …» возникает когда TRANSPORT не существует или указан не верно.

Допустим в файле /etc/asterisk/pjsip.conf настроен TRANSPORT:

;================================ TRANSPORTS ==
[transport-udp]
type=transport
protocol=udp    ;udp,tcp,tls,ws,wss,flow
bind=0.0.0.0

И соответственно он должен быть указан в шаблоне или в endpoint:

;===============ENDPOINT TEMPLATES
[endpoint-basic](!)
type=endpoint
transport=transport-udp  ;ЗДЕСЬ
context=from-internal
disallow=all
allow=alaw
;===============EXTENSION 221
[221](endpoint-basic)
auth=auth221
aors=221

То есть как видим в моем примере указан «transport-udp» в TRANSPORTS и в ENDPOINT TEMPLATES либо напрямую в endpoint:

[221]
type=endpoint
transport=transport-udp  ;ЗДЕСЬ
context=from-internal
disallow=all
allow=alaw
auth=auth221
aors=221

Перезапустим asterisk и убедимся что нет ошибки:

service asterisk restart
asterisk -rvv
pjsip show transports
pjsip show transport transport-udp
exit

Если указывается несколько TRANSPORT, то они должны быть на разных портах, пример указания порта (если порт не указывать, то по умолчанию используется 5060):

bind=0.0.0.0:5061

Смотрите также мою статью:
Установка Asterisk из исходного кода

Оставьте комментарий

Добавить комментарий