2013-04-30 21 views
3

使用flash我已成功訂閱/取消訂閱/並在過去成功重新訂閱。 現在我正在使用web-rtc連接,當我嘗試手動重新訂閱未訂閱的流時,它不起作用。如何取消訂閱並使用opentok從視頻流中重新訂閱web-rtc

有沒有人試圖用更多的運氣做同樣的事情?

我用session.subscribe(stream, stubDiv.id, subscriberProps);

然後,如果我點擊退訂我用

for(var i = 0; i < subscribers.length; i++) 
    session.unsubscribe(subscribers[i]); 

,並再次訂閱我提供,我已經退訂 能夠爲之前存儲在同一個對象流重新訂閱session.subscribe(stream, stubDiv.id, subscriberProps);

這最後一部分是不起作用的。

回答

0

在您的第一個session.subscribe,stubDiv被視頻div取代。在session.unsubscribe中,stubDiv被擦除。當您再次使用stubDiv(現在不存在)調用subscribe時,可能會出現錯誤。

0

我知道這是一個老問題,但我今天有同樣的問題,別人也可能會這樣。 像@songz說的那樣,當你取消訂閱它時,它會從DOM中刪除元素。

相反,訂閱添加到insertMode: 'append'屬性時:

let subscriberProps = { 
    insertMode: 'append' 
}; 
session.subscribe(stream, stubDiv.id, subscriberProps); 

這將添加另一個DIV您選擇的元素裏面,當你取消它只會刪除新的div。