Esempio n. 1
0
        /// <returns></returns>
        private async Task <ProcessResult <DeliveryModel> > DeliveryNotificationsAsync(long deliveryKey)
        {
            ProcessResult <DeliveryModel> retVal;

            try
            {
                DeliveryModel dmodel = await _deliveryQueries.GetDeliveryAsync(deliveryKey);

                var pushNotification = new PushNotification(dmodel.Notification.Title, dmodel.Notification.Message,
                                                            dmodel.Notification.IconUrl, dmodel.Notification.Url, dmodel.Notification.ImageUrl);
                PushNotificationPayload payload = new PushNotificationPayload(pushNotification);

                ProcessResult result = await _pushService.SendAsync(dmodel.Subscription.Endpoint,
                                                                    dmodel.Subscription.PublicKey, dmodel.Subscription.Token, payload);

                retVal = new ProcessResult <DeliveryModel>(dmodel);
                retVal.PopulateErrorFromResult(result);
            }
            catch (Exception ex)
            {
                retVal = new ProcessResult <DeliveryModel>();
                retVal.SetErrorInfo($"DeliveryNotification Error: {ex.Message}");
            }

            return(retVal);
        }
Esempio n. 2
0
        /// <returns></returns>
        private async Task <ProcessResult <DeliveryModel> > DeliveryNotificationsAsync(long deliveryKey)
        {
            ProcessResult <DeliveryModel> retVal;

            try
            {
                DeliveryModel dmodel = await _deliveryQueries.GetDeliveryAsync(deliveryKey);

                var aps = new Aps(dmodel.Notification.Title, dmodel.Notification.Message, string.Empty,
                                  new List <string> {
                    dmodel.Notification.NotificationId.ToString()
                });
                ProcessResult result = await _pushService.SendAsync(dmodel.Subscription.DeviceToken, aps);

                retVal = new ProcessResult <DeliveryModel>(dmodel);
                retVal.PopulateErrorFromResult(result);
            }
            catch (Exception ex)
            {
                retVal = new ProcessResult <DeliveryModel>();
                retVal.SetErrorInfo($"DeliveryNotification Error: {ex.Message}");
            }

            return(retVal);
        }