public static int Main(string[] args) { Console.WriteLine(); Console.WriteLine("Raspberry IR Blaster - Server"); Console.WriteLine(); if (!Common.ConfigManager.TryMakeFromCommandLineArgs(args, out var configManager)) { return(ExitCode_BadArgs); } Config = configManager; Config.LoadGeneralConfig(); if (string.IsNullOrWhiteSpace(Config.GeneralConfig.ListenAtUrl)) { Console.WriteLine($"Must specify the '{nameof(Config.GeneralConfig.ListenAtUrl)}' option in the config."); return(ExitCode_BadConfig); } var appHost = CreateHostBuilder(args).Build(); appHost.Run(); return(0); }
static void Main(string[] args) { Console.WriteLine(); Console.WriteLine("Raspberry IR Blaster - Remote Builder"); if (!Common.ConfigManager.TryMakeFromCommandLineArgs(args, out var configManager)) { return; } Config = configManager; Config.LoadGeneralConfig(); while (true) { Console.WriteLine(); Console.WriteLine(); int action = AskMultipleChoice("What do you want to do?", "Exit", "Clear server cache", "List remotes", "Add a new remote", "Modify a remote", "Delete a remote", "View Raw IR"); switch (action) { case 0: Console.WriteLine("Exiting."); return; case 1: HttpRequestMaker.SignalClearCache(); break; case 2: Console.WriteLine("Remote profiles:"); var remotes = Config.GetRemotes(); if (remotes.Length > 0) { foreach (var file in remotes) { Console.WriteLine(" " + file.FullName); } } else { Console.WriteLine($"No remotes found in '{Config.GetRemotesDirectory()}'."); } Console.WriteLine(); Console.WriteLine(); break; case 3: new RemoteCreator(Config).Create(); break; case 4: ModifyRemote(); break; case 5: DeleteRemote(); break; case 6: LogRawIR(); break; default: throw new Exception(); } } }