Beispiel #1
0
        private async Task SendLogs(List <NotificationModel> users, DateTime date)
        {
            var logManager = new LogManager(new MongoRepository <VaultAccessLog>(new MongoConnectionProvider()));
            var logger     = new FileLogger();

            foreach (var user in users)
            {
                var fileName = "";
                if (user.Vaults == null)
                {
                    continue;
                }
                foreach (var vault in user.Vaults)
                {
                    var logItems = await logManager.ShowByDateLog(vault.Id, date);

                    fileName = await logger.Log(logItems, user.VaultAdminId, vault.Name);
                }
                var mailer = new MailReporter()
                {
                    MailTo = user.Email
                };
                await mailer.Report(fileName);
            }
        }
Beispiel #2
0
 private async void SendByEmail(string message)
 {
     var mailSettings = new EmailSettings();
     var mailer       = new MailReporter(mailSettings, _logger)
     {
         MailTo = ConfigurationManager.AppSettings["AdminMail"]
     };
     await mailer.Report(message);
 }
Beispiel #3
0
    static void Main(string[] args)
    {
        var r1 = new ConsoleReporter();

        sample(r1);
        var r2 = new LogReporter();

        sample(r2);
        var r3 = new MailReporter();

        sample(r3);
    }
Beispiel #4
0
        public async Task <HttpResponseMessage> Post([FromBody] CrashReport report)
        {
            var ip = WebApiApplication.GetClientIp();

            if (!RequestProtection.AddRequest(ip, RequestType.CrashReport))
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "Usage limit exceeded"));
            }

            var issueId = await GitHubReporter.CreateIssue(ip, report);

            return(MailReporter.SendMail(ip, report, issueId) ? Request.CreateResponse(HttpStatusCode.OK, "Success") : Request.CreateResponse(HttpStatusCode.InternalServerError, "Error sending message"));
        }