コード例 #1
0
        public static IWebHostBuilder CreateWebHostBuilder(string[] args)
        {
            var builder = WebHost.CreateDefaultBuilder(args)
                          .ConfigureKestrel(w => w.AllowSynchronousIO = true)
                          .ConfigureLogging((c, l) =>
            {
                l.AddConfiguration(c.Configuration);
                l.AddSentry();
            })
                          .UseSentry(s => s.Release = $"rspeer-api-{Version}")
                          .UseStartup <Startup>();

            if (EnviromentExtensions.IsDevelopmentMode())
            {
                builder.UseUrls("http://*:80");
            }
            return(builder);
        }
コード例 #2
0
        public async Task <Unit> Handle(SendDiscordWebHookCommand request, CancellationToken cancellationToken)
        {
            if (EnviromentExtensions.IsDevelopmentMode())
            {
                Console.WriteLine(request.Type + " | " + request.Message);
                //return Unit.Value;
            }

            if (request.Critical)
            {
                var director = _configuration.GetValue <string>("Discord:DirectorId");
                request.Message = $"{director} [CRITICAL] - {request.Message}";
            }

            var dict = new Dictionary <string, object> {
                { "content", request.Message }
            };
            var json = JsonSerializer.Serialize(dict);
            await _client.PostAsync(GetWebHook(request.Type), new StringContent(json,
                                                                                Encoding.UTF8, "application/json"), cancellationToken);

            return(Unit.Value);
        }