2013-10-04 73 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

相关问题