Задать вопрос
ynizhenie
@ynizhenie

Как правильно создать функцию получения уведомлений?

Вопрос возможно в принципе не имеет решения с таким подходом но я попробую.

У меня есть массив с сигналами:
[
  {
"idSite": 123456,
"type": "1",
"description": "SIGNAL 1",
"dateTime": "2019-04-20 00:00:00"
},
  {
"idSite": 123456,
"type": "2",
"description": "SIGNAL 2",
"dateTime": "2019-04-20 00:00:00"
},
  {
"idSite": 123455,
"type": "4",
"description": "SIGNAL 3",
"dateTime": "2019-04-20 00:00:00"
}
]


Есть функция которая проверяет наличие сигналов. И отправляет уведомления если они есть.

if (dataObject !== null) {
        let token = await Notifications.getExpoPushTokenAsync();
        console.log(token)
        let response = await fetch('https://exp.host/--/api/v2/push/send', {
            method: 'POST',
            headers: {
                Accept: 'application/json',
                'Content-Type': 'application/json'
            },
            body: JSON.stringify({
                to: token,
                title: dataObject[0].description,
                sound: 'default',
                body: dataObject[0].dateTime
            })
        })

    }


Как видно из функция мои мозги додумали как отправить только первый объект в уведомление.
Ну и вопрос:

Как отправить все объекты. Как одиночные уведомления ?
  • Вопрос задан
  • 36 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
s_panteleev
@s_panteleev
25 yo, Yaroslavl
Не уверен, потому что "Как правильно создать функцию получения уведомлений", но попробую)
В документации по Push Notifications есть
пример пакетной отправки уведомлений (до 100 шт за раз)
// пакетная
[{
  "to": "ExponentPushToken[xxxxxxxxxxxxxxxxxxxxxx]",
  "sound": "default",
  "body": "Hello world!"
}, {
  "to": "ExponentPushToken[yyyyyyyyyyyyyyyyyyyyyy]",
  "badge": 1,
  "body": "You've got mail"
}]

// обычная
{
  "to": "ExponentPushToken[xxxxxxxxxxxxxxxxxxxxxx]",
  "title":"hello",
  "body": "world"
}


соответственно передавайте в функцию массив объектов, там их приводите к нужному виду и отправляйте :)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы