WebRTC错误-会话错误描述:数据通道类型不匹配预期的RTP,获得了SCTP

问题描述

我不熟悉WebRTC和triyng来创建我的第一个应用程序。我找到了这篇文章https://www.tutorialspoint.com/webrtc/webrtc_quick_guide.htm,并按照那里所说的去做。如果我在Chrome中进行了测试,则生成的应用程序可以正常运行。但是,当我尝试在2种浏览器(Chrome和Mozilla)中测试此应用时,会出现此错误:

未捕获(承诺)的DOMException:无法执行 'RTCPeerConnection'上的'setRemoteDescription':会话错误代码: ERROR_CONTENT。会话错误描述:数据通道类型不匹配。 预期的RTP,得到了SCTP。

当我从Mozilla客户端发送报价并且Chrome客户端试图在此部分代码中对此报价给出答案时,就会发生这种情况:

myConnection.setRemoteDescription(new RTCSessionDescription(offer));
myConnection.createAnswer(function (answer) {
    myConnection.setLocalDescription(answer); 
    send({ 
        type: "answer",answer: answer 
    }); 
},function (error) { 
    alert("oops...error"); //<-- this alert fires all the time
}); 

我已经对此进行了搜索,发现的所有内容都设置为new RTCPeerConnection(configuration,{ optional: [{RtpDataChannels: false}] }),但是如果我这样做了,那么当我尝试发送一条消息时,它说未打开dataChannel.readyState。

我做错了什么?任何帮助!

谢谢!

解决方法

删除optional: [{RtpDataChannels: true}],然后等待datachannel.onopen事件触发,然后再尝试发送消息。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...