Страница 1 из 1
Contact header в сообщении REGISTER
Добавлено: 11 апр 2016, 16:40
kashmir5x
Всем привет!
Есть ли возможность в сообщении REGISTER изменить поле Contact таким образом, чтобы после @ был бы домен, а не IP адрес.
Сейчас:
Contact: <sip:55555555@5.5.5.5:5060>
Нужно:
Contact: <sip:55555555@pbx.test.com:5060>
externhost, externip конечно меняет IP, но нужно подменить на доменное имя.
Актуально как на Астериске 11 с chan_sip, так и на Aстериске 13 с pj_sip.
Заранее спасибо!
Re: Contact header в сообщении REGISTER
Добавлено: 11 апр 2016, 17:58
Pechen
посмотрите во фромдомаин
Re: Contact header в сообщении REGISTER
Добавлено: 11 апр 2016, 18:53
kashmir5x
Спасибо, но fromdomain я использую - поле From: подменятся (иначе не проходила бы регистрация на прокси)
Но в Contact: виден IP астериска.
Re: Contact header в сообщении REGISTER
Добавлено: 11 апр 2016, 19:41
Samael28
register => fromuser@fromdomain

authuser@host:port/extension
Re: Contact header в сообщении REGISTER
Добавлено: 12 апр 2016, 01:05
kashmir5x
увы. поле From не актуально, нужно изменить поле Contact
Re: Contact header в сообщении REGISTER
Добавлено: 12 апр 2016, 14:51
Pechen
Re: Contact header в сообщении REGISTER
Добавлено: 13 апр 2016, 07:38
virus_net
; register => [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry]
Код: Выделить всё
register => user:password@pbx.test.com:5060/55555555
В Contact будет
55555555@pbx.test.com
Re: Contact header в сообщении REGISTER
Добавлено: 13 апр 2016, 10:18
kashmir5x
достиг желаемого изменив source код chan_sip и перекомпилировав модуль.
последний аргумент (выделен) подменяю на то что мне нужно:
if (p->socket.type == SIP_TRANSPORT_UDP) {
ast_string_field_build(p, our_contact, "<sip:%s%s%s>", user,
ast_strlen_zero(user) ? "" : "@", ast_sockaddr_stringify_remote(&p->ourip));
спасибо за ответы.