Advertisement
Guest User

Untitled

a guest
May 7th, 2019
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ASP 1.94 KB | None | 0 0
  1. using System.IO;
  2. using System.Net;
  3. using System.Text;
  4.  
  5. var request = WebRequest.Create("https://onesignal.com/api/v1/notifications") as HttpWebRequest;
  6.  
  7. request.KeepAlive = true;
  8. request.Method = "POST";
  9. request.ContentType = "application/json; charset=utf-8";
  10.  
  11. request.Headers.Add("authorization", "Basic NGEwMGZmMjItY2NkNy0xMWUzLTk5ZDUtMDAwYzI5NDBlNjJj"); // Seu token do OneSignal, você pega lá em Keys & Ids
  12.  
  13. var serializer = new JavaScriptSerializer();
  14. var obj = new { app_id = "5eb5a37e-b458-11e3-ac11-000c2940e62c", // ID do seu OneSignal, pega em Keys & Ids também
  15.                contents = new { en = "English Message" },
  16.                filters = new object[] { new { field = "tag", key = "code", value = "CODIGO_INCREMENTADO" /* Aqui estamos falando que o filtro será baseado no código incrementado */ }, new { @operator = "OR" }, new { field = "amount_spent", relation = "=" /* Se o código for IGUAL */, value = "2.1.6" /* A 2.1.6 */ } } };
  17.  
  18. // Acima, em key = "code" você pode alterar para key = "uid"
  19. // Nesse caso, a notificação será enviada para os dispositivos com o ID
  20. // Igual ao do value = "2.1.6"
  21. // Caso contrário, estará enviando para todos os usuários autenticados
  22. // Com o código 2.1.6
  23.                  
  24.  
  25. var param = serializer.Serialize(obj);
  26. byte[] byteArray = Encoding.UTF8.GetBytes(param);
  27.  
  28. string responseContent = null;
  29.  
  30. try {
  31.     using (var writer = request.GetRequestStream()) {
  32.         writer.Write(byteArray, 0, byteArray.Length);
  33.     }
  34.  
  35.     using (var response = request.GetResponse() as HttpWebResponse) {
  36.         using (var reader = new StreamReader(response.GetResponseStream())) {
  37.             responseContent = reader.ReadToEnd();
  38.         }
  39.     }
  40. }
  41. catch (WebException ex) {
  42.     System.Diagnostics.Debug.WriteLine(ex.Message);
  43.     System.Diagnostics.Debug.WriteLine(new StreamReader(ex.Response.GetResponseStream()).ReadToEnd());
  44. }
  45.  
  46. System.Diagnostics.Debug.WriteLine(responseContent);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement