PDA

View Full Version : سوال: ارسال نوتیفیکیشن پوشه از برنامه وب به برنامه اندروید - از طریق api



mahan206
یک شنبه 30 بهمن 1401, 20:49 عصر
سلام سایت پوشه از طریق کد زیر نوتیفیکیشن میفرسته به برنامه موبایل با api و ما میخوایم از طریق سایت این کارو با api انجام بدیم کسی میتونه این کد رو تبدیل به C#‎‎‎ کنه؟


$YOUR_TOKEN = 'put your token here ...';
$YOUR_APP_ID = 'put your app id here ...';

$ch = curl_init('https://api.pushe.co/v2/messaging/notifications/');

curl_setopt_array($ch, array(
CURLOPT_POST => 1,
CURLOPT_TIMEOUT => 30,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json",
"Authorization: Token " . $YOUR_TOKEN,
),
));

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array(
'app_ids' => $YOUR_APP_ID,
'data' => array(
'title' => 'عنوان پیام',
'content' => 'متن پیام'
)
)));

$result = curl_exec($ch);

curl_close($ch);

echo $result;

اینجا (https://docs.pushe.co/docs/mobile-api/simple-notification) به زبان های دیگه هم هست فقط C#‎‎‎ نداره کسی میتونه اوکی کنه من تا اینجا رفتم و الان ارور


{"app_ids":{"0":["Not a valid string."]},"data":["کلید data در اعلان نمی‌تواند خالی باشد ، می توانید از کلید custom_content به جای کلید دیتا خالی استفاده کنید"]}

دارم و کدی که من نوشتم

string requestUrl = "https://api.pushe.co/v2/messaging/notifications/";
var requestContent = new HttpRequestMessage(HttpMethod.Post, requestUrl);


requestContent.Content = new FormUrlEncodedContent(new Dictionary<string, string>
{
{ "app_ids", "****" },
{ "title", "salam" },
{ "content", "ین یک متن تست می باشد" }
});
// var data = new FormUrlEncodedContent(values);

requestContent.Headers.Add("Authorization", " Token " + "***************");

HttpClient client = new HttpClient();
//Sending request to endpoint
var tokenResponse = client.SendAsync(requestContent).Result;
//Receiving Response
dynamic json =tokenResponse.Content.ReadAsStringAsync().Result;
dynamic response = JsonConvert.DeserializeObject<dynamic>(json);
//----------------------------------

Mahmoud.Afrad
شنبه 06 اسفند 1401, 23:13 عصر
به کد نگاه کنید. content باید json باشه

{
"app_ids": YOUR_APP_ID ,
"data":{"title":"عنوان پیام",
"content":"متن پیام"
}
}

mahan206
پنج شنبه 25 اسفند 1401, 10:52 صبح
میدونم باید باشه ولی چطور باید نوشت؟ مشکل اینجاست

Mahmoud.Afrad
دوشنبه 29 اسفند 1401, 02:36 صبح
using System;
using System.Collections.Generic;
using Newtonsoft.Json;


public class Program
{
public static void Main()
{
Messsage m = new Messsage();
m.AppId = "1234";
m.Data.Add("title", "عنوان");
m.Data.Add("content", "ین یک متن تست می باشد");
string json = JsonConvert.SerializeObject(m, Formatting.Indented);
Console.WriteLine(json);
}
}


class Messsage
{
public String AppId { get; set; }


public Dictionary<string, string> Data { get; set; } = new Dictionary<string, string>();
}