Esempio n. 1
0
        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);
        }
Esempio n. 2
0
 public RemoteButtonCache(ILogger <RemoteButtonCache> logger, Common.ConfigManager configManager)
 {
     _logger        = logger;
     _configManager = configManager;
 }
Esempio n. 3
0
 public RemoteCreator(Common.ConfigManager configManager)
 {
     _config = configManager;
 }
Esempio n. 4
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();
                }
            }
        }