我想使用Pushwoosh Web API向部分订阅者广播推送通知。
我一直在使用他们网站here
中提供的代码但它正在发送给所有注册用户。如何仅将通知发送给某些特定用户?
这是JSON制作代码:
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);
由于
答案 0 :(得分:5)
您需要添加属性"设备"在JSON中使用您打算发送通知的不同设备的设备令牌。
像这样:
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))
))));
我在这里设置了"设备"属性到我打算发送通知的设备令牌的字符串数组。
PS - 请注意您提供给Devices属性的数组,因为一旦我将其值设置为以逗号分隔的字符串而不是数组,并且Pushwoosh将此通知广播给所有用户而不是抛出错误!