Reputation: 83
I want to broadcast the Push notification to some of the subscribers using the Pushwoosh Web API.
I have been using the code given in their website here
But it is sending to all the registered users. How can I send the notification to some specific users only?
Here is the JSON making code:
string pwAuth = "YOUR_AUTH_TOKEN";
string pwApplication = "PW_APPLICATION_CODE";
JObject json = new JObject(
new JProperty("application", pwApplication),
new JProperty("auth", pwAuth),
new JProperty("notifications",
new JArray(
new JObject(
new JProperty("send_date", "now"),
new JProperty("content", "test"),
new JProperty("wp_type", "Toast"),
new JProperty("wp_count", 3),
new JProperty("data",
new JObject(
new JProperty("custom", "json data"))),
new JProperty("link", "http://pushwoosh.com/"),
new JProperty("conditions",
new JArray(
(object)new JArray("Color", "EQ", "black")))))));
PWCall("createMessage", json);
Thanks
Upvotes: 4
Views: 3254
Reputation: 1775
You need to add the property "devices" in the JSON with the device tokens of the different devices you intend to send the notification.
Like this:
string[] arr = new string[1];
arr[0] = "9d48ac049ca6f294ea25ae25f3472b0e7e160ba06729397f9985785477560b3a";
JObject json = new JObject(
new JProperty("application", pwApplication),
new JProperty("auth", pwAuth),
new JProperty("notifications",
new JArray(
new JObject(
new JProperty("send_date", "now"),
new JProperty("content", new JObject(new JProperty("en", pushContentEnglish), new JProperty("es", pushContentSpanish))),
new JProperty("data", new JObject(new JProperty("custom", new JObject(new JProperty("t", notificationType), new JProperty("i", objectId))))),
new JProperty("devices", new JArray(arr))
))));
Here I have set the "devices" property to the string array of device tokens to which I intent to send the notification.
PS - Be careful about the array you feed to the Devices property, because once I set its value to a comma separated string instead of array, and Pushwoosh broadcast-ed this notification to all users instead of throwing error!
Upvotes: 5