PDA

View Full Version : حرفه ای: ارسال push notification به اندروید از طریق Firebase Cloud Messaging در mvc



milan2004
یک شنبه 10 تیر 1397, 09:21 صبح
سلام دوستان من قصد دارم از طریق پنل ادمین سایتم به کاربرانی که نرم اقززار اندروید مربوط به همون سایت رو دارن اعلان هایی رو ارسال کنم . دنبال یک کتابحانه خوب گشتم اما چیزی که با FCM کار کنه پیدا نکردم.
اگه میشه کمک کنید
ممنون

prans_tork
دوشنبه 19 تیر 1402, 08:26 صبح
سلام دوستان من قصد دارم از طریق پنل ادمین سایتم به کاربرانی که نرم اقززار اندروید مربوط به همون سایت رو دارن اعلان هایی رو ارسال کنم . دنبال یک کتابحانه خوب گشتم اما چیزی که با FCM کار کنه پیدا نکردم.
اگه میشه کمک کنید
ممنون


سلام.
راه حلی پیدا کردید؟

fakhravari
شنبه 07 مرداد 1402, 08:34 صبح
private int SendFCM(string Token, string Title, string Body)
{
string serverKey = @"AAAA9mfY0Ms:APA9gEDDu6oyD6dbtYKhBVYIfhHHuIxJNgIgwD yelB_WwDuDnWe78l-ORJ8C_LNofL1cfqFSB3JENda0EdmRh6N6mHzEikojMYtRvXfm8 5v-8GYTH4tTTLexBSjWUr-4uTFDro2YRKg";
var result = "";
var webAddr = "https://fcm.googleapis.com/fcm/send";


try
{
var httpWebRequest = (HttpWebRequest)WebRequest.Create(webAddr);
httpWebRequest.ContentType = "application/json";
httpWebRequest.Headers.Add("Authorization:key=" + serverKey);
httpWebRequest.Method = "POST";


using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
var json = new { to = Token, priority = "high", notification = new { title = Title, body = Body } };
string output = JsonConvert.SerializeObject(json);
streamWriter.Write(output);
streamWriter.Flush();
}


var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
result = streamReader.ReadToEnd();
}


var result3 = JsonConvert.DeserializeObject<SendMessageFCMViewModel>(result);


if (result3.success == 1)
{
return 1;
}
else
{
return 0;
}
}
catch (Exception e)
{
iset.LogSystem(e);
return 0;
}
}