Я работаю над гибридным приложением с использованием Ionic framework с Parse в качестве задней части, и я изо всех сил пытаюсь настроить push-уведомления для одиночных пользователей. Я отправляю уведомления через Cloud Code от Parse, и я отправляю push-уведомления всем пользователям, работающим нормально, используя следующее:Parse.com - настройка push-уведомлений для одиноких пользователей
Parse.Cloud.afterSave(
'_User',
function(request, response) {
Parse.Cloud.useMasterKey();
var installationQuery = new Parse.Query(Parse.Installation);
Parse.Push.send(
{
where: installationQuery,
data: {
alert: 'Test notification'
}
}, {
success: function() {
// Push was successful
},
error: function (error) {
// Push failed
}
}
);
}
);
В настоящее время, когда пользователь регистрирует запись производится в класс установки (с использованием phonegap-parse-plugin), добавив их идентификатор пользователя в качестве канала. Я сделал это с намерением добавить канал в качестве ограничения запроса при определении того, какие пользователи будут отправлять уведомления, но добавление query.contains('channels', 'user-' + request.user.id);
к указанному выше не вызывает никаких уведомлений (но сообщает об успехах в облачном коде).
Я также читал о добавлении пользователя в качестве указателя на класс установки, но это означает, что на устройстве может быть только один пользователь.
Каков наилучший способ позволить мне отправлять push-уведомления одному пользователю с помощью Cloud Code? Спасибо!
Ack, да, набор результатов был просто пустым, это был заказ выполнения. Я тестировал регистрацию пользователя и использовал крюк afterSave в классе _User, но установка была создана ПОСЛЕ пользователя (поскольку идентификатор необходимо). В последнем запросе используется массив из 1 или более идентификаторов с использованием 'installationQuery.containedIn ('channels', userIds);'. Благодаря! – ChrisSo