【问题标题】:Error while writing a Google CCS server in node using node-xmpp使用 node-xmpp 在节点中写入 Google CCS 服务器时出错
【发布时间】:2013-06-19 03:43:21
【问题描述】:

这是编写 CCS 服务器的 Google 文档中的 Python 代码:

https://developer.android.com/google/gcm/gs.html#server

我想出了大部分内容,以及如何使用https://github.com/astro/node-xmpp 用 Ja​​vascript 编写代码

但我不明白如何使用模板发送数据,正是这部分代码:

def send(json_dict):
  template = ("<message><gcm xmlns='google:mobile:data'>{1}</gcm></message>")
  client.send(xmpp.protocol.Message(
      node=template.format(client.Bind.bound[0], json.dumps(json_dict))))

在 node-xmpp 中,发送是通过以下方式完成的:

var cl = new xmpp.Client({ jid: username,
                           password: password });
cl.addListener('online',
               function() {
                   argv.slice(5).forEach(
                       function(to) {
                           cl.send(new xmpp.Element('message',
                                                    { to: to,
                                                      type: 'chat'}).
                                   c('body').
                                   t(argv[4]));
                       });

我了解正在发送的 JSON,但我无法绑定他们在 Python 中管理的模板。有什么帮助吗?

【问题讨论】:

    标签: javascript python node.js xmpp google-cloud-messaging


    【解决方案1】:

    重要的部分是以所需的格式发送消息:

    <message id="">
      <gcm xmlns="google:mobile:data">
      {
          "to":"REGISTRATION_ID",  // "to" replaces "registration_ids"
          "message_id":"m-1366082849205" // new required field
          "data":
          {
              "hello":"world",
          }
          "time_to_live":"600",
          "delay_while_idle": true/false
      }
      </gcm>
    </message>
    

    是否使用模板并不重要。我不知道python 也不知道javascript,但是python 示例中模板的目的似乎只是为了避免每次发送消息时都需要编写包装JSON 的xml 标签。您可以在发送消息时将它们附加到 JSON。

    【讨论】:

    • 我唯一的问题是,在 Node 示例中,我不确定应该将这些数据发送到哪里。在 c() 或 t() 函数调用中?
    • @Hick 从节点发送 ccs 消息成功了吗?
    猜你喜欢
    • 2014-03-02
    • 2014-01-18
    • 1970-01-01
    • 2012-04-14
    • 2015-08-26
    • 2015-11-02
    • 2014-01-21
    • 2014-06-05
    • 1970-01-01
    相关资源
    最近更新 更多