public void SendMessage(IEnumerable <PushInfoModel> receivers, NotificationMessage message) { var webPushClient = new WebPushClient(); var vapidDetails = new VapidDetails("mailto:[email protected]", configuration.WebPushPublicKey, configuration.WebPushPrivateKey); var pushMessage = new WebPushMessage(message); foreach (var pushInfo in receivers) { webPushClient.SendNotification(new PushSubscription(pushInfo.SubscriptionEndpoint, pushInfo.p256dh, pushInfo.Auth), JsonSerializer.Serialize(pushMessage), vapidDetails); } }
public void SendWebPushMessage(IEnumerable <PushInfo> receivers, WebPushNotificationMessage message) { var webPushClient = new WebPushClient(); var vapidDetails = new VapidDetails("mailto:[email protected]", configuration.WebPushPublicKey, configuration.WebPushPrivateKey); var pushMessage = new WebPushMessage(message); foreach (var pushInfo in receivers) { try { webPushClient.SendNotification( new PushSubscription(pushInfo.SubscriptionEndpoint, pushInfo.p256dh, pushInfo.Auth), JsonConvert.SerializeObject(pushMessage), vapidDetails); } catch (Exception ex) { this.logger.LogError(ex, $"Error sending push notification!"); } } }