using IAChat; using IAChat.Bot; using IAChat.MSGraph; using Microsoft.Bot.Builder; using Microsoft.Bot.Builder.Integration.AspNet.Core; using Microsoft.Bot.Connector.Authentication; var builder = WebApplication.CreateBuilder(args); builder.Services.AddControllers(); builder.Services.AddHttpClient("WebClient", client => client.Timeout = TimeSpan.FromSeconds(600)); builder.Services.AddHttpContextAccessor(); builder.Services.AddHttpClient(); // Create the Bot Framework Authentication to be used with the Bot Adapter. var config = builder.Configuration.Get(); builder.Configuration["MicrosoftAppType"] = "MultiTenant"; builder.Configuration["MicrosoftAppId"] = config.BOT_ID; builder.Configuration["MicrosoftAppPassword"] = config.BOT_PASSWORD; builder.Services.AddSingleton(); builder.Services.AddSingleton(builder.Configuration); builder.Services.AddScoped(); // Create the Bot Framework Adapter with error handling enabled. builder.Services.AddSingleton(); // Create the bot as a transient. In this case the ASP Controller is expecting an IBot. builder.Services.AddTransient(); var app = builder.Build(); if (app.Environment.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseStaticFiles(); app.UseRouting(); //app.UseAuthentication(); //app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); app.Run();