Как получить libnice, чтобы остановить проверку кандидатов
Я использую libnice на собственном сервере C++, который пытается установить одноранговое соединение WebRTC с клиентским приложением веб-браузера. Используя libnice, сбор кандидатов проходит успешно, а обмен предложениями / ответами проходит успешно. Затем он переходит к этапу проверки, который также является успешным. В Wireshark я вижу, что обмен запросами и ответами STUN также успешен.
Однако проверка кандидатов продолжается и продолжается, постоянно отправляя / получая успешные запросы / ответы STUN.
Для меня это не очевидно, и пример кода не показывает, как на самом деле остановить проверки кандидатов, когда они были успешными. Я вызвал подпрограмму API: nice_agent_attach_recv() и зарегистрировал обратный вызов, но он, похоже, не срабатывает. И даже если бы это было так, подпись обратного вызова не дает мне никакой подсказки о том, как обрабатывать какие-либо данные.
Вопрос: какую обработку следует выполнить в обратном вызове ice_agent_attach_recv ()?
Спасибо, -Андрес
1 ответ
Не нужно выполнять обработку в обратном вызове. Вам нужно будет позвонить nice_agent_get_local_candidates()
а затем продолжить с учетными данными и так далее. Здесь есть достойный пример в справочном руководстве.