2013-11-14 51 views
1

我在使用chrome瀏覽器v30運行我自己的webrtc演示代碼時遇到了麻煩。但代碼完全適用於Firefox。 onicecandidate事件在該報價被其他同行接受之前正在觸發。另一方面,對等連接僅在接受報價後才創建。由於這個,當onicecandidate被觸發時,在接收端以對等連接結束null錯誤。 據我明白我的代碼的的WebRTC和流量是
步驟1:呼叫者按下呼叫按鈕
步驟2:getUsermedia將被稱爲
步驟3:對等連接將被創建
步驟4:報價將被髮送到呼叫者
步驟5:提供將被顯示給呼叫者
步驟6:對等連接將創建答案
步驟8:答案發送給主叫方接受呼叫
步驟7之後才創建對等體連接呼叫者
步驟9:ca米勒將發送icecandidates的被調用
步驟10:被叫方將發送icecandidates呼叫者onicecandidate事件在答覆前被解僱

與上述流的問題是,被叫側對等連接上的用戶接受報價之後才產生。但是在創建優惠之後,在接受優惠之前的來電方中,候選人名單將被髮送給呼叫者。來電方這是導致空錯誤。

我粘貼調試運行日誌引擎收錄: - pastebinDOTcom/gMgaxbBp

請我這個問題的解決方案。

回答

1

我想出了我的自我。問題實際上是在對等連接本地描述設置後立即顯示,它將開始收冰。我們只有在提供/答案完成後才需要轉發這些冰塊候選人。 util我們需要以某種方式在本地存儲。這段代碼完全適用於Firefox的原因是在Firefox中icecandidates將被收集並放入報價中。所以icecandidate交換提供/回答本身。

0

我想早些時候創建回答者PeerConnection - 至少在Firefox上它可以讓它開始收集ICE候選人並加速連接;我認爲它會解決你的問題。