Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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!");
                }
            }
        }