Coturn服务器-处理陈旧时间和频道超时

时间:2019-02-11 10:24:33

标签: webrtc stun turn ice

Coturn的默认设置,即过时和频道超时如下所示。

mWebView.setWebViewClient(new WebViewClient(){

            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {

                if (url.equals(something)) {
                    // Do something
                }

                return super.shouldOverrideUrlLoading(view, url);
            }

            @RequiresApi(Build.VERSION_CODES.LOLLIPOP)
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {

                if (request.getUrl().toString().equals(something)) {
                    // Do something
                }

                return super.shouldOverrideUrlLoading(view, request);
            }

我有自己的用c / c ++开发的webrtc客户端模拟器。在典型的呼叫中,通过选择中继候选者(实际上是根据用户配置强制执行)作为连接检查的一部分,直到10分钟的媒体工作正常。 10分钟后,虽然媒体是从我的模拟器发送的,但Coturn不会将这些媒体数据包转发给另一方。

这是到目前为止我完成的事件/分析的详细顺序。

1)在10分钟结束时,我从模拟器中使用旧的随机数发送了频道刷新请求
2)Coturn给了我438条回复,它表明新的现时和领域
3)我提取了新的现时和领域
4)我重新计算了完整性密钥
5)我再次发送刷新请求
6)我得到刷新成功响应

仍然有我的模拟器发送的其他媒体数据包,coturn不会转发给通话中的另一方。

有人可以帮助我了解这里出了什么问题,以及如何解决这个问题。

0 个答案:

没有答案