Как стать автором
Обновить

Комментарии 27

нет инфы зачем он нужен(или я не нашел) но без PJSIP неверно отрабатывает ICE и dtls.
В логах замечал такое
ERROR[1923]: pjsip:0 <?>: 	icess0x326c0e8 ..Error sending STUN request: Invalid argument 

но все работало :)
Насколько знаю(тестировал) раньше не работали звонки в локальной сети, так как насколько понимаю по протоколу ICE трафик принудительно уходил через gateway как сейчас с этим?
я stund ставил на сервере с астером.
Может напишите для полноты, так как это достаточно важный вопрос. Редко где это описывают!
Stun — ICE Это же разные вещи товарищи
вырезка из webrtc.pbxware.ru/sipml5/expert.htm#aIceServers пункт 4
This must be an array of STUN/TURN servers to use. The format is as explained at www.w3.org/TR/webrtc/#rtciceserver-type
To disable TURN/STUN to speedup ICE candidates gathering you can use an empty array. e.g. [].

Если указать вместо stun сервера [] то sipml заюзает ICE для определения STUN сервера.
Нет вы немного попутали, сервер стан нужен для определиния внешнего адреса, также он помогает для прохождение Натов, ну тут в принципе ничего нового.
А вот айс, это довольно новая штучка, принцип такой, каждый участник диалога в сип сообщения вставляет все ай пи адреса которые можно использовать для того что бы трафик голосовой к нему пришел, и на этом основании будет выбран лучший кандидат. Это даёт преимущество в том случае где некоторое количество трафика могут быть отправлены напрямую, кстати даже если сети разные, довольно интересная вещь, но я пока грамотноё использование не видел.
Блин перчик-файс никто не заметил :)
А астер уже не крашится при входящем звонке с сип-транка? Нет проблем с SRTP? Нет ли проблем с ICE? Всегда ли слышно обоих человек при входящем звонке?
Астер не падает, с SRTP вообще никогда проблем не видел :). ICE работает звук бегает без проблем тестил PROV — WebRTC, WebRTC — PROV и WebRTC — WebRTC.
Заметил проблему, иногда звонок в браузере срывается а на астере он еще есть.
Ну видимо за девять месяцев они все-таки сделали нормальную поддержку WebRTC.
Не сделали. Есть проблемы с односторонним голосом и подобные вещи. Которые происходят рандомно, по крайней мере так было с 12.4.0. Хотя очень много проблем они все же решили, включая добавление в исходящий INVITE sha-2 sdp поля. Раньше не было и нельзя было позвонить с астера на вебфон. Вообще самый стаблильный сервер для работы с WebRTC это kamailio (ну и opensips я думаю. Не щупал его, но так как модули для обработки webrtc есть и там и там- то я думаю можно и его).
проблемы с односторонним звуком как правило обусловлены некорректным определением порта или пары адрес: порт для RTP-медиа абонента. воспроизводилось >90 % при наличии на хосте абонента более 1-го IP-адреса (по крайней мере, при активном OpenVPN с подсетью 10.0.0.x)

выставление icesupport=yes в rtp.conf снимает эту проблему (практически?) начисто. проверялось на 12.4.0, т.е. на pj-стеке.
У меня неожиданный вопрос. У вас вызов на asterisk проходит? К примеру обезьянок послушать.
Да проходило, тестил echo и playback
Очень интересно, так-как вот по идее не должно. Видимо вам повезло больше :)
Вызов в плане звука или сам факт звонка?
В плане звука. Я словил баг когда rtp есть и доходит до клиента, но фактически звука нет. Судя по тому что видно в webrtc-internals и то как ведет себя ICE есть проблемы из-за rtcp-mux и некорректной работы failback в браузерах. В итоге нормально и стабильно это работает только во FreeSwitch где как раз есть поддержка rctp-mux.
я ловил такую проблему когда тестировал в локальной сети, оказалось что rtp трафик упорно летел наружу и работало только когда сервер находился вне локальной сети!
Нет.Тут rtp трафик приходит куда надо. Чтобы в локалке приходило куда надо все равно требуется ICE. В этом случае более менее правильно выбирает.
Посмотрите тут groups.google.com/d/topic/sip_js/d5Tivv02Ct0, там у людей такая же проблема: соединие по SIP-у есть, звука нет. Проблема в установке DTLS сессии.
Нет там такой проблемы. Звук идет ошибок насчет DTLS не наблюдается.
DTLS ошибки и не будут наблюдаться ни в логах астериска, ни в javascript консоли. При этом будет идти в сторону браузера RTP трафик. В любом случае, попробуйте собрать версию 11.16.0 — на ней у меня WebRTC завёлся.
DTLS ошибки и не будут наблюдаться ни в логах астериска, ни в javascript консоли.

Это прекрасно, все что я могу сказать. И каким образом обнаружить тогда проблемы? Я ставил последнюю 13 доступную из репозитория. Или я так понимаю из него может не работать?
Посмотрел, версию. Стояла более старая после обновления заработало.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории