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