Существует возможность отправки всех полных опций, отображаемых на странице облачных сообщений Firebase. - PullRequest
0 голосов
/ 07 июня 2018

У меня есть проект в asp.net MVC 5 Мне нужно добавить все опции в мое клиентское приложение, которое отправляет push-уведомления в приложения Android и IOS для этого сценария. Я создал страницу, похожую на облачную систему обмена сообщениями Firebase=> создать сообщение

firebase original page screenshot

c # код

    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: И опция Target User?

Можно ли сделать это, используя HTTP-запрос, указав параметры?

1 Ответ

0 голосов
/ 08 июня 2018
  1. Не все. Для большинства текстовых полей вы можете (см. Документы для HTTP ref ):
    • Текст сообщения = body
    • Метка сообщения: Нет.См. Текст справки (?), Это просто метка, которую использует консоль Firebase.
    • Дата доставки: см. # 2.
    • Сегмент пользователя: см. # 3.
    • Название сообщения = title
    • Название канала уведомлений Android = android_channel_id
  2. Запланированные уведомления в настоящее время недоступны для REST API.
  3. Пользовательские сегменты в настоящее время еще не доступны .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...