У меня есть лямбда-функция в node.js для отправки push-уведомления.
В этой функции мне нужно пройти через моих пользователей, отправляя уведомление для каждого из них перед обратным вызовом.
В идеале я бы хотел, чтобы итерация выполнялась параллельно.
Как лучше всего это сделать?
Мой код в настоящее время выглядит следующим образом, но он не работает должным образом, поскольку последний пользователь не всегда обрабатывается последним:
var apnProvider = new apn.Provider(options);
var iterationComplete = false;
for (var j = 0; j < users.length; j++) {
if (j === (users.length - 1)) {
iterationComplete = true;
}
var deviceToken = users[j].user_device_token;
var deviceBadge = users[j].user_badge_count;
var notification = new apn.Notification();
notification.alert = message;
notification.contentAvailable = 1;
notification.topic = "com.example.Example";
apnProvider.send(notification, [deviceToken]).then((response) => {
if (iterationComplete) {
context.succeed(event);
}
});
}