コード例 #1
0
        public async Task <IActionResult> CreateUserNotification([FromBody] NotificationModelDto notification)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.GetUserAsync(HttpContext.User);

                var email = user?.Email;

                var notif = _mapper.Map <NotificationModel>(notification);

                notif.CreatedDate = DateTime.Now;
                notif.IsRecurring = false;
                notif.IsRead      = false;

                var result = await _service.CreateUserNotification(notif, email);

                if (result.IsSuccess)
                {
                    return(Ok(result));
                }

                return(BadRequest(result));
            }

            return(BadRequest("Some properties are not valid"));
        }
コード例 #2
0
        public void Broadcast([FromBody] NotificationModelDto message, [FromServices] VapidDetails vapidDetails)
        {
            var client            = new WebPushClient();
            var serializedMessage = JsonConvert.SerializeObject(message);

            foreach (var pushSubscription in Subscriptions)
            {
                client.SendNotification(pushSubscription, serializedMessage, vapidDetails);
            }
        }