Чат  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Несколько регистраций на одном сервере и входящий звонок

Проблемы и их решения Asterisk как такового

Модератор: april22

Несколько регистраций на одном сервере и входящий звонок

Сообщение biohumanoid » 26 мар 2019, 12:23

Здравствуйте.

Asterisk 13.18.3.
PJPROJECT version currently running against: 2.7.2

Asterisk регистрируется на на SIP сервере (registrar) на нескольких учетных записях.
Проблема с приемом входящих звонков на Asterisk от SIP сервера.

Я не могу завести секцию identify и делать match по IP, т.к. asterisk имеет несколько регистраций на одном сервере (одном IP).
match по username тоже не проходит, т.к. он ищет в поле FROM а не в поле INVITE.

INVITE sip:fxs17@172.16.25.100:5060 SIP/2.0
Via: SIP/2.0/UDP 172.16.25.23:5060;branch=z9hG4bK-d8754z-7f5ac212c105db7b-1---d8754z-;rport
Max-Forwards: 70
Contact: <sip:12@172.16.25.23:5060>
To: <sip:11@172.16.25.23>
From: "PhonerLite12"<sip:12@172.16.25.23:5060>;tag=f237f91e

[Feb 14 16:15:10] DEBUG[18679] res_pjsip_endpoint_identifier_ip.c: No identify sections to match against
[Feb 14 16:15:10] DEBUG[18679] res_pjsip_endpoint_identifier_user.c: Attempting identify by From username '12' domain '172.16.25.23'
[Feb 14 16:15:10] DEBUG[18679] res_pjsip_endpoint_identifier_user.c: Endpoint not found for From username '12' domain '172.16.25.23'
[Feb 14 16:15:10] DEBUG[18679] res_pjsip_endpoint_identifier_user.c: Attempting identify by Authorization username '' realm 'asterisk'
[Feb 14 16:15:10] DEBUG[18679] res_pjsip_endpoint_identifier_user.c: Endpoint not found for Authentication username '' realm 'asterisk'
[Feb 14 16:15:10] NOTICE[18679] res_pjsip/pjsip_distributor.c: Request 'INVITE' from '"PhonerLite12" <sip:12@172.16.25.23>' failed for '172.16.25.23:5060' (callid: ZTNhZTQwZGU0Mjg2MzhhMmU5MDNmMjdiZGFjNGNhNWY.) - No matching endpoint found

Я могу конечно задать разные порты на Asterisk для разных регистраций (5060, 5061, ...), но проблему не решит, т.к. входящий INVITE пойдет по тем же identify модулям.

Можно добавить line=yes.
В REGISTER Asterisk в CONTACT добавит ";line=random" , во входящих INVITE asterisk найдет этот random, и найдет соответствующий ENDPOINT.
Одна проблема - при каждом новом запуске asterisk будет генерировать новый random.

Если registrar 3cx - будут плодиться записи contacts.
Если registrar FreePBX - все еще хуже.
Если не разрешен rewrite contact и указан max_contacts, то каждый перезапуск asterisk будет добавлять contact.
После max_contacts таких записей, FreePBX не будет принимать регистрации...

Не могу понять, либо я не понял где-то сути, и неправильно написал конфигурацию, либо архитектурно в asterisk+pjsip недоработка, не позволяющая принимать звонки от registrar сервера (на котором мы авторизовались).
Возможно можно использовать идентификатор res_pjsip_endpoint_identifier_header, но не уверен как.

identifier я могу и дописать или написать свой, но важно понять, как должно быть правильно.
biohumanoid
 
Сообщений: 2
Зарегистрирован: 26 мар 2019, 11:41

Re: Несколько регистраций на одном сервере и входящий звонок

Сообщение biohumanoid » 26 мар 2019, 16:40

Конфигурация pjsip.conf следующая

[0.0.0.0-udp]
type=transport
protocol=udp
bind=0.0.0.0:5060

[endpoint0](!)
type=endpoint
transport=0.0.0.0-udp
disallow=all
allow=alaw
allow=ulaw
allow=g729
t38_udptl=no
t38_udptl_ec=none
fax_detect=no
t38_udptl_nat=no
dtmf_mode=auto
direct_media=yes
from_domain=172.16.25.23
timers_sess_expires=1800
rewrite_contact=yes
rtp_symmetric=yes
force_rport=yes

[registration0](!)
type=registration
transport=0.0.0.0-udp
retry_interval=60
max_retries=10
expiration=3600
auth_rejection_permanent=yes
server_uri=sip:172.16.25.23

[fxs17](endpoint0)
context=from-sip-fxs
aors=fxs17
outbound_auth=fxs17
from_user=fxs17
set_var=DAHDICHAN=17

[fxs17]
type=aor
qualify_frequency=60
contact=sip:fxs17@172.16.25.23

[fxs17]
type=auth
auth_type=userpass
password=111111
username=fxs17

[fxs17](registration0)
outbound_auth=fxs17
client_uri=sip:fxs17@172.16.25.23
contact_user=fxs17
biohumanoid
 
Сообщений: 2
Зарегистрирован: 26 мар 2019, 11:41


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

© 2008 — 2019 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH