以下示例: https://www.npmjs.org/package/pubnub
我正在尝试通过以下方式建立从nodejs服务器到pubnub的连接:
var pubnub = require("pubnub").init({
publish_key: "pub key here",
subscribe_key: "sub key here",
channel: 'my_channel',
user: 'Server'
});
pubnub.subscribe({
channel: 'my_channel',
callback: function(message) {
console.log("Message received: ", message);
}
});
pubnub.publish({
channel : 'my_channel',
callback : function(e) { console.log( "SUCCESS!", e ); },
error : function(e) { console.log( "FAILED! RETRY PUBLISH!", e ); }
});
// test msg to see if server connect to pubnub channel
function publish() {
pubnub.publish({
channel : 'my_channel',
message : 'Server subscribed'
});
}
我认为这遵循提供的示例,但我的服务器不会显示在pubnub日志中,也不会从2个尝试连接到彼此的对等端接收任何SocketIO事件。我正在尝试使用pubnub与SocketIO通过WebRTC发送冰候选人以建立p2p视频
对于尝试连接的对等实际上确实有一个pubnub连接工作,设置如下:
(function() {
var pubnub_setup = {
channel: "my_channel",
publish_key: "pub key",
subscribe_key: "sub key",
user: user
};
var socket = io.connect( 'http://pubsub.pubnub.com', pubnub_setup);
// various socket.on( ... )
})();
答案 0 :(得分:0)
@jerryfox,在订阅上有一个名为“connect”的连接回调。您应该只在此“连接”回调上发布测试发布...否则,您可以在实际连接之前发布,并且您永远不会看到该消息。试试这个:
pubnub.subscribe({
channel: 'my_channel',
callback: function(message) {
console.log("Message received: ", message);
},
connect: publish
});
如果您仍然遇到问题,请通过support@pubnub.com与我们联系,我们将帮助您解决问题。