2013-10-04 74 views
1

我試圖獲得基本的Chrome應用程序設置,我可以從Desktop Chrome向Chromecast接收器發送簡單的自定義消息。這些設備已被列入白名單,並且應用程序源位於白名單過程中指定的網址。此外,正在使用正確的API_ID,NAMESPACE對於接收者和發件人應用程序是相同的。Chromecast Receiver應用程序錯誤:WebSocket意外斷開連接:undefined

接收器應用程序加載,但只是在那之後我得到:

[ 0.230s] [goog.net.WebSocket] The WebSocket disconnected unexpectedly: undefined 

這似乎是阻止我能夠發送自定義消息到Chromecast。

從發件人應用程序,我可以找到設備,連接並啓動接收器應用程序。我也能夠正確斷開發件人的stopActivity()調用。

接收端的設置是:

var receiver = new cast.receiver.Receiver(APP_ID, NAMESPACE); 
var channelHandler = new cast.receiver.ChannelHandler(NAMESPACE); 

channelHandler.addChannelFactory(receiver.createChannelFactory(NAMESPACE)); 

channelHandler.addEventListener('error', function($e){ 
    console.log('JAC - Error!'); 
}); 

channelHandler.addEventListener('open', function($e){ 
    console.log('JAC - OnOpen!'); 
}); 

channelHandler.addEventListener('message', function($e){ 
    console.log('JAC - Message: ' + $e.type); 
}); 


receiver.start(); 

完整的日誌Chromecast裝置爲(實際的appid刪除):

[ 0.027s] [cast.receiver.ChannelHandler] New channel factory added: MY-APP-ID to heartbeatChannelHandler 
cast_receiver.js:66 
[ 0.088s] [cast.receiver.ChannelHandler] New channel factory added: receiverTest1: MY-APP-ID to receiverTest1 
cast_receiver.js:66 
[ 0.094s] [cast.receiver.ConnectionService] Open connection service websocket: url=ws://localhost:8008/connection 
cast_receiver.js:66 
[ 0.098s] [goog.net.WebSocket] Opening the WebSocket on ws://localhost:8008/connection 
cast_receiver.js:66 
[ 0.104s] [cast.receiver.Receiver] Receiver started. 
cast_receiver.js:66 
[ 0.142s] [goog.net.WebSocket] WebSocket opened on ws://localhost:8008/system/control 
cast_receiver.js:66 
[ 0.153s] [cast.receiver.ChannelOverWebSocket] Dispatch OPEN event to ws://localhost:8008/system/control 
cast_receiver.js:66 
[ 0.159s] [cast.receiver.Channel] Dispatch OPEN event to ws://localhost:8008/system/control 
cast_receiver.js:66 
[ 0.164s] [cast.receiver.Platform] Platform channel is open: ws://localhost:8008/system/control 
cast_receiver.js:66 
[ 0.208s] [goog.net.WebSocket] WebSocket opened on ws://localhost:8008/connection 
cast_receiver.js:66 
[ 0.212s] [cast.receiver.ConnectionService] Got event: d 
cast_receiver.js:66 
[ 0.222s] [goog.net.WebSocket] The WebSocket on ws://localhost:8008/connection closed. 
cast_receiver.js:66 
[ 0.225s] [cast.receiver.ConnectionService] Got event: a 
cast_receiver.js:66 
[ 0.230s] [goog.net.WebSocket] The WebSocket disconnected unexpectedly: undefined 

在這個問題上的任何幫助,將不勝感激!謝謝!

+0

我還沒有準備好將它作爲一個完整的答案,因爲我不知道'Receiver'構造函數中有什麼'NAMESPACE'類型,但它應該是一個數組。如果不是,也許奇怪的事情發生? – dowski

+0

啊賓果!這似乎使錯誤消失了。您是否想將其作爲答案而不是評論發佈,以便我可以給您信任? –

+0

將其移至答案。謝謝! – dowski

回答

1

Receiver構造函數中NAMESPACE的類型需要是一個數組。我猜你的代碼示例是一個字符串。這可能會導致你看到的奇怪問題。

+0

嗯,所以我認爲這也是我的問題,但即使在確定Receiver構造函數接受了NAMESPACE數組後,它似乎也不起作用。這是我的javascript控制檯輸出: – clu

相關問題