2016-05-03 7 views
2

Ich versuche, eine Push-Benachrichtigung an Benutzer mit spezifischen Tags für den OneSignal Service finden Sie hier mit der api zu senden: https://www.onesignal.com/OneSignal php Ziel Tags

kann ich nicht richtig um das Array zu formatieren scheinen. Hier ist, was ich habe oder wollen, aber es funktioniert nicht:

"tags" => array[{"key": "NotifyLive", "relation": "=", "value": "true"}], 

Deshalb möchte ich Nutzer auszurichten, die einen Tag von „NotifyLive“ haben auf „true“.

Ich glaube, das kann getan werden, weil es in der documentation here zeigt. Scrollen Sie nach unten zu den Tags: Array von Objekten Beispiele. Ich kann einfach nicht herausfinden, wie ich diese Zeile schreiben soll.

Hier sind die Felder ich mit meiner Anmeldung schicke:

$fields = array(
     "app_id" => "example", 
     "android_sound" => "$num", 
     "big_picture" => "http://website.com/mypic.jpg", 
     "tags" => array[{"key": "NotifyLive", "relation": "=", "value": "true"}],// Doesn't work! 
     "data" => array("autoplay" => "true"), 
     "contents" => $content, 
     "headings" => $heading 
    ); 

FEHLER: JSON erhalten: { "allresponses": "{\" Fehler \ ": [\" Variablen muss eine sein Array. Zum Beispiel: [{\\ "key \\": \\ "gender \\", \\ "relation \\": \\ "= \\", \\ "value \\": \\ "male \ \ "}] \"]} "}

Das Team hat erstaunliche Unterstützung, aber ich brauche eine Antwort außerhalb der Geschäftszeiten, wie ich jetzt codiere. Danke für alle Einsichten.

Antwort

8

Ermittelt die Antwort. Das Array hatte in diesem Format geschrieben werden:

// This Array format worked 
$daTags = array(
     array("key" => "NotifySound", "relation" => "=", "value" => "true"), 
    ); 

    $fields = array(
     "app_id" => "exampleID", 
     "android_sound" => "$num", 
     "big_picture" => "http://wesite.com/mypic.jpg", 
     "tags" => $daTags, 
     "data" => array("autoplay" => "true"), 
     "contents" => $content, 
     "headings" => $heading 
    ); 
0

Da das tags Feld ist veraltet, sollten Sie die filters Feld Benutzer durch Tags Ziel verwenden

$filters = array(
    array("field" => "tag", "key" => "NotifySound", "relation" => "=", "value" => "true"), 
); 

$fields = array(
    "app_id" => "exampleID", 
    "android_sound" => "sound", 
    "big_picture" => "http://wesite.com/mypic.jpg", 
    "filters" => $filters, 
    "data" => array("autoplay" => "true"), 
    "contents" => $content, 
    "headings" => $heading 
);