Esempio n. 1
0
 private static async Task GetInput()
 {
     Action work = () =>
     {
         do
         {
             var key = Console.ReadKey(true);
             if (key.Key == ConsoleKey.X)
             {
                 RokuConfig.SetDone();
             }
             else if (!RokuConfig.IsValidKey(key.Key))
             {
                 Console.ForegroundColor = ConsoleColor.Red;
                 Console.WriteLine($"invalid key: {key.Key}");
                 Console.ResetColor();
             }
             else
             {
                 Console.ForegroundColor = ConsoleColor.Green;
                 Console.WriteLine($"valid key: {key.Key}");
                 Console.ResetColor();
                 SendRokuCommand(key.Key);
             }
         } while (!RokuConfig.IsDone);
     };
     await Task.Run(work);
 }
Esempio n. 2
0
        static async Task Main(string[] args)
        {
            Console.Title = "Roku Control Console";
            Console.Write("Enter your Roku device's IP address: ");
            string input = Console.ReadLine();

            // TODO: validate IP address
            if (!string.IsNullOrWhiteSpace(input))
            {
                RokuConfig.SetUrl(input);

                var info = await RokuClient.GetRokuInformation(new Uri(RokuConfig.baseUrl + "query/device-info"));

                Console.WriteLine(info);

                Console.WriteLine("Enter your input (x to quit)");

                await GetInput();
            }
        }