Страница 1 из 2

pjsip trunk

Добавлено: 30 ноя 2023, 03:35
SUNtehnik
Здравствуйте!

Пытаюсь освоить pjsip. Не получается настроить транк для МГТС. АТСка домашняя. Учетка снята с арендного роутера.
На chain_sip все работает, но на pjsip не получается настроить.

конфиг chain_sip:
sip_registrations.conf
register=+7495XXXXXXX@msk.ims.mgts.ru:password:+7495XXXXXXX@msk.ims.mgts.ru@192.168.XX.YY/+7495XXXXXXX

sip_additional.conf
[mgts-in]
context=from-trunk-sip-mgts-out
[mgts-out]
type=peer
host=192.168.XX.YY
fromuser=+7495XXXXXXX
fromdomain=msk.ims.mgts.ru
context=from-trunk-sip-mgts-out

Но в pjsip если аккаунт просто телефонный номер +7495XXXXXXX, то получаю
ERROR[19524]: res_pjsip_outbound_registration.c:1849 sip_outbound_registration_regc_alloc: Invalid client URI 'sip:+7495XXXXXXX@msk.ims.mgts.ru@192.168.ХХ.YY:5060' specified on outbound registration 'MGTS'

а если аккаунт +7495XXXXXXX@msk.ims.mgts.ru, то получаю ошибку:

ERROR[19524]: res_pjsip/pjsip_options.c:880 sip_options_qualify_contact: Unable to create request to qualify contact sip:+7495XXXXXXX@msk.ims.mgts.ru@192.168.XX.YY:5060 on AOR MGTS

В чем проблема?

Re: pjsip trunk

Добавлено: 30 ноя 2023, 11:36
ded
Проблема в отсутствии должной техподдержки клиентов у МГТС. Вы их клиент, и они должны вам помогать, а не сообщество свободных астерискеров.

Re: pjsip trunk

Добавлено: 30 ноя 2023, 12:58
SUNtehnik
В данном случае. МГТС дает для физ.лица настроенный абонентский терминал и они помогать в настройке конфига астериска не обязаны.
Я же поставил АТС и являюсь свободным астерискером и не имею от этого коммерческой выгоды. По этому и обращаюсь к сообществу свободных астерискеров.
Если я где-то не прав, то извините...

Re: pjsip trunk

Добавлено: 30 ноя 2023, 14:01
SUNtehnik
Правильно понимаю, что проблема в кривой регистрации в МГТС: +7495XXXXXXX@msk.ims.mgts.ru@192.168.XX.YY ?
chain_sip пропускает это, а pjsip не понимает почему две @ в регистрации...

Re: pjsip trunk

Добавлено: 30 ноя 2023, 18:15
ded
Можно и так сказать.
PJSIP мало кто использует, ввиду его запредельной ахитектурной сложности. Сравните: прежний chan_sip.so - один файл, а PJSIP - 49 файлов!
chan_pjsip.so res_pjsip_endpoint_identifier_ip.so res_pjsip_pidf_body_generator.so
func_pjsip_aor.so res_pjsip_endpoint_identifier_user.so res_pjsip_pidf_digium_body_supplement.so
func_pjsip_contact.so res_pjsip_exten_state.so res_pjsip_pidf_eyebeam_body_supplement.so
func_pjsip_endpoint.so res_pjsip_header_funcs.so res_pjsip_publish_asterisk.so
res_hep_pjsip.so res_pjsip_history.so res_pjsip_pubsub.so
res_pjsip_acl.so res_pjsip_logger.so res_pjsip_refer.so
res_pjsip_authenticator_digest.so res_pjsip_messaging.so res_pjsip_registrar.so
res_pjsip_caller_id.so res_pjsip_mwi_body_generator.so res_pjsip_rfc3326.so
res_pjsip_config_wizard.so res_pjsip_mwi.so res_pjsip_sdp_rtp.so
res_pjsip_dialog_info_body_generator.so res_pjsip_nat.so res_pjsip_send_to_voicemail.so
res_pjsip_dialog_info_digium_body_supplement.so res_pjsip_notify.so res_pjsip_session.so
res_pjsip_diversion.so res_pjsip_one_touch_record_info.so res_pjsip_sips_contact.so
res_pjsip_dlg_options.so res_pjsip_outbound_authenticator_digest.so res_pjsip.so
res_pjsip_dtmf_info.so res_pjsip_outbound_publish.so res_pjsip_stir_shaken.so
res_pjsip_empty_info.so res_pjsip_outbound_registration.so res_pjsip_t38.so
res_pjsip_endpoint_identifier_anonymous.so res_pjsip_path.so res_pjsip_transport_websocket.so
res_pjsip_endpoint_identifier_dpma.so res_pjsip_phoneprov_provider.so res_pjsip_xpidf_body_generator.so

Re: pjsip trunk

Добавлено: 30 ноя 2023, 20:50
mvt
SUNtehnik писал(а):Правильно понимаю, что проблема в кривой регистрации в МГТС: +7495XXXXXXX@msk.ims.mgts.ru@192.168.XX.YY ?
chain_sip пропускает это, а pjsip не понимает почему две @ в регистрации...
Позволю себе прокомментировать Ваше умозаключение.
Думаю, что Ваше "понимание" проблемы кривизны транка в корне неверно, а проблема просто кроется в Вашем непонимании настроек PJSIP.
Тут надо долго разбираться, и, я бы Вам, нескромно, посоветовал бы не торопиться с подключением поскольку быстро здесь не получится, и вот почему:
1. Вам надо бы понять, что, например, для настройки транка Zadarma (ушёл из россии) он же Novofon требуется заполнить столбцы в определённых таблицах базы данных (я всё это проделывал в в БД PostgreSQL). Это же возможно и в "плоских" файлах PJSIP, но если разбираться в настройках плоских файлов библиотеки PJSIP почему бы не нырнуть в бочку с... мёдом (пивом) полностью и не по-изучать realtime PJSIP.
В общем, вот те таблицы которые требуются для настройки транка Novofon, думаю что они же требуются и для МТС ибо технология "зацепа" там по логину и паролю, а если по ip, что вряд-ли, то как ни крути, а за рамки этих таблиц выйти, скорее всего, не потребуется.
Вот список: используемые таблицы БД: ps_aors, ps_auths, ps_endpoints, ps_transports, ps_registrations, ps_endpoint_id_ips

А, почитать необходимо вот это всё: (это что касается настройки транка, по установке и настройке БД нужно ещё копать и копать...)
https://community.asterisk.org/t/regist ... odbc/96064
https://superuser.com/questions/1454848 ... gistration
http://lists.digium.com/pipermail/aster ... 32935.html
https://www.aska-ltd.jp/en/blog/164
http://asterisk-support.ru/question/532 ... -rabotaet/
https://community.asterisk.org/t/pjsip- ... ions/80610

Re: pjsip trunk

Добавлено: 01 дек 2023, 02:42
Zavr2008
Только Realtime PJSIP не хватало ТС для полной радости)

На самом деле не так сложно транк с PJSIP настраивается во FreePBX - если любите ваниль, то можно посмотреть какие aor и прочее он генерит.
Также во время одного из Астерконфов мы сидели с Мэтью Фредериксоном в фойе, разговаривали про E1 и DAHDI - а он писал это и разговор зашел про конфиги PJSIP, про переименованные параметры к которым все привыкли - я тогда убедил его написать скрипт-конвертор конфигов. Через некоторое время он и появился..
Эх, хорошие были времена.. другая эпоха (сорри за оффтоп).

Но как правило мало кто транки на PJSIP переводит если chan_sip вполне хватает. У нас клиенты в основном на PJSIP вешают телефоны, поскольку и множественная регистрация и другие плюшки, но транк то обычный оператора и работает много лет - ИМХО незачем. До сих пор у PJSIP есть некоторые проблемы, а добивают уже не менее 5 лет включая насилие по исключению chan_sip от злости почему на нем до сих пор народ сидит ..
Исключение пожалуй Дойч-Телеком, где уйма заголовков регистрации и инвайтов, которые chan_sip просто не понимал, наши их не юзают никто..

Re: pjsip trunk

Добавлено: 01 дек 2023, 11:42
SUNtehnik
Не спорю, что chain_sip проще и удобнее для администрирования. Но есть спортивный интерес разобраться в pjsip. А охота пуще неволи :lol:

Re: pjsip trunk

Добавлено: 01 дек 2023, 11:46
SUNtehnik
Удалось через pjsip получить регистрацию на МГТС. Входящие заработали . :D С исходящими пока беда. :roll:

Re: pjsip trunk

Добавлено: 01 дек 2023, 12:10
ded
SUNtehnik писал(а):Но есть спортивный интерес разобраться в pjsip.
Напомню:
Для чего нужен форум?

Форум нужен для того, чтобы Вы САМИ нашли ответ на свой вопрос.

Форум нужен для того, чтобы Вы САМИ опубликовали на нем ответ на вопрос, интересный многим.
В чём проблема с исходящими? Что показывает выхлоп
CLI> phsip show endpoints ?

У пира МГТС будет такая строка примерно -
OutAuth: MGTS/1234567890
и исходя из этой строки диал будет
Dial(PJSIP/${EXTEN}@MGTS)