簡體   English   中英

無法使用Node.js + XMPP接收上游GCM消息

[英]Unable to receive upstream GCM messages with Node.js + XMPP

我是node.js和XMPP的新手,但不是Javascript或GCM。 我無法使用node-xmpp接收上游消息,並且沒有調用任何回調,甚至沒有error 我瀏覽了其他SO線程,但沒有一個解決方案起作用。 這是我的整個路線:

var express = require('express');
var router = express.Router();
var xmpp = require('node-xmpp');

router.get('/', function(req, res, next) {

  var options = {
    type: 'client',
    jid: 'project-12345@gcm.googleapis.com',
    password: 'apiKey12345',
    port: 5235,
    host: 'gcm.googleapis.com',
    legacySSL: true,
    preferredSaslMechanism : 'PLAIN'
  };

  // this prints correctly
  console.log('Creating xmpp app');

  var cl = new xmpp.Client(options);
  cl.connection.socket.setTimeout(0);
  cl.connection.socket.setKeepAlive(true, 10000);

  // None of these callbacks are called
  cl.on('online', function() {
    console.log('online');
  });

  cl.on('connection', function() {
    console.log('online');
  });

  cl.on('authenticate', function(opts, cb) {
    console.log('authenticated');
  });

  cl.on('error',function(e) {
    console.error(e);
  });

  cl.on('stanza', function(stanza) {
    console.log(stanza);
  });

  res.render('index', { title: 'GCM upstream test' });
});

module.exports = router;

謝謝

此處的OP:問題是因為路由到達res.render時正在終止XMPP操作。 從路由中刪除XMPP代碼后,我得到XMPP authentication failure ,這很可能是由於錯誤的jid /密碼引起的。 項目要求已更改,並且我不再需要上游消息傳遞,因此我不會嘗試解決身份驗證失敗。 感謝您的回復

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM