private Task SendSnsNotification(string notificationMessage, CategorySubscription categorySubscription, SystemEventElasticsearchDocument document, CancellationToken cancellationToken) { var message = JsonConvert.SerializeObject(new { Event = document, notificationMessage }); return(_amazonSimpleNotificationService.PublishAsync( categorySubscription.TopicArn, message, cancellationToken)); }
private void SubscribeToCategory(int userId, int categoryId) { var subscription = new CategorySubscription { CategoryId = categoryId, UserId = userId, CreatedDate = DateTime.Now, CreatedBy = HttpContext.Current.User?.Identity?.Name }; DbContext.Set <CategorySubscription>().Add(subscription); //DbContext.SaveChanges(); //UnitOfWork.SaveChanges(); }
private Task <string> SendSlackNotification(string notificationMessage, CategorySubscription categorySubscription, SystemEventElasticsearchDocument document, CancellationToken cancellationToken) { var message = new Message(notificationMessage) .SetUserWithEmoji(_SystemName, _SystemIcon); message.AddAttachment(new Attachment() .AddField("Event Id", document.Id, true) .AddField("Message", document.Message, true) .AddField("Target", document.TargetKey, true) .AddField("Sender", document.Sender, true) .AddField("Start Time", document.Timestamp, true) .AddField("End Time", document.Endtime, true) .AddField("Level", document.Level, true) .SetColor((document.Level == "critical")? "#eb4034": "#349ceb") ); return(_slackService.SendAsync(message, categorySubscription.WebhookUrl)); }