如何仅向订阅了两个频道的安装发送Parse Push通知,而不是/或?

时间:2015-04-28 22:23:16

标签: javascript parse-platform

我知道根据documentation,如果我想向“Giants”和“Mets”频道中的所有安装发送推送通知,我会这样做:

Parse.Push.send({
  channels: [ "Giants", "Mets" ],
  data: {
    alert: "The Giants won against the Mets 2-3."
  }
}, {
  success: function() {
    // Push was successful
  },
  error: function(error) {
    // Handle error
  }
});

然而,我想要做的是仅向两个频道中的安装发送推送通知,而不仅仅是其中一个。

因此,除了将其发送到“Giants”或“Mets”频道中的任何安装之外,我不会将其发送到同时存在的安装,而不是只有“巨人队“或只是”大都会队“。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:2)

发送基于频道的推送的替代方法是推送查询。您构造一个匹配所需安装的Parse.Query,并以此方式发送。

因此,您可以在频道键上使用'containsAll'约束。试一试。

var query = new Parse.Query(Parse.Installation);
query.containsAll("channels", ["Giants", "Mets"]);

Parse.Push.send({
  where: query,
  data: {
    alert: "The Mets Won!"
  }
}).then(function() {
  // success
}, function(error) {
  // error
});