Можно ли получить сервер STUN, используемый после подключения RTCPeerConnection

Не уверен, что название имеет смысл. Чтобы добавить некоторый контекст, мы создаем инфраструктуру WebRTC, и для этого у нас есть несколько серверов STUN, которые работают и работают.

Иногда у нас есть пользователи, жалующиеся на то, что соединение занимает слишком много времени, поэтому мы хотели бы получить некоторую аналитику по звонкам. Поскольку мы предоставляем список IP-адресов STUN (включая несколько общедоступных STUN в качестве резервных), мы хотели бы обнаружить сервер STUN, который успешно инициировал вызов.

Мы собрали кучу информации благодаря RTCPeerConnection.getStats но к самому STUN ничего не относится. Итак, на мои вопросы:

  • есть ли какой-либо JS API, который позволяет нам получить используемый STUN?
  • есть ли какой-нибудь инструмент, о котором я не знаю, который мог бы выполнить эту работу?
  • содержит ли SDP какую-либо информацию, относящуюся к STUN?

Надеюсь все понятно, спасибо за добрые ответы


person Dlacreme    schedule 18.02.2021    source источник


Ответы (1)


Статистика содержит URL-адрес сервера: https://w3c.github.io/webrtc-stats/#dom-rtcicecandidatestats-url Однако это не реализовано, и, поскольку серверы STUN не участвуют в фактическом вызове, эта информация вряд ли будет полезна.

Для серверов TURN вы можете получить активную пару кандидатов и IP-адрес любого задействованного ретранслятора из getStats. См. https://webrtc.github.io/samples/src/content/peerconnection/constraints/ для примера, показывающего, как определить активную пару кандидатов.

person Philipp Hancke    schedule 18.02.2021