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

Отсутствие КПВ при исходящих через SIP-транк

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Аватара пользователя
tol_iwan
Сообщения: 273
Зарегистрирован: 11 апр 2014, 11:29
Откуда: Брянск
Контактная информация:

Отсутствие КПВ при исходящих через SIP-транк

Сообщение tol_iwan »

Была похожая тема - http://forum.asterisk.ru/viewtopic.php? ... 0%9F%D0%92
Только у меня все линии приходят по SIP. Провайдер - CISCO(NAT) - Asterisk 11.15
Есть два провайдера - РТ и мегафон(мультифон).
Есть три вида телефонов - GS-GXP2200, GS-GXP1405 и софтовый.
Исходящие через мегафон идут со всех телефонов с КПВ.
Исходящие через РТ идут с GS-GXP2200 и софтового с КПВ. А на GS-GXP1405 КПВ нет.
Использую Dial() без 'm' и 'r'.
sip.conf
[general]
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
language =ru
allowsubscribe =yes
notifyringing =yes
notifyhold =yes
limitonpeers =yes
subscribecontext =status
alwaysauthreject =yes
allowguest =no
bindaddr =172.16.0.102:5060
tcpenable =yes
useragent =asterisk
dtmfmode =auto
videosupport =no
accept_outofcall_message=yes
outofcall_message_context =messages
auth_message_requests =no
preferred_codec_only=yes
disallow=all
allow=alaw
allow=ulaw
faxdetect=no
для телефонов одинаковый:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
[phone-local](!)
type=peer
host=dynamic
deny=0.0.0.0/0.0.0.0
permit=172.16.0.0/255.255.0.0
qualify=yes
call-limit=2
secret=12345
directmedia=no
insecure=invite
trustrpid=yes
nat=no
context=phones-level_3
callgroup=1
pickupgroup=1

[2502](phone-local) - это GXP1405
[2504](phone-local) - это софтфон(MicroSIP)
[2536](phone-local) - это GXP2200
для транков:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
[general]
register => tcp://7920XXXXXXX@multifon.ru:12345:7920XXXXXXX@sbc.megafon.ru:5060/7920XXXXXXX

[7920XXXXXXX]
dtmfmode=inband
type=peer
transport=tcp
host=sbc.megafon.ru
secret=12345
defaultuser=7920XXXXXXX
fromuser=7920XXXXXXX
fromdomain=multifon.ru
context=incoming_calls_megafon
nat=force_rport,comedia
directmedia=no
insecure=invite,port

[RT](!)
dtmfmode=inband
type=peer
host=domen.ru
secret=12345
fromdomain=domen.ru
context=incoming_calls
nat=force_rport,comedia
directmedia=no
insecure=invite

[my_login](RT)
defaultuser=my_login
fromuser=my_login
callbackextension=my_login
в Dial() использовал 'm' и в общем было неплохо, но при звонках на мобильные не понятно - занято, недоступен и прочее - автоответчик оператора по этому поводу музыку не прерывает, т.к. ответа нет. Параметр 'r' как я понимаю это тот же 'm', только играет "музыка" в виде КПВ. Поэтому перестал использовать. Речь идет о мобильных, т.к. люди хотят слышать сообщения мобильного оператора, но КПВ нет и при звонках на городские номера.

Разница в вызовах на консоли есть между вызовами РТ и МегаФон, но нет разницы в вызовах с GXP1405 и GXP2200:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
с GXP1405
вызов через МегаФон с КПВ:
SIP/7920XXXXXXX-0000358a is making progress passing it to SIP/2502-00003589
> 0x7f7084017aa0 -- Probation passed - setting RTP source address to 193.201.229.19:10506
> 0x7f7138a851b0 -- Probation passed - setting RTP source address to 172.16.25.2:5004
SIP/7920XXXXXXX-0000358a is ringing
вызов через РТ без КПВ:
SIP/my_login-00003590 is making progress passing it to SIP/2502-0000358f
> 0x7f713a5d83b0 -- Probation passed - setting RTP source address to 172.16.25.2:5004
SIP/my_login-00003590 is ringing
172.16.25.2 - IP телефона 2502

с GXP2200(аналогично с MicroSIP)
вызов через МегаФон с КПВ:
SIP/7920XXXXXXX-000035ec is making progress passing it to SIP/2536-000035eb
> 0x7f70f810b280 -- Probation passed - setting RTP source address to 193.201.229.19:15346
> 0x7f71389b3060 -- Probation passed - setting RTP source address to 172.16.25.36:49524
SIP/7920XXXXXXX-000035ec is ringing
вызов через РТ с КПВ:
SIP/my_login-000035c5 is making progress passing it to SIP/2536-000035c4
> 0x7f7138411ad0 -- Probation passed - setting RTP source address to 172.16.25.36:12516
SIP/my_login-000035c5 is ringing
172.16.25.36 - IP телефона 2536
tcpdump не снимал, не стоит на этом сервере, поставлю буду смотреть, там думаю яснее будет. Сейчас пока debug изучаю.
Но может кто и без того, что посоветует или вдруг это обычная ситуация, хоть и ненормальная.
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение ded »

Почитайте про Early media - сообщения в предответном состоянии. Обеспечивается провайдером, и/или тюнингом транка на провайдера. Все варианты описаны в интернете, думаю, что и на этом форуме чуть более, чем полностью.
Samael28
Сообщения: 1057
Зарегистрирован: 08 янв 2011, 18:32
Откуда: Киев
Контактная информация:

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение Samael28 »

Провайдер может присылать 183 (Session Progress) вместо 180 (Ringing). В первом случае гудки дает провайдер, во втором - сам аппарат.
Мой профайл на Upwork
Аватара пользователя
tol_iwan
Сообщения: 273
Зарегистрирован: 11 апр 2014, 11:29
Откуда: Брянск
Контактная информация:

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение tol_iwan »

Протестировал побольше доменов РТ. Как выяснилось на 4 из 8 доменов есть проблема, на 4 все нормально.
За ответы спасибо. Early media навело на некоторые ответы.
Поставил:
Progress inband: No
No premature media: Yes(по умолчанию)
Ситуация изменилась - при вызове доступного абонента КПВ идет, если сбросить на мобильном, то барышня скажет, что абонент занят. Если абонент изначально недоступен, то в трубке тишина и потом сброс через 20 сек(время которое барышня говорит "Абонент недоступен" 4 раза на двух языках).
При изменении Progress inband на "Yes" ситуация не меняется, при "Never" пропадает КПВ, если абонент доступен, т.е. изначальная проблема.
Думал может NAT звук не пускает с разных доменов. Выяснилось, что на 8 доменов РТ использует три IP адреса для сигнализации и около десятка от которых идет RTP, причем для одного и того же домена при разных вызовах RTP идет с различных адресов. Для всех разрешения есть.

Изучил tcpdump(как мог конечно, не спец).
Там видно, что при удачном(в свете рассматриваемой проблемы) вызове и при неудачном все одинаково. От провайдера 180 потом 183 и идет обмен RTP.
Думал что может проблема в другом - от РТ идет голос, но от мобильного оператора, который не отвечает на РТ не приходит это сообщение и поэтому тишина. Но позвонил с софтфона(MicroSip) через домен, где с GXP1405 тишина. Там 12-13 секунд тишины, после чего все-таки доходит сообщение о недоступности. В Wireshark видно что в случае софтфона и в случае 1405 от провайдера проходит RTP до asterisk, а от него уже на внутренний. Т.е. по идее и там и там есть что-то, но во втором случае не слышно ничего.
В прикрепленном файле слева направо: 1405 с тишиной через домен 1 - 1405 с сообщением через домен 2 - MicroSIP через домен 1 с сообщением через 13 сек. Все на мой взгляд одинаково.
Вложения
img.png
Аватара пользователя
tol_iwan
Сообщения: 273
Зарегистрирован: 11 апр 2014, 11:29
Откуда: Брянск
Контактная информация:

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение tol_iwan »

Дополнение: проверки проводил на своем мобильном - МТС. Проверил на коллеге - Tele2 - услышал сообщение.
Можно что-то сделать с проблемой, кроме того, что оставить как есть?
Аватара пользователя
tol_iwan
Сообщения: 273
Зарегистрирован: 11 апр 2014, 11:29
Откуда: Брянск
Контактная информация:

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение tol_iwan »

Записал вызов MixMonitor-ом. В записи барышня говорит, что абонент недоступен, а в телефон это не приходит?
Как это поправить можно? И почему на одном и том же аппарате с одного и того же SIP-транка только на конкретного оператра(МТС)?
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение ded »

Кодек.
Аватара пользователя
tol_iwan
Сообщения: 273
Зарегистрирован: 11 апр 2014, 11:29
Откуда: Брянск
Контактная информация:

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение tol_iwan »

Стоят везде 711A и вторым 711U.
По картинке если смотреть, то от РТ до Asterisk идет 711U, а до телефона 711A. На телефонах и на Asterisk стоят 711A и 711U.
Попробую повоевать с кодеками - все равно пока мыслей нет других.
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение ded »

Если от РТ до Asterisk идет 711U, а до телефона 711A, то попробуйте
1) выгладить всё в 711U
2) посмотреть как отрабатывает "Абонент недоступен или находится вне зоны действия" в варианте от РТ/МТС/Билайн
Аватара пользователя
tol_iwan
Сообщения: 273
Зарегистрирован: 11 апр 2014, 11:29
Откуда: Брянск
Контактная информация:

Re: Отсутствие КПВ при исходящих через SIP-транк

Сообщение tol_iwan »

При выставлении в sip.conf на телефон только 711U сообщение проходит. Соответственно и tcpdump показывает, что там 711U.
Предположил бы, что телефон 711A не поддерживает, но обычные вызовы и те же звонки на МТС(уже сам разговор, если есть) идут по 711A(когда в sip.conf естественно прописан кодек).
Когда tele2 говорит, то идет по 711A. И нормально.
В чем может быть проблема?
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH