【发布时间】:2021-04-29 11:37:21
【问题描述】:
我正在为多个用户创建一个视频聊天应用程序。主持人发起呼叫,当第二个参与者加入时,在主持人和第二个参与者之间创建对等连接。
当第三个人加入时,在 1 & 3 和 2 & 3 之间创建 Peer 连接 (每个客户端有 n-1 个对等连接)。新连接按预期工作,但 1 和 2 之间的媒体流中断。
在对等连接创建后,我正在为每个对等连接使用索引注册适当的事件侦听器 -
peerConnection.onicecandidate = (event) => handleIceCanditate(pcIndex, event);
peerConnection.ontrack = (event) => handleTrack(pcIndex, event);
peerConnection.onnegotiationneeded = (event) => handleNegotiationNeeded(pcIndex, event);
peerConnection.oniceconnectionstatechange = (event) => handleICEConnectionStateChange(pcIndex, event);
peerConnection.onicegatheringstatechange = (event) => handleICEGatheringStateChange(pcIndex, event);
peerConnection.onsignalingstatechange = (event) => handleSignalingStateChange(pcIndex, event);
索引为 0 的旧对等连接的任何事件都不会在停止工作之前被触发。有关如何调试问题的任何线索。
老Peer Connection的连接状态是connected
【问题讨论】:
标签: webrtc rtcpeerconnection peer-connection