2013-11-27 22 views
0

我剛剛在我的php5/jQuery門戶中添加了vline。當其他用戶掛起電話時,視頻面板不會被解僱

一切似乎都運作良好,但一件讓我生氣的事情。

假設有兩個用戶通過vline互相呼叫。用戶1呼叫用戶2,用戶2應答,在用戶2掛斷電話一段時間後。用戶1仍然看到視頻面板,他不能解僱它。

這種情況也發生在用戶2拒絕呼叫,用戶1看到視頻面板。

有人可以幫我解決這個問題嗎?

感謝

+0

您在使用我們的[videopanel部件(https://vline.com/developer/docs/ui_widgets)或者是你創建[從MediaStream媒體元素(https://開頭U電源。 COM /開發/文檔/ vline.js/vline.MediaStream#createVideoElement)?你已經採取了看看Shell實例(其中有一個標誌使用VideoPanel小部件)或PHP例子見https://vline.com/developer/docs/examples。 –

+0

我使用person.startMedia();方法來啓動一個新的電話,我創建了客戶這樣說: '客戶端= vline.Client.create({「服務Id」:服務Id,「UI」:真});' – Xabaras

+0

是否有人設法解決它?我仍然有這個問題,不能排除視頻面板窗口小部件時對方終止通話 – Xabaras

回答

1

我終於設法使它做的工作如下:

  • 增加了一個視頻包裝<div>到我的HTML
  • 通過傳遞這個選項「uiVideoPanel創建的V線客戶端「:」video-wrapper「
  • 處理了以下事件

    • enterState:進入
    • enterState:傳出
    • enterState:關閉

如下:

client = vline.Client.create({ 
    "serviceId": serviceId, 
    "ui": true, 
    "uiVideoPanel": "video-wrapper" 
}); 

client.on('enterState:incoming', handleShowWrapper). 
on('enterState:outgoing', handleShowWrapper). 
on('enterState:closed', handleHideWrapper); 

function handleShowWrapper(event) { 
    $("#video-wrapper").show(); 
} 

function handleHideWrapper(event) { 
    $("#video-wrapper").html(""); 
    $("#video-wrapper").hide(); 
} 

顯然,這是一種解決方法,但至少它使呼叫流程正常工作。

讓我知道是否有人有更優雅的解決方案或者如果vline設法解決它,並且不再需要解決方法。

感謝