繁体   English   中英

问题设置Pubnub Nodejs服务器

[英]Issue setting up Pubnub Nodejs server

以下示例来自: 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( ... )

})();

@jerryfox,订阅时有一个名为“connect”的连接回调。 您应该只在此“连接”回调上发布测试发布...否则,您可以在实际连接之前发布,并且您永远不会看到该消息。 尝试这个:

pubnub.subscribe({
    channel: 'my_channel',
    callback: function(message) {
    console.log("Message received: ", message);
    },
    connect: publish
});

如果您仍有问题,请通过support@pubnub.com与我们联系,我们将帮助您解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM