有一种方法可以在firebase云消息传递创建消息传递页面

时间:2018-06-07 07:05:02

标签: c# asp.net asp.net-mvc firebase firebase-cloud-messaging

我在asp.net MVC 5中有项目我需要在我的客户端应用程序中添加所有选项 这是向Android和ios应用程序发送推送通知 对于这种情况,我创建了一个像firebase cloud messaging =>这样的页面。 创建消息

firebase original page screenshot

c#c​​ode

    private static string SendPushNotification()
{
            string response;

            try
            {
            string serverKey = "##########"; 
            string senderId = "#############";
            string deviceId = "//topics/all";

            WebRequest tRequest = WebRequest.Create("https://fcm.googleapis.com/fcm/send");

            tRequest.Method = "post";
            tRequest.ContentType = "application/json";
            var data = new
            {
                to = deviceId,
                notification = new
                {
                    body = "Greetings",
                    title = "Augsburg",
                    sound = "Enabled"
                }
            };

            var serializer = new JavaScriptSerializer();
            var json = serializer.Serialize(data);
            Byte[] byteArray = Encoding.UTF8.GetBytes(json);
            tRequest.Headers.Add(string.Format("Authorization: key={0}", serverKey));
            tRequest.Headers.Add(string.Format("Sender: id={0}", senderId));
            tRequest.ContentLength = byteArray.Length;

            using (Stream dataStream = tRequest.GetRequestStream())
            {
                dataStream.Write(byteArray, 0, byteArray.Length);
                using (WebResponse tResponse = tRequest.GetResponse())
                {
                    using (Stream dataStreamResponse = tResponse.GetResponseStream())
                    {
                        using (StreamReader tReader = new StreamReader(dataStreamResponse))
                        {
                            String sResponseFromServer = tReader.ReadToEnd();
                            response = sResponseFromServer;
                        }
                    }
                }
            }
        }
        catch (Exception ex)
        {
            response = ex.Message;
        }

        return response;
}

所以我的疑问是

  

1:我可以将所有这些选项发送到我的HTTP请求

     

2:打开后发送我需要也配置这个   选项

     

3:目标用户选项?

我可以通过提供参数使用HTTP请求吗?

1 个答案:

答案 0 :(得分:1)

  1. 不是全部。对于大多数文本字段,您可以(请参阅HTTP ref的文档):
    • 消息文字= body
    • 消息标签:没有。请参阅帮助文本(?),它只是Firebase控制台使用的标签。
    • 交货日期:见#2。
    • 用户细分:见#3。
    • 邮件标题= title
    • Android通知频道名称= android_channel_id
  2. Scheduled notifications目前无法用于REST API。
  3. User Segments currently not available yet
相关问题