2014-12-01 5 views
1

Я написал простую задачу, чтобы попытаться отправить push-уведомление самому себе. Вот код:Push Notification from Parse Cloud Code

Parse.Cloud.job("testPush", function(request, status) { 
    Parse.Cloud.useMasterKey(); 
    var installationQuery = new Parse.Query(Parse.Installation); 
    installationQuery.equalTo("user", "6t1JIuNqe1"); // I triple checked - this is the value of my user in the installation table. 
    Parse.Push.send({ 
     where: installationQuery, 
     data: { 
      alert: "Test" 
     }, 
    }, { 
     success: function() { 
      console.log("The Push Test Worked!"); 
      status.success("All done with the push test!"); 
     }, error: function(error) { 
      console.error("Something bad happened " + error); 
      status.error("Something bad happened during the Parse test..."); 
     } 
    }); 
}); 

Хотя он регистрируется в Parse, что задание выполнено успешно, я никогда не вижу уведомления на моем iPhone. Я проверил в Настройках - там все правильно настроено (уведомления разрешены и должны появляться в виде баннеров, они должны появляться в центре уведомлений, они должны отображаться на экране блокировки). И все же уведомление никогда не появляется.

Что еще нужно проверить? Что мне не хватает?

+0

Вы видите любое сообщение из журнала? Каков тип данных столбца 'user' в установке, строке или указателе? – eth3lbert

+0

@ eth3lbert - Да, я вижу сообщение «The Push Test Worked!». 'user' является указателем ... я неправильно настроил' .equalTo() 'для обработки указателей? – ArtOfWarfare

ответ

1

Поле указателя должно работать с экземпляром.

Попробуйте заменить installationQuery.equalTo("user", "6t1JIuNqe1"); следующим:

var user = new Parse.User(); 
user.id = '6t1JIuNqe1';  
installationQuery.equalTo('user', user); 
+0

Я попробую сегодня вечером и дам вам знать, если это сработает. – ArtOfWarfare

Смежные вопросы