Exemple #1
0
        public async Task <List <IdentifyResponse> > IdentifyAsync(string faceId, string personGroupId, int maxNumOfCandidatesReturned = 1)
        {
            using (HttpClient client = new HttpClient())
            {
                client.DefaultRequestHeaders.Add(_ocpApimSubscriptionKey, _subscriptionKey);
                string          uri  = $"{_uriBase}/identify";
                IdentifyRequest body = new IdentifyRequest()
                {
                    FaceIds = new List <string> {
                        faceId
                    },
                    PersonGroupId = personGroupId,
                    MaxNumOfCandidatesReturned = (1 <= maxNumOfCandidatesReturned && maxNumOfCandidatesReturned <= 5) ? maxNumOfCandidatesReturned : 1
                };
                string              bodyText      = JsonConvert.SerializeObject(body);
                StringContent       stringContent = new StringContent(bodyText, Encoding.UTF8, "application/json");
                HttpResponseMessage response      = await client.PostAsync(uri, stringContent);

                if (response.IsSuccessStatusCode)
                {
                    string responseBody = await response.Content.ReadAsStringAsync();

                    List <IdentifyResponse> result = JsonConvert.DeserializeObject <List <IdentifyResponse> >(responseBody);
                    return(result);
                }
                throw CreateHttpException(await response.Content.ReadAsStringAsync());
            }
        }
        public async Task <IdentifyResult> IdentifyFaceAsync(Guid faceId)
        {
            #region
            using (var client = new HttpClient())
            {
                // Request headers
                client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", _azCVSettings.Key);

                var uri = _azCVSettings.Endpoint + $"/face/v1.0/identify";

                IdentifyRequest identifyRequest = new IdentifyRequest();
                identifyRequest.FaceIds = new List <Guid>()
                {
                    faceId
                };
                identifyRequest.LargePersonGroupId         = _azCVSettings.PersonGroupId;
                identifyRequest.MaxNumOfCandidatesReturned = 1;
                identifyRequest.ConfidenceThreshold        = 0.8;

                var response = await client.PostAsync(uri, new StringContent(JsonConvert.SerializeObject(identifyRequest), Encoding.UTF8, "application/json"));

                var result = await response.Content.ReadAsStringAsync();

                if (response.IsSuccessStatusCode)
                {
                    var identifiedFace = JsonConvert.DeserializeObject <List <IdentifyResult> >(result);
                    return(identifiedFace.FirstOrDefault());
                }
            }
            #endregion
            return(null);
        }
Exemple #3
0
        public async Task <IActionResult> Identify([FromBody] IdentifyRequest request)
        {
            var result = await _faceClient.IdentifyAsync(_personGroupKey, new [] { request.FaceId });

            var doc = _db.Persons.AsQueryable().Where(x => x.PersonId == result[0].Candidates[0].PersonId).FirstOrDefault();

            return(this.Json(doc));
        }
 public Identify(ConsumerOptions options)
 {
     _identifyRequest = new IdentifyRequest
     {
         client_id = options.ClientId,
         hostname = options.HostName,
         feature_negotiation = true,
         tls_v1 = false,
         snappy = false,
         deflate = false,
     };
 }
Exemple #5
0
 public Identify(ConsumerOptions options)
 {
     _identifyRequest = new IdentifyRequest
     {
         client_id           = options.ClientId,
         hostname            = options.HostName,
         feature_negotiation = true,
         tls_v1  = false,
         snappy  = false,
         deflate = false,
     };
 }
        public short Identify(IdentifyRequest identifyRequest)
        {
            if (identifyRequest == null)
            {
                throw new IllegalArgumentException(Resources.Errors.GeneralId);
            }

            // Base64 encode the request so that we may send it.
            byte[] propertyBytes = Encoding.ASCII.GetBytes(identifyRequest.ToJSON());
            string base64String  = Convert.ToBase64String(propertyBytes);

            string         url      = String.Concat(Settings.Endpoints.Default.ServerSideApiUrl, string.Format(Settings.Endpoints.Default.Identify, base64String));
            RawApiResponse response = RestClient.Get(url, UserServiceContext.ApiKey);

            try
            {
                short result = Convert.ToInt16(response.Body);
                return(result);
            }
            catch (Exception ex)
            {
                throw new KlaviyoException(ex.ToString());
            }
        }
Exemple #7
0
 public Task <IdentifyResponse> IdentifyAsync(IdentifyRequest request)
 {
     return(restService.IdentifyAsync(request));
 }
Exemple #8
0
        public async Task <IdentifyResponse> IdentifyChild(FPCaptureRs vm)
        {
            IdentifyResponse returnModel = new IdentifyResponse();
            IdentifyRequest  request     = new IdentifyRequest();

            request.Id = Guid.NewGuid();
            request.FingerprintRecord                              = new DsdAfis.Core.FingerBiometrics.FingerprintRecord();
            request.FingerprintRecord.Id                           = 0;
            request.FingerprintRecord.Active                       = false;
            request.FingerprintRecord.DateTime                     = DateTime.Now;
            request.FingerprintRecord.FingerprintSet               = new DsdAfis.Core.FingerBiometrics.FingerprintSet();
            request.FingerprintRecord.FingerprintSet.Dpi           = 500;
            request.FingerprintRecord.FingerprintSet.ImageEncoding = "WSQ";
            request.FingerprintRecord.FingerprintSet.ImageHeight   = 512;
            request.FingerprintRecord.FingerprintSet.ImageWidth    = 512;
            List <Fingerprint> fingers     = new List <Fingerprint>();
            Fingerprint        blankFinger = null;

            fingers.Add(blankFinger);
            foreach (Finger f in vm.Fingers)
            {
                if (f.Sequence > 0)
                {
                    Fingerprint finger = new Fingerprint();
                    switch (f.Name)
                    {
                    case "1":
                        finger.Code = FingerCode.RightThumb;
                        break;

                    case "6":
                        finger.Code = FingerCode.LeftThumb;
                        break;
                    }
                    finger.EncodedImage = f.Print;
                    fingers.Add(finger);
                }
                else
                {
                    fingers.Add(null);
                }
            }
            request.FingerprintRecord.FingerprintSet.Fingerprints = fingers.ToArray();

            using (var client = new HttpClient())
            {
                //Passing service base url
                client.BaseAddress = new Uri(ConfigurationManager.AppSettings["WebApiUrl"]);

                client.DefaultRequestHeaders.Clear();
                //Define request data format
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                HttpResponseMessage response = await client.PostAsync(
                    "api/afis/identify", new StringContent(request.Json, Encoding.UTF8, "application/json"));

                if (response.IsSuccessStatusCode)
                {
                    return(MessageBase.Deserialize <IdentifyResponse>(response.Content.ReadAsStringAsync().Result));
                }
                else
                {
                    return(returnModel);
                }
            }
        }