Или вы невнимательно прочитали, или я не очень внятно спросил.
Я не применяю для регистрации строку register => в секции [general] файла sip.conf в конце которой пишется expire, потому что это вызывает проблемы с идентификацией по какому транку пришел входящий в случае если я регистрирую несколько транков на одном сервере (у одного оператора).
Вместо этого я в описании транка указываю параметр callbackextension= при указании которого астериск автоматом создает регистрацию и при котором нет вышеописанной проблемы. Но вылазит другая проблема - я не знаю как указать registration expire в этом случае.
SolarW (Jan 20 '15)editСпасибо за наводку на идею глянуть в дебаг :-)
Там действительно много интересного.
В пакете REGISTER оказалось что я шлю поле Expires: 120 (данные из параметра defaultexpire=120 раздела [general] файла sip.conf)
На что сервер провайдера отвечает мне
SIP/2.0 423 Interval Too Brief
Min-Expires: 600
На что мой астериск шлет еще один пакет REGISTER у которого уже Expires: 600
Но тут же пишет в лог, что:
NOTICE[2759]: chansip.c:23507 handleresponse_register: Outbound Registration: Expiry for natsip.datagroup.com.ua is 600 sec (Scheduling reregistration in 585 s)
Вот и выяснилось откуда взялось 585 сек.
SolarW (Jan 20 '15)editmeral, да я в курсе что провайдер должен согласится. Я не зная что есть механизм запроса от провайдера / ответа от моего астериска нужного провайдеру экспайра. Ну и цифра 585 сек смущала...
virus_net, как минимум в двух местах. Во-первых в CDR отображаются входящие не по тому транку, во-вторых в FOP2 (и аналогах) отображается занятость не того транка. http://igorg.ru/2012/02/22/sip-trank-neskolko-uchyotok/ - вот у Игоря эта проблема описана. А звонок в нужный контекст для обработки без проблем уходит, с этим вопросов нет.
Так что вопрос пока остается открытым - как указать в настройках пира (а не глобально) время экспайра регистрации. Ибо судя по тому что я вижу параметр defaultexpire можно указывать только глобально, что делать не хотелось бы.
SolarW (Jan 21 '15)editПро "проблему" слышал. Ответ на как задать без register не знаю.
FOP2 и аналоги не знаю и знать не хочу, пишу все сам, потому оно показывает всегда то что хочу я. С CDR тоже решаемый вопрос, если подумать и поколдовать, но это в "своем" астере. Что делать в "коробочном" я ХЗ.
Удачи.
virus_net (Jan 21 '15)editmeral, в том то и дело что при использовании callbackextention= в свойствах пира регистрируется как раз пир. А если при этом еще задать строку register => то получаются ДВЕ регистрации видимые по sip show registry
Попробуйте сами прописать callbackextention= в свойствах пира и посмотреть что при этом происходит.
SolarW (Jan 22 '15)edit
ну тут всего два места,не? а вообще это все ерунда. большинство сервисов блочат аккаунт у которого перерегистрация меньше рекомендованой, ибо нефиг
meral (Jan 19 '15)editЕсли не тяжело - можно пальцем ткнуть в эти два места?
Я в курсе про:
registertimeout - сколько времени ждать ответ на запрос о регистрации
registerattempts - количество попыток регистрации
Плюс еще три параметра, которые вроде для того, что надо
minexpiry = 60
maxexpiry = 3600
defaultexpiry = 120
но нифига не работают судя по тому, что:
Host dnsmgr Username Refresh State Reg.Time
natsip.datagroup.com.ua:5060 N 0441234567 585 Registered Mon, 19 Jan 2015 22:58:28
1 SIP registrations.
Откуда вылазят эти 585? Я их не задавал ни в одной настройке.
SolarW (Jan 19 '15)editвылязят из ответа сервера на регистрацию. вы спрашиваете регистрацию, он вам отвечает и говорит до какого времени валидна(в данном случае скорее всего 600). а min/max это ВАША серверная часть. когда на вас регистрируются.
meral (Jan 20 '15)edit