private static async Task AddCommentsAsync()
        {
            Console.Clear();
            Console.WriteLine("InstaPhoto" + "\nSubir Foto");

            await ViewPhotos();

            Console.WriteLine("\nIngrese ID de foto");
            var photoId = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            Console.WriteLine("\nIngrese comentario");
            var message = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            var comment = new Comment
            {
                Photo = new Photo()
                {
                    Id = long.Parse(photoId)
                },
                Message = message,
            };
            var response = await ServerHandler.HandleCommentCreation(_client, comment);

            if (response.responseCommands == ProtocolConstants.ResponseCommands.Ok)
            {
                Console.WriteLine("\nComentario Agregado Correctamente");
            }
            else
            {
                Console.WriteLine("\nDatos invalidos, revise y pruebe de nuevo");
            }

            ConsoleValidations.ContinueHandler();
        }
        private static async Task CreateUser()
        {
            Console.Clear();
            Console.WriteLine("InstaPhoto" + "\nLogin");

            Console.WriteLine("\nIngrese nombre");
            var name = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            Console.WriteLine("\nIngrese email");
            var email = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            Console.WriteLine("\nIngrese contrasenia");
            var password = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            var user = new User
            {
                Name     = name,
                Email    = email,
                Password = password
            };

            await ServerHandler.HandleRegister(_client, user);

            _client.IsLoggedIn = true;
            await MainMenu();
        }
        private static async Task LoginUser()
        {
            Console.Clear();
            Console.WriteLine("InstaPhoto" + "\nLogin");

            Console.WriteLine("\nIngrese email (<<q>> para cancelar) >>");
            var email = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            Console.WriteLine("\nIngrese contrasenia (<<q>> para cancelar) >>");
            var password = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            var user = new User
            {
                Email    = email,
                Password = password
            };

            var response = await ServerHandler.HandleLogin(_client, user);

            if (response.responseCommands == ProtocolConstants.ResponseCommands.Ok)
            {
                Console.WriteLine("\nBienvenido!");
                _client.IsLoggedIn = true;
                await MainMenu();
            }
            else
            {
                Console.WriteLine("\nDatos invalidos, revise y pruebe de nuevo");

                ConsoleValidations.ContinueHandler();
            }
        }
        private static async Task ViewPhotos()
        {
            var response = await ServerHandler.HandleViewPhotos(_client);

            foreach (var photo in response)
            {
                Console.WriteLine(photo.ToString());
            }

            ConsoleValidations.ContinueHandler();
        }
        private static async Task ViewUsers()
        {
            var response = await ServerHandler.HandleViewUsers(_client);

            if (response.Count == 0)
            {
                Console.WriteLine("No hay usuarios en el sistema");
            }
            else
            {
                foreach (var user in response)
                {
                    Console.WriteLine(user.ToString());
                }
            }

            ConsoleValidations.ContinueHandler();
        }
        private static async Task ViewComments()
        {
            Console.WriteLine("\nIngrese ID de foto");
            var photoId = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            var photo = new Photo()
            {
                Id = long.Parse(photoId)
            };

            var response = await ServerHandler.HandleViewComments(_client, photo);

            foreach (var comment in response)
            {
                Console.WriteLine(comment.ToString());
            }

            ConsoleValidations.ContinueHandler();
        }
        private static async Task UploadPhotoAsync()
        {
            Console.Clear();
            Console.WriteLine("InstaPhoto" + "\nSubir Foto");

            Console.WriteLine("\nIngrese ruta de la foto");
            var filePath = ClientUtils.ReadUntilIsNotEmpty(Console.ReadLine());

            var response = await ServerHandler.HandleImageUpload(_client, filePath);

            if (response.responseCommands == ProtocolConstants.ResponseCommands.Ok)
            {
                Console.WriteLine("\nImagen Agregada Correctamente");
            }
            else
            {
                Console.WriteLine("\nDatos invalidos, revise y pruebe de nuevo");
            }

            ConsoleValidations.ContinueHandler();
        }