如何使用C#中的Pushwoosh Web API将推送通知发送给某些特定用户?

时间:2014-08-06 08:32:01

标签: c# pushwoosh

我想使用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);

由于

1 个答案:

答案 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将此通知广播给所有用户而不是抛出错误!