public override void Execute(CommandContext context)
        {
            IFaceService faceService = new FaceService();

            ExtendedTrainResult result = null;

            var task = Task.Run(async() => { result = await faceService.GetTrainingStatusAsync(); });

            task.Wait(2000);

            if (result != null)
            {
                var sb = new StringBuilder();
                sb.AppendFormat("# Training Info #\n\n");
                sb.AppendFormat("Is Trained: {0}\n", result.IsTrained);
                sb.AppendFormat("Training Status: {0} \n", result.Status);
                sb.AppendFormat("Last Training: {0}\n\n\n", result.LastAction);

                if (result.IsTrained && result.PersonGroup != null && result.Persons != null)
                {
                    sb.AppendFormat("# Persongroup info #\n");
                    sb.AppendFormat("{0} {1}\n\n", result.PersonGroup.Name, result.PersonGroup.Id);

                    foreach (var person in result.Persons)
                    {
                        sb.AppendFormat("{0} - {1} faces\n", person.Name, person.FaceCount);
                    }
                }

                Context.ClientPage.ClientResponse.Alert(sb.ToString());
            }
            else
            {
                Context.ClientPage.ClientResponse.Alert("Timeout: Cannot get the training status from Azure.");
            }
        }