From 9dcce18cda5317ea1150eed06d6589b6285577e6 Mon Sep 17 00:00:00 2001 From: TheArcaneBrony Date: Mon, 4 Sep 2023 06:29:00 +0200 Subject: Add start of Media Moderator PoC bot --- ExampleBots/LibMatrix.ExampleBot/Program.cs | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 ExampleBots/LibMatrix.ExampleBot/Program.cs (limited to 'ExampleBots/LibMatrix.ExampleBot/Program.cs') diff --git a/ExampleBots/LibMatrix.ExampleBot/Program.cs b/ExampleBots/LibMatrix.ExampleBot/Program.cs new file mode 100644 index 0000000..0378ec9 --- /dev/null +++ b/ExampleBots/LibMatrix.ExampleBot/Program.cs @@ -0,0 +1,32 @@ +// See https://aka.ms/new-console-template for more information + +using ArcaneLibs; +using LibMatrix.ExampleBot.Bot; +using LibMatrix.ExampleBot.Bot.Interfaces; +using LibMatrix.ExampleBot.Bot.StartupTasks; +using LibMatrix.Extensions; +using LibMatrix.Services; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; + +Console.WriteLine("Hello, World!"); + +var host = Host.CreateDefaultBuilder(args).ConfigureServices((_, services) => { + services.AddScoped(x => + new TieredStorageService( + cacheStorageProvider: new FileStorageProvider("bot_data/cache/"), + dataStorageProvider: new FileStorageProvider("bot_data/data/") + ) + ); + services.AddScoped(); + services.AddRoryLibMatrixServices(); + foreach (var commandClass in new ClassCollector().ResolveFromAllAccessibleAssemblies()) { + Console.WriteLine($"Adding command {commandClass.Name}"); + services.AddScoped(typeof(ICommand), commandClass); + } + + services.AddHostedService(); + services.AddHostedService(); +}).UseConsoleLifetime().Build(); + +await host.RunAsync(); -- cgit 1.4.1