public async Task <string> CreateEnrollment(string fileName, string identificationProfileId)
        {
            var enrollmentUrl = Config.endPoint + "/identificationProfiles/" + identificationProfileId + "/enroll";

            var fileBytes = readFileAsBytes(fileName);

            var result = await enrollmentUrl
                         .WithHeader("Accept", "application/octet-stream")
                         .WithHeader("Ocp-Apim-Subscription-Key", Config.key1)
                         .PostAsync(new ByteArrayContent(fileBytes));

            string checkLocation = result.Headers.GetValues("operation-location").FirstOrDefault();
            string checkStatus   = "";

            do
            {
                RequestStatus checkResult = await checkLocation
                                            .WithHeader("Accept", "application/json")
                                            .WithHeader("Ocp-Apim-Subscription-Key", Config.key1)
                                            .GetJsonAsync <RequestStatus>();

                checkStatus = checkResult.status;

                Console.WriteLine("Status:" + checkStatus);

                if (checkStatus == "succeeded")
                {
                    if (checkResult.processingResult.enrollmentStatus == "Enrolling")
                    {
                        Console.WriteLine(
                            "Supply a little more audio, atleast 30 seconds. Currently at: " +
                            checkResult.processingResult.speechTime);
                    }
                    else
                    {
                        Console.WriteLine("Done");
                    }
                }
                else
                {
                    Console.WriteLine("Waiting for enrollment to finish");
                }
                System.Threading.Thread.Sleep(1000);
            } while (checkStatus != "succeeded");

            return("done");
        }
        public async Task <string> IdentifySpeaker(string fileName, string identificationProfileIds)
        {
            var identificationUrl = Config.endPoint + "/identify?identificationProfileIds=" + identificationProfileIds;

            var fileBytes = readFileAsBytes(fileName);

            var result = await identificationUrl
                         .WithHeader("Accept", "application/octet-stream")
                         .WithHeader("Ocp-Apim-Subscription-Key", Config.key1)
                         .PostAsync(new ByteArrayContent(fileBytes));

            string checkLocation = result.Headers.GetValues("operation-location").FirstOrDefault();
            string checkStatus   = "";

            do
            {
                RequestStatus checkResult = await checkLocation
                                            .WithHeader("Accept", "application/json")
                                            .WithHeader("Ocp-Apim-Subscription-Key", Config.key1)
                                            .GetJsonAsync <RequestStatus>();


                // Console.WriteLine("checkResult:" + checkResult);

                checkStatus = checkResult.status;
                Console.WriteLine("Status:" + checkStatus);

                if (checkStatus == "succeeded")
                {
                    return(checkResult.processingResult.identifiedProfileId);
                }
                else
                {
                    Console.WriteLine("Waiting for identification to finish");
                }
                System.Threading.Thread.Sleep(1000);
            } while (checkStatus != "succeeded");

            return("done");
        }