2015-12-31 2 views
0

Я использую https://github.com/ParsePlatform/parse-php-sdk. Я хочу отправить уведомление 2 других устройства. Но это только посылать уведомления для токена устройства 'abcdef'. Как отправить уведомление 2 других устройства? Спасибо всем,Parse WHERE php

$query = ParseInstallation::query(); 
    $query->equalTo('deviceToken', 'xxxxx'); 
    $query->equalTo('deviceToken', 'abcdef'); 

    $data = [ 
     'data' => ['alert' => 'Hello, this is a test'], 
     'where' => $query, 
     ]; 
    ParsePush::send(
     $data 
    ); 
+0

@LightnessRacesinOrbit 'parse.com' является подходящим тегом для вопросов, связанных с бэкэнд-функциями Parse. Этот вопрос касается отправки Push-уведомления с использованием служб Parse.com. – NSNoob

+0

@TaiNguyen Рассматривали ли вы использование каналов для этой цели? Однако я не уверен, что PHP sdk позволяет подписываться на каналы. Хотя это может быть потому, что '$ query-> equalTo ('deviceToken', 'abcdef')' перезаписывает ваши критерии запросов. Ответ Лиама выглядит многообещающим. – NSNoob

+0

Спасибо всем, я решил это –

ответ

1

Я считаю, что ваши двойные запросы equalTo перезаписи друг друга. Из того, что я понимаю, equalTo соответствует одному значению. Вы должны уметь видеть это поведение, проверяя vardump вашего $ query после каждого вызова equalTo.

Вместо этого вы должны использовать containsIn (http://parseplatform.github.io/parse-php-sdk/classes/Parse.ParseQuery.html#method_containedIn) и передать массив значений, которые вы хотите, чтобы запрос соответствовал. Например, $ query-> containsIn ('deviceToken', ['abcdef', 'xxxxx']).

Примечание: У меня нет синтаксического анализа PHP-проекта, поэтому приведенный выше код не проверен, но общая логика должна работать.

+0

Большое вам спасибо –