我正在测试的场景是尝试在远程回答之前取消请求的会话启动。我正在使用运行Android 6.0的两台Nexus 7设备之间的设置。
我引入了会话发起取消选项,该选项在会话发起请求已经进行并且远程用户尚未应答(例如,处于用户警报状态)期间可供用户使用。当用户请求会话取消时,发起侧的RTC对等连接信令状态为“具有本地提供”。在启动取消时,我在对等连接上调用关闭,并且当RTC信令状态(正如我所期望的)进行“关闭”时,看到在发起侧发生信令状态改变。
然而,在接收会话发起请求的一侧,RTC信令状态进入状态" has-remote-offer"正如预期的那样,但是来自发起方的近距离事件似乎没有传播到接收方,接收方仍然保留在"有远程提供"状态。
我已经审查了标准,并且看起来应该在接收方生成事件(即,关闭应该在州内关闭时发送"有本地报价")。
显然,我可以围绕这种情况构建并在会话服务器信令通道上生成终止 - 但是想了解我是做错了什么还是误解了规范?
感谢,
答案 0 :(得分:1)
您还没有成功协商连接,因此RTCPeerConnection
唯一通过您提供的信令渠道与另一方进行通信的方式。
为了让它在close
上传达某些内容,必须在API中找到类似于onicecandidate
的内容,并且不存在这样的内容。
请记住,您的代码是两端的,因此您可以自己轻松发出信号。
除了规范中的一个小错误(which will hopefully go away soon)之外,对等连接不会自行关闭。