LINUX.ORG.RU
ФорумAdmin

Настройка WebRTC (RTCWeb, Websocket) на Kazoo + клинт за NAT.

 , , ,


0

1

Здравствуйте коллеги!

Рискну обратиться здесь с данным вопросом хотя понимаю тема довольно екзотическая.

В общем построил тестовый кластер Kazoo из 2-х нод. В принципе практически все работает, но возникла проблема с WebRTC... А именно, сервер вроде как с публичным IP, ну а я клиент сижу за NAT. Добился звонков с web на софтофон (x-lite), а наоборот пока никак... ну и веб-веб аналогично.

В качастве web клиента пробую tryit.jssip.net и в данный момент пробую sipml5 установленный прямо пурвую ноду кластера. Браузер хром последней версии.

Основная ошибка сейчас Reason: SIP; cause=603; text=«Failed to get local SDP»

Попытка использовать stun сервер google ничего не изменила.

Может кто сможет помочь словом или делом (сроки поджимают).

С уважением, Евгений.

Ответ на: комментарий от Krieger_Od

Вот ссылка на лог этого неудачного звонка.

https://drive.google.com/file/d/0B6jLFGcoLoBUaG9QQldacDVTZzA/view?usp=sharing

198.50.111.111 - Kazoo сервер 91.211.111.111 - домашний клиент локальные ip я не переделывал

сбой происходит при попытке снять трубку на веб клиенте.

merlin-shadow ()
Ответ на: комментарий от merlin-shadow

recv 580 bytes from udp/[198.50.111.111]:5060 at 06:06:09.002754:
SIP/2.0 603 Failed to get local SDP

что это генерит? вот этот элемент и дебажить надо, и его логи смотреть.

Krieger_Od ★★ ()
Ответ на: комментарий от Krieger_Od

Ну 198.50.111.111 - это IP Kazoo Порт 5060 - это камайлио. Генерирует камайлио получается. Сейчас посмотрю его логи. Вот нужный кусок этого лога

https://drive.google.com/file/d/0B6jLFGcoLoBUdkxaZXA0cHV1R0U/view?usp=sharing

Там камайлио пишет что потерял маршрут,

А вообще есть подозрение на вот эту сточку m=audio 28552 RTP/AVP 120 101 - это когда на web и не удачно. А это когда на софтофон m=audio 27826 UDP/TLS/RTP/SAVPF 111 126 106 в этом случае и фингерпринт есть и т.д. Но я не уверен что это главная проблема. Но американцев эти строчки не заинтересовали, т.ч. может проблема и не в этом.

merlin-shadow ()
Ответ на: комментарий от merlin-shadow

Генерирует камайлио получается.

Быть не может. Камалио нет дела до SDP. Копай.

А вообще есть подозрение на вот эту сточку m=audio 28552 RTP/AVP 120 101 - это когда на web и не удачно. А это когда на софтофон m=audio 27826 UDP/TLS/RTP/SAVPF 111 126 106 в этом случае и фингерпринт есть и т.д. Но я не уверен что это главная проблема. Но американцев эти строчки не заинтересовали, т.ч. может проблема и не в этом.

Что за несвязные слова я читаю?

Если нужна совместимость между RTP/AVP и RTP/SAVPF, прикрути к камалио rtpengine.

Krieger_Od ★★ ()
Ответ на: комментарий от Krieger_Od

Ну вариантов как мне кажется не много, тут учавствуют два приложения камайлио висящий на 5060 и freeswicth 11000... больше некому.

Вот кусок конфигурации камайлио

#!ifdef WEBSOCKETS-ROLE

if ($du == $null) {

handle_ruri_alias();

switch ($rc) {

case -1:

xlog(«L_ERR», «$ci|stop|failed to handle alias of R-URI $ru\n»);

send_reply(«400», «Bad request»); exit;

case 1: xlog(«L_INFO», «$ci|log|loose_route in-dialog message with alias $du»);

break;

case 2: xlog(«L_INFO», «$ci|log|loose_route in-dialog message with alias $du»);

break;

}

}

#!endif

Куда копать?

merlin-shadow ()
Ответ на: комментарий от Krieger_Od

Читая старые посты по форумам вижу, что народ рекомендует использовать костыль в виде webrtc2sip. Но как Вы понимаете такой костыль использовать вместе с Казу явно иррационально.

merlin-shadow ()
Ответ на: комментарий от merlin-shadow

костыль в виде webrtc2sip

webrtc2sip - глючное крэшащееся неподдерживаемое изделие. Рекомендую rtpengine.

Ну вариантов как мне кажется не много, тут учавствуют два приложения камайлио висящий на 5060 и freeswicth 11000... больше некому.
Вот кусок конфигурации камайлио
Куда копать?

Я вам уже сказал, kamailio тут ни при чём. Несмотря на невнятность ваших изъяснений, очевидно, копать вам надо что угодно, кроме него. Проследите, что генерит то сообщение.

Krieger_Od ★★ ()
Ответ на: комментарий от anton_jugatsu

Нашел я кто генерит, это sipml5 (WebRTC клиент заточенный под Kazoo хотя хром уже не поддерживает встроенный в него плагин) генерит. Только что с этим делать? Dubango говорит настраивайте свой софт у него там все Ok. Ну и действительно настроил FreeSwitch - WS работает идеально по любым направлениям. Но с масштабируемостью у него как-то не очень по сравнениею с Kazoo или даже просто со связкой Kamailio + FreeSwitch.

А вообще у кого-нибудь Kazoo или Kamailio с WebRTC и клиентами за NAT стабильно работал? Интересно - это в принципе возможно?

merlin-shadow ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.