解析云:向特定用户发送通知

时间:2016-01-07 15:59:05

标签: javascript swift parse-platform cloud-code

我目前正在实施推送通知以关注用户。显然,我设法完成推送通知并做出快速响应。因此,通知已发送给所有人。我想创建推送通知,并且每当其他用户关注其用户帐户时,每个用户只收到通知。< / p>

我没有创建应该与User关联的指针。即使我创建了,我是否应该对我的Cloudcode进行任何修改? 我想在其他用户关注该用户时向其发送推送通知。

例如:测试1跟着你。

    Parse.Cloud.define("FollowersAndFollowing", function(request,result){
  var query = new Parse.Query(Parse.User);
  var message = request.params.message;
   var pushQuery = new Parse.Query(Parse.Installation);
  query.equalTo('userLink',request.params.User);

  Parse.Push.send({
    where: pushQuery,
    data : { 
      alert: message,
      badge: "Increment",
      sound: "",
    }
    }, {
    success: function(result) {
    console.log(JSON.stringify(result));
    response.success(result);
    },
    error: function(error) {
    console.error(JSON.stringify(error));
    response.error(error)
    }
  });
});

以上^是我在.JS中的云代码

if (status == false) {

                                // Create the push notification message.s
                                let pushMessage = "\(PFUser.currentUser()!.username!) has followed you."

                                // Submit the push notification.
                                PFCloud.callFunctionInBackground("FollowersAndFollowing", withParameters: ["message" : pushMessage, "User" : "\(userData.username!)"])
                            }

以上,这是前端的快速代码。

enter image description here

第二个url是我的类和我如何设置的子类

enter image description here

1 个答案:

答案 0 :(得分:1)

Installation课程中使用云代码 beforeSave trigger ,以使User指针保持最新状态。

// Make sure all installations point to the current user
Parse.Cloud.beforeSave(Parse.Installation, function(request, response) {

    Parse.Cloud.useMasterKey();
    if (request.user) {
        request.object.set("user", request.user);
    } else {
        request.object.unset("user");
    }
    response.success();
});

您可能还希望在Follow类上使用 afterSave触发器 来发送推送通知,而不是调用云功能。如果不了解该课程的结构或您如何实施关注者/后续计划,则很难提供任何进一步的信息。